====== Authorize.Net ====== ===== Overview ===== Authorize.Net is one of the most popular payment gateways in the United States and it is tightly integrated with SubscriptionBridge. By using SubscriptionBridge, you will never have to worry about any technical documentation on how to //integrate// Authorize.Net's Automated Recurring Billing (ARB) features into your business. SubscriptionBridge will take care of that for you. * View a list of [[http://www.earlyimpact.com/subscriptionbridge/authorizet-net-subscription-management.asp|features that SubscriptionBridge adds to Authorize.Net ARB]] * [[http://reseller.authorize.net/application.asp?id=220675|Sign up with Authorize.Net]] ===== Settings ===== The following settings need to be set in your Authorize.Net account for it to work with SubscriptionBridge. ==== Automated Recurring Billing ==== You need to subscribe to the Automated Recurring Billing service (ARB). There is a monthly fee associated with this service ($10/month at the time this article was written). ==== API credentials ==== You will need to obtain your API credentials to add Authorize.Net as the payment gateway to your SubscriptionBridge store. * Log into your Authorize.Net account * Click on "//Account//" * Under "//Security Settings//", click on "//API Login ID and Transaction Key//" * Copy your API Login ID to a temporary text file on your desktop * Obtain a new Transaction Key and copy it to the same file * You will need these credentials when setting up your SubscriptionBridge store, so having the information handy will be useful. Once you have entered the API credentials in SubscriptionBridge, you should remove the temporary file. You can always go back to Authorize.Net and request the API credentials again. If you obtain a new Transaction Key, make sure to update it in SubscriptionBridge as well. ==== Turn off E-mail Receipts ==== Since SubscriptionBridge will be sending notification messages to your customers, you can turn off the e-mail receipts that are sent automatically by Authorize.Net. These receipts are "text only" messages and look very different from the branded, HTML messages sent by SubscriptionBridge. Turning off e-mail receipts can also help reduce customer service in the case of free trials. Specifically, if one or more of your subscriptions have a free trial, customers might be confused by receiving the e-mail receipt that is sent when the [[:#authorizations-free-trials|initial (e.g. $1) authorization is submitted]] ([[:#authorizations-free-trials|see below]]). To turn off e-mail receipts: * Log into your Authorize.Net account * Select "Account > Settings" * Select "E-mail Receipts" * Uncheck the two check boxes (see screen shot below) and click on "Submit" to save the settings {{:sb_authorizenet_settings_emailreceipts.png|Authorize.Net E-mail Receipt Settings}} ==== Add Silent Post URL ==== You will need to add what's called a Silent Post URL to let Authorize.Net know where it should contact SubscriptionBridge when an "event" happens (e.g. a new subscription is successfully setup, a payment is unsuccessfully attempted, etc.). To do so: * Log into your Authorize.Net account * Select "Account > Settings" * Select "Silent Post URL" * Enter the following URL in the input field (see screen shot below): https://www.subscriptionbridge.com/PostBack/AuthNetSilentProcessor.asp * Click on "Submit" to save the settings {{:sb_authorizenet_settings_silentpost.png|Silent Post URL for Authorize.Net}} ==== How to test ==== Unfortunately Authorize.Net Automated Recurring Billing does not have a testing environment where you can fully simulate recurring payments. However, there is a way to test your Authorize.Net ARB account without credit cards actually being charged. See the [[:merchant_guide:testing-subscriptions#authorizenet|Using SubscriptionBridge in a testing environment]] for more information. ===== Things to Know ===== ==== Recurring & One-Time Payments ==== SubscriptionBridge allows you to take advantage of both the recurring billing and one-time payment functionality that is built into the Authorize.net payment system. * **Authorize.Net Recurring Billing API** \\ You can add Recurring Billing to your Authorize.net Merchant Account at any time. Once you do, activate Authorize.Net in your SubscriptionBridge Merchant Center and SubscriptionBridge will take care of the rest: it will create, update, and cancel recurring billing profiles as your customers order, change, or terminate their subscriptions. SubscriptionBridge will use Authorize.Net's recurring billing system to securely store your customers' credit card information and run recurring payments at the intervals specified for a certain subscription. * **Authorize.net Advanced Integration Method (AIM)** \\ SubscriptionBridge will also use Authorize.Net for one-time payments in a variety of scenarios, such as that of a catch-up payment for a subscription for which one or more recurring payments did not go through successfully (e.g. credit card had expired, then the customer updated it). SubscriptionBridge uses the Advanced Integration Method to run one-time payments through Authorize.Net. In this case too, no credit card information is ever stored in the SubscriptionBridge system, for maximum security. ==== No storage of credit card information ==== SubscriptionBridge never stores your customers' credit card information. Instead, it leverages Authorize.Net's recurring billing system to process recurring payments. When a one-time payment is needed, customers are prompted to enter their credit card information. ==== When recurring payments are processed ==== Automated recurring payments are processed by Authorize.Net at **around 2 AM PST** of the day following the day on which the payment profile was created (this is current as of April 2010). So if a customer subscribes to a service at 3 PM PST on Thursday, the first payment (if any) is not processed until around 2 AM PST on Friday morning. Please note the following: * **Subscription Start Date** \\ The subscription start date saved and reported by SubscriptionBridge is the date set at the time the subscription profile is created (//a subscription may or may not be set up to start immediately//). It is not the day on which the first payment is actually processed. For example: * //Subscription starts immediately//: if a customer subscribes on Sunday, April 11 and the subscription is set to start immediately, then the subscription start date is indeed April, 11, even if the first payment does not take place until April 12 at 2 AM PST. * //Subscription starts in the future//: if a customer subscribes on Sunday, April 11 and the subscription is set to start on May 1, the subscription start date is May 1, even if the first payment does not take place until May 2 around 2 AM PST. * **What if the first payment fails?** \\ Even if an authorization is performed at the time the subscription profile is created (//see next section for more information//), the first payment could fail. For example, this could be due to the fact that the same credit card might have be successfully authorized for a $1 transaction, but not for a higher amount. * SubscriptionBridge will e-mail you and the customer with a notification of the declined payment * SubscriptionBridge will post to your Callback URL (if any) with a notification of the declined payment: it is up to you to decide whether you want to react to this notification by restricting access to the products/services that the customer has signed up for (but never paid for, since this was the first payment). * Since the first payment has failed, the subscription becomes //Suspended// and is at risk of automatic termination. See the section on subscription status for more details. ==== Authorizations & Trial Periods ==== When a subscription is created, there are many cases in which a payment is not processed until much later. For example, a gym membership with a 7-day free trial, or an online gaming Web site subscription with a "First Month Free" promotion, etc. In all of these cases, Authorize.Net does not by default check the validity of the credit card used for the subscription. It does so only at the time the first subscription payment is processed, which could be well into the future. To avoid creating a subscription for a customer that is using invalid credit card information, SubscriptionBridge does the following: * It authorizes the credit card based on your [[merchant_guide:store-settings-paymentgateway#available-card-authorization-options|Card Authorization Settings]] * If authorization is successful, it creates the subscription. Otherwise, it prompts the customer to provide valid credit card information and does not setup the subscription until the customer does so. * Whatever amount is authorized based on your [[merchant_guide:store-settings-paymentgateway#available-card-authorization-options|Card Authorization Settings]] is automatically voided right after it is authorized. Payment is never captured and the transaction will automatically disappear from the customer's transactions record. Authorize.Net has indicated that the amount of time that it takes for this voided transaction to disappear from the customer's records depends on many factors. It is typically less than 7 days. ==== Subscription statuses ==== //This content was copied from the Authorize.Net knowledge base in March of 2010.// Subscription status is the processing status of an ARB subscription. Possible statuses are: * **Active** – the subscription is being processed successfully according to schedule. * **Suspended** – an active subscription is suspended after the __first__ payment fails. * A subscription becomes //suspended// only when the __first__ payment fails. "First" means either the first payment of the subscription, or the first payment after the subscription's billing information has been updated (e.g. the payment method has been updated). * When billing information for a //suspended// subscription is updated, the subscription becomes //active// again. * Subscriptions must be reactivated before the next scheduled transaction, __otherwise they are terminated__. * If a payment fails, but other, successful payments have occurred before the failed one, __the subscription remains active__. * **Terminated** – suspended transactions are terminated when no action is taken to reactivate a suspended subscription. Terminated subscription cannot be reactivated. * **Canceled** – subscriptions that have been canceled by the Merchant or the Customer (vs. //terminated// by Authorize.Net). Canceled subscriptions cannot be reactivated. * **Expired** – the subscription is not an ongoing subscription, but rather has a set duration (e.g. 24 months) and has been completed according to schedule. Expired subscriptions cannot be reactivated. ==== Avoiding "terminated" subscriptions ==== As you can see in the previous paragraph, when a subscription has been terminated, it cannot be reactivated. Therefore, it is important that you setup your "[[:merchant_guide:notifications#messageevent-triggers|Message/Event Triggers]]" so that your customers are properly notified. * When a transaction is declined, SubscriptionBridge notifies the customer * You should send the //**Balance Due**// reminder a few days after the decline * You can then follow-up again with a //**Balance Due: Final Notice**// reminder. Make sure that this notification is sent before the next subscription payment is processed. Otherwise the subscription might have been terminated automatically by Authorize.Net * You can have the system cancel the subscription if the balance is still outstanding after a certain number of days (//Subscription Canceled// notification). This too should happen before the next subscription payment occurs, or the subscription will have already been terminated by Authorize.Net. ===== Authorize-Only and Recurring Payments ===== ==== Authorize-Only setting is ignored ==== If you are using a [[:cartintegration:cartintegration|shopping cart integrated with SubscriptionBridge]], please note the following: * The shopping cart might allow you to setup Authorize.Net to "**authorize-only**". This is a good way to use Authorize.Net for regular sales (so that you can review an order for accuracy and legitimacy) and you should keep that setting "as is". * However, "authorize-only" __does not apply__ to the Automated Recurring Billing (ARB) module within Authorize.Net. * Regardless of how that setting is set in your shopping cart system, payments will be processed according to the recurring billing settings that have been set for the subscription. For example, a $25 subscription with a 15 day free trial will trigger a first payment 15 days after the order has been placed. That payment will be "authorized and captured" at that time. ==== Impact on order status ==== Your shopping cart might be setup to automatically consider orders "Pending" that are processed with Authorize.Net set to "authorize-only", since payment has been authorized, but not captured. Since "authorize-only" __does not apply__ to recurring payments, the link between the payment gateway's "authorize-only" setting and the order status is "broken" when an order for a subscription is placed. * A "Pending" order status in your shopping cart system does not mean that the recurring payment has not been setup. * A "Pending" order status might still make sense as it may help you discriminate between orders whose subscriptions are still in "trial" mode vs. orders that have moved from "trial" to an ongoing subscription. You can manually change the order status at that time (or do this programmatically by using the SubscriptionBridge API, which can notify you when the trial period has ended). ===== Related Articles ===== * [[:merchant_guide:testing-subscriptions#authorizenet|Testing with Authorize.Net Automated Recurring Billing]] * [[http://www.earlyimpact.com/subscriptionbridge/authorizet-net-subscription-management.asp|What features does SubscriptionBridge add to Authorize.Net ARB?]] * [[payment-gateways|Payment gateways supported by SubscriptionBridge]] * [[merchant_guide:merchant_guide|Merchant User Guide]]