Authorize.net CIM Payments
Required for this integration:
- Tokenization: This gateway tokenizes payment methods in a way that allows Autoship Cloud to create future orders
- 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 WooCommerce
Once you have installed and activated the WooCommerce Authorize.Net plugin, you will need to enter your Authorize.Net API credentials into the plugin before you can start using it. To do this, navigate to WP-Admin > Woocommerce > Settings >> Payments >> Authorize.Net Credit Card (either at the top of the page where all the plugins are listed as text or at the bottom where the enabled/disabled gateways are displayed).
Once there, you will need to ensure that "Tokenization" is enabled.
After that, you will need to fill in the following two fields with the API credentials obtained from your Authorize.Net account (also, keep these handy for the next section):
Note: The fields are labeled "Test API Login ID" and "Test API Transaction Key" because the plugin is set to use the "Test Environment". You will need to supply the API keys from the Authorize.Net account that corresponds the environment in which you will be using the gateway (we are starting in the Test Environment to ensure that the plugin is working without creating actual charges).
Additionally, note that "Accept.js" is not enabled. Autoship Cloud is not compatible with this feature, and it must remain disabled.
Once these have been set, select "Save changes", and complete an order via checkout from your store to ensure that Authorize.Net is working.
Setting up Authorize.Net payments with Autoship Cloud
Once you have ensured that the payment gateway can successfully process an order via checkout and save a payment method in your store, you'll need to set create a payment integration inside of Autoship Cloud.
To do this, navigate in your WordPress Admin to WP-Admin > Autoship Cloud > Payment Integrations. Once there, select the "Add" button (blue circle with the "+" sign in it) to add a new payment integration. You should see the following screen:
Make sure that "Test Mode" is enabled (unless you are ready to begin using the gateway in Live mode), select the "Payment Method Type" dropdown, and then select "Authorize.Net", enter the same API credentials that you used in your WooCommerce Settings to the appropriate fields. When you're done, select "CREATE".
You should now see a new payment integration in your Payment Integrations list.
Testing Authorize.Net payments with Autoship Cloud in Test Mode
Before using a payment gateway in Live Mode, it is necessary to ensure that it works in Test Mode (sometimes referred to as Sandbox Mode). Here are the steps you can take to test a saving a credit card with your Authorize.Net as a payment method:
1. Visit your store as a customer (make sure you are logged out of the WordPress Admin)
2. Purchase a product selected for Autoship (add to cart).
3. Complete a checkout using Authorize.Net as the payment method, using sandbox credit card info, and filling in the "Create Password" field (this should be required).
4. Verify that the order has successfully processed.
5. As the same customer, visit My Account > Scheduled Orders and verify that you have created a Scheduled Order, and that the products and schedule frequency are correct.
6. Log back into your site as an administrator, navigate to WP-Admin > Autoship Cloud > Scheduled Orders, and verify that the newly created Scheduled Order is present in your list of Scheduled Orders.
Once you have successfully completed an Autoship checkout and verified that a Scheduled Order was created and the payment method was saved, 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 than accounts used to create Test API Keys)
2. Navigate to WP-Admin > Woocommerce > Settings > Payments >> Authorize.Net Credit Card, and enter the API credentials from your new, Production Authorize.Net account, and change the setting for Environment from "Test" to "Production". Select "Save changes".
3. Navigate to WP-Admin > Autoship Cloud > Payment Integrations. Select "Edit" (the pencil icon) at the right end of the record for your Authorize.Net integration to edit. Replace the Test API credentials with Live API Credentials from step 2, and uncheck the box for "Test Mode", and select "Save".
You are now ready to test Checkout and Scheduled Orders with Autoship Cloud.
How to Create a New Authorize.Net CIM Customer Profile Manually
In cases where a customer wants you to enter their payment information manually using Authorize.Net, and have that payment method saved for Autoship, merchants can add a new customer profile to their Authorize.Net CIM directly and then create or edit a Scheduled Order with the payment data added to Authorize.Net.
- Login to your Authorize.Net Customer Information Manager (CIM)
- Within the CIM, select "Add Profile" (at the top)
- Fill out the customer's user and billing information:
- Customer Id: Should match the WordPress User Id for the Customer (see Create User as a Customer to WordPress for more info)
- Email: Customer's email
- Billing Address
- Payment Type: Credit Card
- Card information: Number, Exp Date, CVV
- Shipping Address (if different than the Billing)
- Select 'OK' to create the Customer in the CIM
- Now that the Customer is added to the CIM, you can safely add their Customer Profile ID and Payment Profile ID to create a payment method for their Scheduled Order.
Screenshot: A Customer Profile in the Authorize.Net CIM
Screenshot: Locating a WooCommerce Customer's ID and Email Within WordPress
Manually Adding a Saved Payment Method to a Scheduled Order
How to manually add a saved payment method in Authorize.Net CIM to a new or existing Scheduled Order:
- Visit WP-Admin > Autoship Cloud > Scheduled Orders to create or edit a Scheduled Order
- At the bottom section of the Scheduled Order, locate the "Payment Method" option and select "Create New"
- For the "Payment Method Type" option, select "Authorize.Net"
- Fill in fields with the information copied from the Customer Profile in your Authorize.Net CIM:
- Scheduled Order Gateway Customer Id => Authorize.Net Customer Profile Id
- Scheduled Order Gateway Payment Id => Authorize.Net Payment Profile Id
- Scheduled Order Payment Method Description => card type, last four digits of card number of expiration copied from Payment Profile fields
- Scheduled Order Billing Address => copied from the Authorize.Net Customer Profile
- Make sure to set the Scheduled Order Status to "Active" if you want it to process automatically on the Next Occurrence Date and confirm your changes by selecting "Update"
- If you need to process the Scheduled Order right away, you can set its status to "Paused" or "Failed" and use the action to Activate and Process immediately.
Pro-Tip! Once you've added a customer and payment method to the CIM, you can also use their Customer Profile ID to quickly Load Payment Methods directly into their Scheduled Order. This feature can save you the steps of needing to manually copy all of their information!