[WooCommerce] Authorize.Net CIM Payments
Table of Contents:
- Required for this integration
- Supported Features
- Unsupported Features
- Setting up Authorize.Net payments with Autoship Cloud
- Additional Resources
Required for this integration:
- Customer Information Manager
- Let returning customers pay easily and seamlessly without re-entering payment details (also known as payment tokenization)
- Authorize.Net plugin for WooCommerce download here
- Working checkout able to process and save Authorize.Net payment methods. View documentation here.
- Credit Card Payments: Only credit card payments are supported with Authorize.Net CIM
- Default Payment Response Delimiters: Delimits the fields in the response back to QPilot upon payment processing of a Scheduled Order. Authorize.Net default delimiters:
a , (comma)
b. | (pipe)
c. " (double quote)
d. ' (single quote)
e. : (colon)
f. ; (semicolon)
g. / (forward slash)
h. \ (back slash)
i. - (dash)
j. * (star)
- Authorize.Net eCheck payments are not currently supported
- Accept.js - This feature is not currently supported
Setting up Authorize.Net payments with Autoship Cloud
Once you have successfully tested your basic checkout with Authorize.Net payment methods, you will simply copy the values used when setting up the plugin to QPilot.
Use the Authorize.Net Test API Login Id & Transaction Key from your Authorize.Net plugin settings in WooCommerce ( WP-Admin > WooCommerce > Settings > Payments > Authorize.Net >> Manage) and follow the steps outlined in our doc here to start testing quickly.
Once your payment integration is created in QPilot, you are ready to test Checkout and Scheduled Orders with Autoship Cloud.
Enable Saved Payment Methods
To ensure payment methods can be saved to a Scheduled Order created from checkout, make sure to enable tokenization in WP-Admin > WooCommerce > Settings >> Payments >> Manage (Authorize.Net).
Testing Authorize.Net Payments with Autoship Cloud in "Test Mode"
Before using a payment gateway in Live Mode, it is necessary to test that checkout, Scheduled Order processing, and saving payment methods as a customer in My Account are working as expected. This can be done using Test Mode (sometimes referred to as Sandbox Mode).
1. Visit your store as a customer (make sure you are logged out of the WordPress Admin)
2. Test Checkout and Scheduled Orders with Autoship Cloud (Verify that the Scheduled Order creates from checkout & processes successfully without payment errors).
3. Test saving a payment method as a customer: Go to My Account > Payment Methods and add a new payment method. The "Use payment method on Scheduled Orders" prompt and "UPDATE" button should display once the payment saves.
4. Verify Autoship Cloud synchronized your payment method to QPilot by going to the My Account > Scheduled Orders page and selecting "Update Payment Method." The newly added payment method should display in the dropdown menu.
Once you have successfully completed an Autoship checkout and verified that a Scheduled Order processes successfully with the Authorize.Net payment method saved at the original checkout, you are ready to enter Live Mode (in which actual charges will be created).
To do this you will need to:
1. Create and/or log in to a Live Authorize.Net account ( Note: this is a separate account from accounts used to create Test API Keys)
2. Navigate to WP-Admin > WooCommerce > Settings > Payments > Authorize.Net Credit Card, enter the API credentials from your new, Production Authorize.Net account, and change the setting for Environment from "Test" to "Production" (Then select "Save changes").
3. Navigate to WP-Admin > Autoship Cloud > Payment Integrations. Select "Edit" (the pencil icon) and uncheck the box for "Test Mode", and select "Save".
- How do I Refund a Customer for a Scheduled Order Which has Already been Processed?
- Customer updated their saved payment method's billing address?
- How do I Manually Add a Payment Method from my Authorize.Net CIM?
How do I Refund a Customer for a Scheduled Order Which has Already been Processed?
Though refunds can always be performed within the payment gateway, the Autoship Cloud plugin supports refunds directly from the WP-Admin > WooCommerce > Orders > Edit Order page just like a standard checkout order.
Edit the WooCommerce order created when the Scheduled Order processed
( Pro-Tip: you can search by the Scheduled Order Id to filter your WooCommerce orders quickly)
- Refund the order (partial or full) the same way you would a regular WooCommerce order.
- To ensure your data is updated in QPilot you will want to Edit the Processing Cycle so the charged total is representative of the refunded amount. Though this is optional, this will ensure your reports in QPilot accurate.
Customer updated their saved payment method's billing address?
When a customer updates their billing address on payment methods saved to Authorize.Net, it is recommended they create a new payment method in My Account > Payment Methods after updating their Billing Address in My Account > Addresses.
You can learn more about this process here: How Customers Update Their Billing Address
Though it is recommended your customer adds new payment methods or apply a payment method to their Scheduled Order(s) via My Account > Payment Methods, however you may manually add an Authorize.Net payment method directly from your Authorize.Net Customer Information Manager to your customers' Scheduled Orders in QPilot.
QPilot is integrated directly with your Authorize.Net gateway, this means you can add payments directly to QPilot so long as they exist in the gateway.
What do I need to manually add an Authorize.Net payment method to QPilot?
QPilot requires three pieces of information from your Authorize.Net Customer Information Manager to manually add payment methods:
- Customer Profile Id
- Payment Profile Id
- Payment Method Description (to identify the payment method easier)
To manually add a payment method, you will first open your Authorize.Net Customer Information Manager and edit a Scheduled Order ( WP-Admin > Autoship Cloud > Scheduled Orders > "View/Edit"). Go to the "Payment Details" section of the Scheduled Order.
Manually Adding Payment Method to QPilot
Merchants can manually add a payment method to QPilot by editing a Scheduled Order and selecting "Create New" under the Payment Method field.
- Go to "Payment Method" field and select "Create New"
- Copy the Customer Profile Id from your Authorize.Net CIM to the Gateway Customer Id
- Copy the Payment Profile Id from your Authorize.Net CIM to the Gateway Payment Id
- Add the Payment Method Description (For Example: "Visa ending in 1111 Expires 01/25")
- Scheduled Order Billing Address => copied from the Authorize.Net Customer Profile
- Update the Scheduled Order
In the recording below, an Admin manually adds an Authorize.Net payment method to a Scheduled Order by copying the Customer Profile Id, Payment Profile Id, & Payment Method Description from their Authorize.Net CIM.
Loading a Payment Method from Authorize.Net
Visit QPilot Merchant Center > Dashboard > Scheduled Orders > "View/Edit" then locate the "Payment Details" section ("Load Methods from Gateway" tab).
- In the "Load Methods from Gateway" tab select "Authorize.Net - Load Manually"
- Copy the Customer Profile Id from your Authorize.Net CIN, paste it into the Gateway Customer Id field, and select "Load Profile"
- Select the payment profile to apply.
- Select "Update"