Manage customers (groups)

A Group is the second level under your company's platform, a collection of accounts to hold funds and place orders. Each platform contains one or more group, only one of which may have the same name as the platform. Groups cannot be deleted or disabled once created.

๐Ÿ“˜

Coming soon

Note: Customers are also known as Groups in Tango. We are planning to update our API endpoints in our V3.0 release to replace Customers with Groups.

Use cases

  • Enterprises: In ABC enterprise, all departments or divisions have their own groups. The manager of each department or division has control over all accounts in their department. They can create multiple accounts for teams, projects, budgets, or anything that needs funds tracked separately. They can also create groups for accounts that require a controlled access; for example, team A has a separate group than team B since the two teams do not need access to each other's account.
  • Small Companies: In an small company, groups are set up by:
    • Accounts such as Internal programs, sales initiatives, and employee moral.
    • Customer programs such as loyalty accounts, or referral accounts.
    • Platform customer with sub customers. In platform customers, each customer has their own group; sub customers can have multiple projects or budgets with the platform customer depending on their budget needs.

Get a list of all Customers

UseGET {URI}/customersendpoint to get a list of all customers on this platform. There is no parameters for this endpoint.

EndpointPurpose
GET {URI}/customersGet a list of all Customers on this Platform.

The response message for this endpoint is:

  • 200 OK
  • 400 Bad Request
  • 401 Unauthorized
  • 403 Forbidden

The following example shows the response for when you use GET {URI}/customers\:


  {
    "customerIdentifier": "string", (5-100 chars)
    "displayName": "string", (100 chars)
    "status": "active",
    "createdAt": "2018-04-05T02:33:23.752Z",
    "accounts": [
      {
        "accountIdentifier": "string", (5-100 chars)
        "accountNumber": "A51721736",
        "displayName": "string", (100 chars)
        "createdAt": "2018-04-05T02:33:24.159Z",
        "status": "ACTIVE"
      }
    ]

Create a new Customer on this Platform

You can use POST {URI}/customers endpoint to create a new customer on this platform.

EndpointPurpose
POST {URI}/customersCreate a new Customer on this Platform.

Here are a list of query parameters for when you usePOST {URI}/customersto create a new customer on this platform.

ParameterData TypeDescription
customerIdentifierstringA unique identifier for this Customer. It must be between 5-100 characters and accepts the following: -0-9a-zA-Z in any sequence.
displayNamestringA friendly name for this Customer. The string may have up to 100 characters.

The response message for this endpoint is:

  • 201 Created
  • 400 Bad request
  • 401 Unauthorized
  • 403 Forbidden
  • 409 Conflict, duplicate Exists

The following example shows the response using POST {URI}/customers on this platform:

{
  "customerIdentifier": "string", (5-100 chars)
  "displayName": "string", (100 chars)
}

Get details for a specific Customer

You can use GET {URI}/customers/{customerIdentifier}endpoint to get details for a specific customer on this platform.

EndpointPurpose
GET {URI}/customers/{customerIdentifier}Get details for a specific Customer on this Platform.

Here is a parameter for when you use GET {URI}/customers/{customerIdentifier} to get details for a specific customer on this platform.

ParameterData TypeDescription
customerIdentifierstringA unique identifier for the Customer under which you are seeking details. The string must have 5-100 characters.

The response message for this endpoint is:

  • 200 OK
  • 400 Bad request
  • 401 Unauthorized
  • 403 Forbidden
  • 404 Not Found

Get a list of all Accounts created for a specific Customer

Use GET {URI}/customers/{customerIdentifier}/accounts endpoint to get a list of all accounts created for a specific customer on this platform.

EndpointPurpose
GET {URI}/customers/{customerIdentifier}/accountsGet a list of all Accounts created for a specific Customer on this Platform.

Here is a parameter for when you use GET {URI}/customers/{customerIdentifier}/accounts to get a list of all accounts created for a specific customer on this platform.

ParameterData TypeDescription
customerIdentifierstringA unique identifier for the Customer under which you are seeking details. The string must have 5-100 characters.

The response message for this endpoint is:

  • 200 OK
  • 400 Bad request
  • 401 Unauthorized
  • 403 Forbidden

Create an Account under a specific Customer

Use the POST {URI}/customers/{customerIdentifier}/accounts endpoint to create an account under a specific customer on this platform.

EndpointPurpose
POST {URI}/customers/{customerIdentifier}/accountsCreate an Account under a specific Customer on this platform.

Here are the list of parameters for when you use POST {URI}/customers/{customerIdentifier}/accounts to create an account under specific customer on this platform:

ParameterData TypeDescription
customerIdentifierStringA unique identifier for the Customer under which you are creating a new account. The string must have 5-100 characters.
accountIdentifierstringA unique identifier for this account. It must be between 5-100 characters and accepts the following: -0-9a-zA-Z in any sequence.
displayNameStringA friendly name for this account. The string may have up to 100 characters.
contactEmailStringAn email address for a designated representative for this account. The string may have up to 100 characters.

The response message for this endpoint is:

  • 201 Created
  • 400 Bad request
  • 401 Unauthorized
  • 403 Forbidden
  • 409 Conflict, Duplicate Exist

The following example shows the response using POST {URI}/customers/{customerIdentifier}/accounts to create an account under specific customer on this platform. The account identifier must be lowercase.

{
  "accountIdentifier": "string", (5-100 chars)
  "contactEmail": "string", (100 chars)
  "displayName": "string", (100 chars)
}

Whatโ€™s Next