API Docs
Subscriptions details shall include(*required):
Subscriptions on creation require merchant profile to be onboarded for recurring billing and are associated to merchant profile.
Subscriptions shall inherit all details of plan unless override parameter is specified on creation. See later requirements for coverage of all override scenarios.
In addition to subscription basic creation elements, users shall pass the following elements in the request:
In addition to subscription basic creation elements, users shall pass the following elements in the request:
If trial duration is set to 0, the subscription will start immediately without any trial duration. If trial duration > 0, the subscription will be set with a trial period of “trial duration” value set of days regardless if inherited from plan or not.
In addition to subscription creation elements, users shall pass in the following elements on the request:
If the “service start date” > date.today, then status of subscription is set to pending.
Passing any “service start date” on subscription creation will override any trial period from the plan if one exists. No trial period will be associated to subscription.
In addition to subscription creation elements, users shall pass in the following elements on the request:
If the “service start date” > date.today, then status of subscription is set to pending.
Passing any “service start date” on subscription creation will override any trial period from the plan if one exists. No trial period will be associated to subscription.
If the “identifier” == empty, the system shall generate a subscription identifier unique to the merchant account. If the “identifier” != empty, the system shall validate on the uniqueness of subscription identifier for the merchant account.
If a subscription does not have a trial period and will start immediately, the system will charge the customer right away.
If the transaction is declined, the subscription will not be created and you will get the transaction status in the response.
If the transaction is authorized, the subscription will be created and you will get both the subscription and transaction information in the response.
In addition to subscription creation elements, users shall pass in the following elements on the request:
When adding new addons from plan, you can add multiple add ons at the same time.
When adding addons to subscription, all details will be inherited from add on id. You can override any of the following details of the add on by specifying:
Users can only add an addon to a subscription once. If they would like to apply an addon to a subscription several times, they can pass quantity when adding the addon.
In addition to subscription creation elements, users shall pass in the following elemnts on the request:
When updating addons from plan, you can update multiple addons at the same time.
When updating addons on a subscription, all details will be inherited from add on id specified. You can override any of the following details of the add on by specifying:
In addition to subscription creation elements, users shall pass in the following elements on the request:
In addition to subscription creation elements, users shall pass in the following elements on the request:
In addition to subscription creation elements, users shall pass in the following elemnts on the request:
When adding new discounts from plan, you can add multiple discounts at the same time.
When adding discounts to subscription, all details will be inherited from disocunt id.
You can override any of the following details of the discount by specifying:
In addition to subscription creation elements, users shall pass in the following elements on the request:
When updating discounts from plan, you can update multiple discounts at the same time.
When updating discounts on a subscription, all details will be inherited from discount id specified.
You can override any of the following details of the discount by specifying:
In addition to subscription creation elements, users shall pass in the following elements on the request:
In addition to subscription creation elements, users shall pass in the following elements on the request:
Users shall be able to update the following elements of the subscription:
When making the request for update, the user must reference subscription for update by its “identifier”.
Only subscriptions associated to merchant profile can be updated.
To enable proration on a price increase update, users shall pass in addition to price increase:
If “prorate charges” == true, the app will create a prorated transaction based on the change in price for the remainder of the billing cycle. The transaction is charged immediately, if the charge is declined, the update to the subscription is canceled by default.
If you would like to continue with the update to the subscription and add the prorated amount to the balance even though the transaction failed, users shall pass in addition:
if “revert subscription on proration failure” == false, the subscription will update will stick regardless of the declined transaction.
In addition to subscription update elements, users shall pass in the following elements on the request:
When adding new addons, you can add multiple addons at the same time.
When adding addons to subscription, all details will be inherited from add on id. You can override any of the following details of the add on by specifying:
Users can only add an addon to a subscription once. If they would like to apply an addon to a subscription several times, they can pass quantity when adding the addon.
In addition to subscription update elements, users shall pass in the following elements on the request:
When updating addons, you can update multiple add ons at the same time.
When updating add ons on a subscription, all details will be inherited from add on id specified.
You can override any of the following details of the add on by specifying:
Users can only add an addon to a subscription once. If they would like to apply an addon to a subscription several times, they can pass quantity when updating the addon.
In addition to subscription update elements, users shall pass in the following elements on the request:
When removing addons from plan, you can remove multiple add ons at the same time.
In addition to subscription update elements, users shall pass in the following elements on the request:
When adding new discounts, you can add multiple discounts at the same time.
When adding discounts to subscription, all details will be inherited from discount id.
You can override any of the following details of the discount by specifying:
Users can only add an discount to a subscription once. If they would like to apply an discount to a subscription several times, they can pass quantity when adding the discount.
In addition to subscription update elements, users shall pass in the following elements on the request:
When updating discounts, you can update multiple discounts at the same time.
When updating discounts on a subscription, all details will be inherited from discount id specified.
You can override any of the following details of the discount by specifying:
Users can only add an discount to a subscription once. If they would like to apply an discount to a subscription several times, they can pass quantity when updating the discount.
In addition to subscription update elements, users shall pass in the following elements on the request:
When removing discounts, you can remove multiple discounts at the same time.
Subscriptions with a status of cancelled or expired cannot be updated.
When updating a subscription that is past due, you can only update fields that do not change the price:
The following elements shall be returned on plan detail requests:
The following elements for each subscription shall be returned:
On a index request for subscriptions by merchant, users shall be able to filter subscriptions list by price range.
On a index request for subscriptions by merchant, users shall be able to filter subscriptions list by plan id.
On a index request for subscriptions by merchant, users shall be able to filter subscriptions list by status.
On a index request for subscriptions by merchant, users shall be able to filter subscriptions list by “days past due”.
On a index request for subscriptions by merchant, users shall be able to filter subscriptions list by “billing cycles remaining”.
On a index request for subscriptions by merchant, users shall be able to filter subscriptions list by “next billing date”.
Users shall via programming interface have a method to cancel subscriptions. Once a subscription is canceled, it cannot be reactivated.
After a subscription has been canceled, it cannot be updated
Subscription ID needs to be unique
If you provide a price, it can’t be an empty string. If you omit the price, the subscription will inherit the price of from the plan
Price must be formatted like “10” or “10.00”
You can’t cancel subscriptions that have already been cancelled.
Updated: June 2, 2017
SUBMIT A DEVELOPER SUPPORT REQUEST
Agent or a merchant? Contact NAB support at 866.485.8999 EXT 2341