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
- Authorize.Net eCheck payments are not currently supported
- Accept.js - This feature is not currently supported
Setting up Authorize.net CIM payments with WooCommerce
Once you have installed and activated the Authorize.net CIM Payments plugin, you will need to enter your Authorize.net API credentials into the plugin before you can start using it. To do this, navigate (in your WP Admin) to Woocommerce > Settings > Payments > Authorize.net CIM (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, click "Save changes", and complete a checkout from your store to ensure that Authorize.net is working.
Setting up Authorize.net CIM Payments with Autoship Cloud
Once you have ensured that the payment gateway can successfully process a 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 WP Admin to Autoship Cloud > Payment Integrations. Once there, click on the blue circle with the "+" sign in it to create 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), click the "Payment Method Type" dropdown and select "Authorize.net", enter the API credentials from the previous section in the appropriate fields. When you're done, click "CREATE".
You should now see a new payment integration in your Payment Integrations list.
Testing Authorize.net CIM 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).
To do this:
1. Visit your store as a customer (make sure you are logged out as WP Admin)
2. Put an Autoship enabled item in your cart.
3. Complete a checkout using Authorize.net CIM Payments 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 > Autoship Schedules, and verify that you have a schedule created, and that the schedule items and frequency are correct.
6. Log back into your site as WP Admin, navigate to Autoship Cloud > Scheduled Orders, and verify that the newly created schedule is present in your list of Scheduled Orders.
Once you have successfully completed an Autoship Cloud 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 Login 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 > Checkout > Authoire.net CIM, and enter the API credentials from your new, Production Authorize.net account, and change the setting for Environment from "Test" to "Production". Click "Save changes".
3. Navigate to WP Admin > Autoship Cloud > Payment Integrations. Click the pencil icon at the right end of the record for your Authorize.net integration to edit. Replace the API credentials with the new onse from step 2, and uncheck the box for "Test Mode", and click "Save".
You are now ready to test Checkout and Scheduled Orders with Autoship Cloud.
How to Create A New Customer Profile Manually
In cases were 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.
- Visit 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.
Manually Adding Payment Method to 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 you 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 the 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!