An abstraction layer between resellers and merchants
The Bango Platform provides an abstraction layer, exposed publicly as the Bango Merchant Interface API, between resellers (which bundle or resell products and services from third parties along with their own) and merchants (which want to allow others to bundle or resell their products and services). In Bango terms, using the Bango Merchant Interface API means you're acting as a merchant. (You might also use the Bango Payment API, which makes you a first-party merchant too.)
The Bango Merchant Interface API provides a consistent interface so you integrate only once. After integration, you can begin offering services through resellers plugged in to the Bango Platform (subject to agreement). Your systems are insulated from any changes reseller might make to their APIs, and you benefit from the Bango reporting and analysis tools.
The Bango Merchant Interface API is RESTful, uses UTF-8 JSON to encode parameters and response values, and includes features to help you test your integration. (Make sure you understand the connectivity requirements for accessing the Bango Platform.)
The Bango Merchant Interface API supports both synchronous activation of services (where no user interaction is required) and asynchronous activation (where user interaction is required, such as following a merchant-supplied sign-up link). In the API, a user's ability to access a merchant's service is represented as an abstract "entitlement" record which is always in one of several states. API calls can update the record and modify the state to reflect changes in a user's entitlement to access the service.
Here's a diagram showing an asynchronous activation.
In this example, the merchant requires a user to sign up before the service is activated. This means the initial request by the reseller to create an entitlement returns an entitlement record with status
PENDING, along with a request to send the user to a particular URL supplied by you. The Bango Platform notifies resellers of subsequent changes to the entitlement. When you confirm to the Bango Platform that the user has signed up, the Bango Platform sends an updated entitlement record (with status
ACTIVE) to the reseller.