Back Office Admin API

2Checkout’s application programming interface (API) provides a way to automate both account and order management processes. Using the API along with the Instant Notification Service (INS) alleviates the necessity of logging into the standard GUI account interface on a day-to-day basis. The API system works by first having the supplier create an API user in their supplier account which has the appropriate permissions to access the API. Suppliers are then able to use the supported methods described below to call our API by HTTP POST or GET to update or return sale information at their request. To create a username, please login to your account, click on the Account tab and User Management subtab. From here, please click the Create Username link and create a new username with API Access and API Updating selected for the Access type. Our API can then be accessed with this new username and password you created.

The API will return XML by default unless the Accept: header is passed in the call to define the content type. The API is capable of returning data in the following formats:

  • XML (application/xml) - default
  • JSON (application/json)
  • HTML XOXO microformat (text/html)

Each method we currently support is described in detail below. Support for additional methods will be added to our API and this document in the future.

Vendor Information (GET)

Sales Information (GET)

Update Sales (POST)

Product Information (GET)

Update Products (POST)

Product Option Information (GET)

Update Product Options (POST)

Coupon Information (GET)

Update Coupons (POST)

Errors

If a request cannot not be completed successfully, the response from the API will contain information that can be used to determine what went wrong. There are several ways to determine that the request was unsuccessful. Either the HTTP Status header will contain a status code of 400 or higher (typically 400, 404, or 500). Or There will be one or more errors elements in the response. Each of these elements will contain an error code, message, and (if applicable) other informative values to assist in debugging the problem such as the offending parameter name.

Example response:

{
  "code" : "PARAMETER_MISSING",
  "message" : "Required parameter missing: vendor_id",
  "parameter" : "vendor_id"
}