Developers

EBPP - Billing System Integration (1.1.3)

Introduction

This document explains the API specification that a biller needs to implement so that EBPP can pull customer, customer account and billing related information in real-time.

Authentication

EBPP supports API Keys over HTTP Headers.

In this authentication scheme, EBPP would send API Keys, in the form of HTTP headers, as part of the request. These API Keys must be configured in EBPP by the biller/client beforehand. Clients can check for the authenticity of the request by comparing the API keys and values received in the request with the ones configured in EBPP. Clients can configure more than one API Keys based on their business needs.

HTTP Response Codes

This API specification supports standard HTTP response codes to return the status of an API call. Additional information, such as errors, may be useful to the caller (EBPP). An HTTP response code of 2xx indicates success. An HTTP response code of 4xx indicates a client error and 5xx indicates a processing error. In these cases, billers are expected to return the list of errors in the format specified in the Error Codes section. Each error has a code, message and specifics on which field the error pertains to (if applicable.)

Error Codes

An HTTP response code of 4xx indicates a client error and 5xx indicates a processing error. Each error has a code, message and field.

Example :

{
  "errors": [
   {
      "code": "error_field",
      "message": "The error returned if a mandatory field is missing value or if the value is invalid. This is accompanied by the field that caused the error.",
      "field": "account_number"
   }
  ]
}

The following error codes can be implemented by the biller.

code message
error_field The error returned if a mandatory field is missing value or if the value is invalid. This is accompanied by the field that caused the error.
error_processing The error returned if it is not related to a particular field.

Resources

Customers holds Customer Accounts. A Payment is always made against a Customer Account by/on behalf of a Customer using an associated Funding Account.

Customer : The individual or entity associated with a Customer Account.

Customer Account : The billing account against which a Customer makes payments.

Customer

This section outlines the API required to exchange and manage customer information, such as customer account details.

Lookup Customer

This API is used to retrieve/lookup customer from biller/client system. Customer can be retrieved matching criteria that includes the customer reference or customer account number or lookup reference.

header Parameters
client_key
required
string [ 0 .. 50 ] characters [a-zA-Z0-9_-]{1,50}

The unique identifier assigned by EBPP to the client.

api_key
required
string

API key to authenticate requests. You can pass one or more pair (< Key > < Value >).

Request Body schema: application/x-www-form-urlencoded
customer_reference
string [ 0 .. 100 ] characters ^$|[0-9a-zA-Z #,.'&/\-@!$%*()_+={}|:;`\[\]\^\~\s\\]+

Unique ID assigned by the biller/client system for a given customer.

account_number
string [ 4 .. 32 ] characters [a-zA-Z0-9-_/!@#$%&*{}.]+

Customer Account number of the customer to get details of.

lookup_reference
string [ 0 .. 100 ] characters ^$|[0-9a-zA-Z #,.'&/\-@!$%*()_+={}|:;`\[\]\^\~\s\\]+

The alternate reference maintained in the biller/client system for a customer.

Responses

200

The concerned Resource found with the provided matching criteria.

400

The request was unacceptable, often due to missing a required parameter.

401

Unauthorized, often due to missing api key(s).

403

Forbidden

404

The requested resource doesn't exist.

500

Something went wrong at the Server

post/customers
https://client.endpoint.com/customers

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
}