Billing APIs

Introduction
Billing API is a RESTful API that allows setting up customers, collecting payments and maintaining balances for these customers, as well as creating recurring billing subscriptions.

Billing API documentation includes the following sections:

Objects - lists all recurring billing objects. The purpose of this section is to describe all object fields, their format and usage, provide the links to the corresponding database tables.

Type Enumerations – lists possible values that can be used in the respective fields within Billing API requests and responses. The purpose of this section is to provide an explanation of all enumerations used for API calls.

Actions - lists all actions that can be performed with key recurring billing objects. The purpose of this section is to describe the methods and format of API requests and the format of responses.

Integration Notes – lists integration notes associated with the Billing API objects and actions. The purpose of this section is to provide explicit information about the peculiarities of specific actions and object fields.

Code samples - provides examples of recurring billing use cases (creating billing plans, subscriptions, freeing or canceling subscriptions, reversing transactions, etc) and their implementation in JSON, XML formats. The purpose of this section is to provide examples that can be used for testing of the integration with the gateway.

To learn how to work with the Billing API, we recommend reviewing the integration notes first. Key recurring billing module terms are available here. For more detailed information about the recurring billing configurations and management, check the Recurring Billing Guide.

Base Resource URL:

https://[server-name]/api/v01/plans/[plan-id]

Description:

Provides access to configuration settings for the selected pricing plan.

Supported Actions:

~load (request)

Method:  GET
Implicit:  Yes
Returns:  Plan
Consumes:  xurl
Produces:  json,xml

Returns configuration settings for the selected pricing plan.

~load (response)

Method:  GET
Implicit:  Yes
Returns:  Plan
Consumes:  xurl
Produces:  json,xml

Returns configuration settings for the selected pricing plan.
Body Parameters:
# Name Type Pattern Format Mode Usage Description
1 billingCycleType Enum R
2 isActive Boolean R
3 taxAmount Integer O Tax amount (in cents) associated with the transaction processing.
4 createDate Datetime R O Date when the Plan was created.
5 id Long R O Unique Plan ID generated by the system.
6 code String(60) CODE C O
7 accountId Integer C R
8 createDate Datetime R O In API request, the date must be submitted in yyyy-MM-dd format.
In API response, the date is returned in yyyy-MM-dd HH:mm:ss format.
9 name String(255) NAME R
10 amount Integer R
11 taxAmount Integer O

~modify (request)

Method:  POST
Implicit:  Yes
Returns:  Plan
Consumes:  json,xml
Produces:  json,xml

Updates the selected pricing plan with the specified values.
Body Parameters:
# Name Type Pattern Format Mode Usage Description
1 billingCycleType Enum R
2 isActive Boolean R
3 taxAmount Integer O Tax amount (in cents) that will be associated with the transaction processing.
6 code String(60) CODE C O
7 accountId Integer C R
9 name String(255) NAME R
10 amount Integer R
11 taxAmount Integer O

~modify (response)

Method:  POST
Implicit:  Yes
Returns:  Plan
Consumes:  json,xml
Produces:  json,xml

Updates the selected pricing plan with the specified values.
Body Parameters:
# Name Type Pattern Format Mode Usage Description
1 billingCycleType Enum R
2 isActive Boolean R
3 taxAmount Integer O Tax amount (in cents) used for filtering Plan records.
4 createDate Datetime R O Date when the Plan was created.
5 id Long R O Unique Plan ID generated by the system.
6 code String(60) CODE C O
7 accountId Integer C R
8 createDate Datetime R O In API request, the date must be submitted in yyyy-MM-dd format.
In API response, the date is returned in yyyy-MM-dd HH:mm:ss format.
9 name String(255) NAME R
10 amount Integer R
11 taxAmount Integer O