Digital Disbursements API (1.0.0)

The Digital Disbursements API enables businesses to disburse funds to recipients' DDA.

Introduction

Digital Disbursements is a highly flexible and configurable online payout platform. This document explains the payout capabilities of the Digital Disbursements platform. This API is to be used where funds need to be disbursed by a business to its beneficiaries.

Organized around REST, Digital Disbursements API uses standard HTTP verbs and response codes that can be understood by any HTTP client.

Environments

The following environments are available to clients who would like to integrate with the Disbursements API. Please use the appropriate hostname, based on the environment being accessed, while invoking an API.

Environment Hostname
Sandbox https://sbapi.orbipay.com/payouts/v1
Production https://api.orbipay.com/payouts/v1

For e.g., the API endpoint URL for Create Payee API on the Production environment is https://api.orbipay.com/payouts/v1/payees and that on the Sandbox is https://sbapi.orbipay.com/payouts/v1/payees.

Authentication

Here are the Authorization methods that are supported.

OPAY1-HMAC-SHA256

The HTTP Authorization request header is used to provide authentication information. This header looks like the following.

Authorization : OPAY1-HMAC-SHA256 Credential=...,Signature=...

The constituents of the authorization header are explained in the table below.

Item Description
OPAY1-HMAC-SHA256 The algorithm that is used to calculate the signature.
Credential The api_key
Signature The Base 64 encoded value of the signature bytes. Calculating the signature bytes is explained below.

Signature Calculation

Signature is calculated as follows.

Base64(HMAC-SHA256(secret,input))

The calculation is explained in detail below.

Item Description
Base64() The encoding of the signature bytes.
HMAC-SHA256() The cryptographic function that computes the HMAC by using the SHA256 algorithm with the client secret provided.
secret The secret key specific to the client that is shared with the client during onboarding.
input The string value of the canonicalized transform of request data that includes the HTTP method, URL, headers, query parameters and body. The details of computing the input is explained below.

The string input is computed as follows.

input = method():path():queryString():headers():payload()

Each of the substrings is explained below.

Item Description
method() The HTTP method for the given request and evaluates to one of GET, PUT, POST or DELETE.
path() The absolute path component of the URI—everything starting with the "/" that follows the domain name and up to the end of the string or to the question mark character ("?") if the given URL has query string parameters.
queryString() A string in the format param1=value1&param2=value2&…, where the query parameters are sorted in alphabetical order of the parameter names. In case multiple values are present for a parameter, the query parameters are sorted in alphabetical order of the parameter names and subsequently by the parameter values for each such paramter. Both the parameter names and their values should be trimmed for leading and trailing whitespaces, should be in their normal pre-encoded format. Only parameters with non-empty values, after trimming the leading and trailing whitespaces, should be included. If there are no query parameters at all, the queryString() should evaluate to an empty string (“”).
headers() A string in the format header1=value1&header2=value2&.......&headerN=valueN. The headers are to be sorted alphabetically. Both the header names and their values must be trimmed for leading and trailing white-space, and in their normal pre-encoded format . Only the headers listed by the application and those that are non-empty, after trimming the leading and trailing whitespaces, are to be included.
payload() The raw HTTP body

Tryout

HTTP Response Codes

Digital Disbursements uses standard HTTP response codes to return the status of an API call. Additional information, such as errors, may be useful to a caller. An HTTP response code of 2xx indicates success. In this case, additional information pertaining to the request is sent back in the header parameters. An HTTP response code of 4xx indicates a client error and 5xx indicates a processing error. In these cases, Digital Disbursements also returns a list of errors in the response body in JSON. Each error has a code, message, and specifics on which field the error pertains to (if applicable.)

Http Response Codes

Code Reason
200 - OK Successfully processed the request
201 - Created The object was successfully created
204 - No Content No Content, Successfully processed the request
400 - Bad Request The request was rejected, most likely due to invalid parameters
401, 403 - Unauthorized, Forbidden Unauthorized or forbidden request
404 - Not Found The resource does not exist
409 - Conflict This typically occurs when duplicate requests are received even while the original request is being processed.
422 - Unprocessable Entity The request body contains well-formed (i.e., syntactically correct), but semantically erroneous, instructions.
500 - Internal Server Error Something went wrong with Digital Disbursements and the request could not be processed.

Error Codes

An HTTP response code of 4xx indicates a client error and 5xx indicates a processing error. In these cases, Digital Disbursements also returns a list of errors in the response body in JSON. Each error has a code, message, and specifics on which field the error pertains to (if applicable). The Digital Disbursements API specific error codes are described here.

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_payee_missing The request cannot be processed due to invalid payee details.
error_dda_invalid The request cannot be processed due to invalid bank details.
error_payout_rejected The payout is rejected due to business rules violation.
error_payout_disallowed The payout is disallowed due to business rules violation.
error_duplicate_payout The payout is rejected as it duplicates an existing one.
error_payout_update_disallowed The payout cannot be modified due to business rules violation.
error_credit_account_missing The request cannot be processed due to invalid credit account.
error_duplicate_payee A payee with the same details exists already.
error_credit_account_status_invalid The request cannot be processed due to invalid credit account.
error_payee_account_missing The request can not be processed with the given account information.
error_payee_account_invalid The request can not be processed with the given account information.
error_credit_account_invalid The request can not be processed with the given credit account information.
error_duplicate_payee_account Could not identify a unique payee account.
error_credit_account_limit_reached The credit account cannot be added due to business rules violation.
error_tech_difficulties There is a problem processing this request due to technical difficulties.
error_credit_account_update_disallowed The credit account cannot be modified due to business rules violation.
error_credit_account_delete_disallowed The credit account cannot be deleted due to other linked resources or business rules violation.
error_payee_account_limit_reached The payee account cannot be added since it has reached the maximum limit of payee accounts per payee.
sys_error_payee_missing The request cannot be processed since the payee identification parameters are not available.
error_payee_invalid The request cannot be processed due to invalid payee.
error_credit_account_unusable The request cannot be processed as the credit account is unusable.
error_credit_account_blocked The request cannot be processed as the credit account is blocked.
error_payee_update_disallowed The payee cannot be modified due to business rules violation.
error_credit_account_type_disallowed The request cannot be processed as the credit account type is not allowed.
error_credit_account_disallowed The request cannot be processed as the credit account is not allowed.
error_credit_account_has_active_payouts The request cannot be processed as the credit account has active payouts linked to it.
sys_error_credit_account_type_invalid The request cannot be processed as the credit account type is invalid.
error_payout_not_schedulable The payout cannot be scheduled for the date provided since it might be a holiday or past cut-off time.
error_payout_setup_disallowed The payout setup is disallowed due to business rules violation.
error_card_expiry The payout is rejected as the card expires before the payout date.
error_card_auth The card could not be authorized.
error_card_invalid Invalid card.
error_card_declined The card has been declined.
error_card_unsupported The request cannot be processed as the card is not supported by the system or not opted by the client or not eligible for the payouts.
sys_error_card_processing_failed The request cannot be processed since the merchant configuration parameters are not available.
error_payout_processing_status_unknown The status of the payout processing is unknow as the gate way timed out.

Hypermedia

As per REST guidelines, Digital Disbursements API supports hypermedia. This allows for simple and intuitive navigation between the resources, making it easy to fetch associated metadata for any given resource.

Pagination

The various Retrieve methods listed below, like Retrieve Payees, Retrieve Disbursements and Retrieve Credit Accounts return a list of results matching the specified filter criteria. However, all the items in the list are not returned at once, but instead are returned in groups called pages. The size of the page can be set by the caller using the request parameter called page_size. The default page size is 10.

Each page of results consists of a list of items, the url to fetch any page in the list along with the from index and the to index of the results on that page. If both from_index and to_index are provided, only from_index is considered.To fetch any page in the list, the appropriate query string has to be appended to the url. This can be done as follows.

<url>&from_index=<new from index>&page_size=<page size> ( or ) <url>&to_index=<new to index>&page_size=<page size>

For e.g., the second page of a list with a page size of 10 would return with from_index 11 and to_index 20. To retrieve the third page, the from_index to be used in the request would be 21 and for the first page would be 1. The third page could be retrieved using any of the following urls.

<url>&from_index=21&page_size=10 ( or ) <url>&to_index=30&page_size=10

Request Headers

Every API call includes request headers. These HTTP header parameters are required to define the context in which the API is invoked.

channel : The channel through which the API is invoked. Please contact support@billerpayments.com to configure channels.
Type: string

client_key : The unique identifier assigned by Disbursment to the client.
Type: string Pattern: '[a-zA-Z0-9_-]{1,50}'

product : The product identifier corresponding to the API.
Type: string ValidValues: orbipay_payouts

timestamp : The timestamp for the moment when the API request is created, in the format, yyyy-MM-dd HH:mm:ss.SSSZ
For e.g., 2018-07-13 11:41:17.422+00:00 Please ensure that consecutive spaces are not used in the timestamp.
Type: string

idempotent_request_key : The unique token that clients can generate and maintain in order to identify an API request. This is used by Disbursment to identify duplicate requests and retries. Please refer to the "Duplicate Requests & Retries" section for more details.
Type: string Pattern: '[a-zA-Z0-9]{1,50}'

requestor_type : If an API is being requested from an application that is being used directly by a payee, like the payee portal and IVR, the requestor_type should be set to "payee".
Type: string ValidValues: payee

requestor : The identifier for the requestor of the API, in Disbursment. The value to be passed in the requestor field would depend on the requestor_type.
Type: string Pattern: '[a-zA-Z0-9]{1,20}'

X-OPAY-Headers : Intended for the future use.
Type: string

trace_id : The unique reference that can be used for tracing and debugging an API call.
Type: string Pattern: '[a-zA-Z0-9_=-]{1,50}'

Response Headers

HTTP header parameters are returned as part of every API response. Most of these parameters match those sent in the request.

channel : The channel through which the API is invoked. Please contact support@billerpayments.com to configure channels.
Type: string

client_key : The unique identifier assigned by Disbursment to the client.
Type: string Pattern: '[a-zA-Z0-9_-]{1,50}'

product : The product identifier corresponding to the API.
Type: string ValidValues: orbipay_payouts

timestamp : The timestamp for the moment when the API request is created, in the format, yyyy-MM-dd HH:mm:ss.SSSZ
For e.g., 2018-07-13 11:41:17.422+00:00 Please ensure that consecutive spaces are not used in the timestamp.
Type: string

idempotent_request_key : The unique token that clients can generate and maintain in order to identify an API request. This is used by Disbursment to identify duplicate requests and retries. Please refer to the "Duplicate Requests & Retries" section for more details.
Type: string Pattern: '[a-zA-Z0-9]{1,50}'

requestor_type : If an API is being requested from an application that is being used directly by a payee, like the payee portal and IVR, the requestor_type should be set to "payee".
Type: string ValidValues: payee

requestor : The identifier for the requestor of the API, in Disbursment. The value to be passed in the requestor field would depend on the requestor_type.
Type: string Pattern: '[a-zA-Z0-9]{1,20}'

X-OPAY-Headers : Intended for the future use.
Type: string

request_uuid : The unique ID for the request, generated by Disbursment, that can be used for tracing and audit trail.
Type: string Pattern: '[a-z0-9]{1,50}'

response_codes : Codes corresponding to any additional information or warning, pertaining to the API call, in a comma separated format, that are returned in the response.
Type: string

response_text : The text detailing any additional information or warning, pertaining to the API call, in a pipe separated format, that is returned in the response.
Type: string

Duplicate Requests & Retries

We support idempotency for the HTTP methods POST, PUT, DELETE and PATCH using the header parameter, namely, idempotent_request_key.

In other words, any POST, PUT, DELETE and PATCH request will be considered as a duplicate request or retries and not reprocessed by Digital Disbursements if all the request parameters, including the idempotent_request_key, match with an earlier request. Please note that the entire request with all the request parameters, including the idempotent_request_key, have to match with the original request for it to be treated as a duplicate request or retry. In case of duplicate requests or retries, the API response will be that of the original request.

The idempotent_request_key is valid only for a duration of one hour from the time of the original request. Any duplicate request or retry after a gap of one hour from the original request will be considered as a fresh request and reprocessed by Digital Disbursements.

Digital Disbursements does not support retrial of GET requests and these are processed every time, irrespective of the idempotent_request_key.

Custom Fields

Custom fields are useful for storing additional structured information on an object. Please check with the specific Resource definition below to check if it supports custom fields. For example, you could store the payee’s full name and corresponding unique identifier from your system, on a Digital Disbursements Payee object. Custom fields are only captured and stored by Digital Disbursements and not used for processing of any sort. Please contact support@billerpayments.com for any additional requirement you may have on custom fields.

Resources

Payee hold Payee Accounts. A disbursement is always made against a Payee Account by/on behalf of a Payee using an associated Credit Account. Each of these resources is labeled with its own id in Digital Disbursements.

Payee The individual or entity associated with a Payee Account.

Payee Account The virtual destination from which a disbursement is made.

Credit Account The debit or bank account being used to receive funds.

Disbursement The process through which disbursement's credit account will be credited.

Payee

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

Create Payee

The Create Payee API is used to register a payee with a client in Digital Disbursements. It is also mandatory to create a payee account for the payee. So, at least one payee account should be provided in order to register a payee. There is no limit on the number of accounts that can be associated with the payee.

header Parameters
channel
required
string

The channel through which the API is invoked.

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

The unique identifier assigned by Digital Disbursements to the client.

product
required
string
Value: "orbipay_payouts"

The product identifier corresponding to the API.

timestamp
required
string

The timestamp for the moment when the API request is created.

idempotent_request_key
required
string [ 1 .. 50 ] characters [a-zA-Z0-9]{1,50}

The unique token that clients can generate and maintain in order to identify an API request.

requestor
required
string [ 1 .. 50 ] characters [a-zA-Z0-9]{1,50}

The identifier for the requestor of the API.

requestor_type
required
string
Value: "payee"

Type of the requestor of the API.

X-OPAY-Headers
string

Intended for the future use.

Request Body Schema: application/json

The JSON that contains all the attributes of payee to be created.

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

The unique identifier in the client system for the payee.

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

The first name of the payee.

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

The last name of the payee.

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

The middle name of the payee.

gender
string
Enum: "male" "female"

The gender of the payee.

date_of_birth
string 10 characters

The date of birth of the payee. It should be in the full-date format as per ISO8601, namely, YYYY-MM-DD.

ssn
string 9 characters [0-9]{9}

The SSN of the payee if the account holder is an individual or the tax ID, if the payee is a business.

locale
string <= 5 characters ^[a-z]{2}_[A-Z]{2}$

The language in which the payee wants the alerts and notifications from Digital Disbursements. This is to be specified in the format,
< ISO-639-1 language code >_< ISO ALPHA-2 Country Code >.
For e.g., en_US indicates the language preference as US English, which is also the default value.

email
string <email> [ 1 .. 100 ] characters [a-zA-Z0-9!#$%&'*+-/=?^._`{|}~]+@[a-zA-Z0-9_.-]+\.[a-zA-Z0-9._]+

The email address of the payee.

home_phone
string <= 10 characters [0-9]{10}

The home phone number of the payee.

work_phone
string <= 10 characters [0-9]{10}

The work phone number of the payee.

mobile_phone
string <= 10 characters [0-9]{10}

The mobile phone number of the payee.

address
object
custom_fields
object

The additional information or meta-information that Digital Disbursements can accept, maintain and transmit back to the client. The custom fields need to be configured with Digital Disbursements before they can be accepted. Digital Disbursements would reject custom fields that are not pre-configured. Please contact support@billerpayments.com for more information on configuring and using custom fields.

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

Comments that can be used to recollect the operation performed on the resource object. API clients need to ensure that no sensitive information is passed in the memo. Alacriti (Orbipay) is not responsible for the security of any sensitive information that may be passed as part of the memo.

Responses

201

The payee created, with the id for the same in Digital Disbursements.

400

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

401

Unauthorized

403

Forbidden

404

The requested resource doesn't exist.

422

The parameters were valid but the request failed.

500

Something went wrong at the Digital Disbursements Server

default

unexpected error

post/payees
https://api.orbipay.com/payouts/v1/payees

Please click on a language icon above to try out the API

Request samples

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

Response samples

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

Update Payee

The Update Payee API is used to edit the payee's personal details, accounts or the payee's status. Only the information being updated needs to be sent in the request, along with the id of the payee being updated. A payee can also be associated with new payee accounts using the API.

path Parameters
ID_PAYEE
required
string [ 1 .. 20 ] characters [0-9]{1,20}

The unique identifier assigned by Digital Disbursements to the payee.

header Parameters
channel
required
string

The channel through which the API is invoked.

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

The unique identifier assigned by Digital Disbursements to the client.

product
required
string
Value: "orbipay_payouts"

The product identifier corresponding to the API.

timestamp
required
string

The timestamp for the moment when the API call is made, in the format, yyyy-MM-dd HH:mm:ss.SSSZ
For e.g., 2018-07-13 11:41:17.422+00:00 Please ensure that consecutive spaces are not used in the timestamp.

idempotent_request_key
required
string [ 1 .. 50 ] characters [a-zA-Z0-9]{1,50}

The unique token that clients can generate and maintain in order to identify an API request. This is used by Digital Disbursements to identify duplicate requests and retries. Please refer to the "Duplicate Requests & Retries" section for more details.

requestor
required
string [ 1 .. 50 ] characters [a-zA-Z0-9]{1,50}

The identifier for the requestor of the API.

requestor_type
required
string
Value: "payee"

Type of the requestor of the API.

X-OPAY-Headers
string

Intended for the future use.

Request Body Schema: application/json

JSON containing all the attributes of the payee to be updated.

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

The first name of the payee.

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

The last name of the payee.

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

The middle name of the payee.

gender
string
Enum: "male" "female"

The gender of the payee.

date_of_birth
string 10 characters

The date of birth of the payee. It should be in the full-date format as per ISO8601, namely, YYYY-MM-DD.

ssn
string 9 characters [0-9]{9}

The SSN of the payee if the account holder is an individual or the tax ID, if the payee is a business.

locale
string <= 5 characters ^[a-z]{2}_[A-Z]{2}$

The language in which the payee wants the alerts and notifications from Digital Disbursements. This is to be specified in the format,
< ISO-639-1 language code >_< ISO ALPHA-2 Country Code >.
For e.g., en_US indicates the language preference as US English, which is also the default value.

email
string <email> [ 0 .. 100 ] characters [a-zA-Z0-9!#$%&'*+-/=?^._`{|}~]+@[a-zA-Z0-9_.-]+\.[a-zA-Z0-9._]+

The email address of the payee.

home_phone
string <= 10 characters [0-9]{10}

The home phone number of the payee.

work_phone
string <= 10 characters [0-9]{10}

The work phone number of the payee.

mobile_phone
string <= 10 characters [0-9]{10}

The mobile phone number of the payee.

address
object
custom_fields
object

The additional information or meta-information that Digital Disbursements can accept, maintain and transmit back to the client. The custom fields need to be configured with Digital Disbursements before they can be accepted. Digital Disbursements would reject custom fields that are not pre-configured. Please contact support@billerpayments.com for more information on configuring and using custom fields.

status
string
Enum: "active" "revoked" "suspended"
comments
string [ 0 .. 1000 ] characters [0-9a-zA-Z #,.'&/\-@!$%*()_+={}|:;`\[\]\^\~\\"]+

Comments that can be used to recollect the operation performed on the resource object. API clients need to ensure that no sensitive information is passed in the memo. Alacriti (Orbipay) is not responsible for the security of any sensitive information that may be passed as part of the memo.

payee_accounts
object

Responses

200

The payee along with the list of payee accounts available to the payee.

400

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

401

Unauthorized

403

Forbidden

404

The requested resource doesn't exist.

422

The parameters were valid but the request failed.

500

Something went wrong at the Digital Disbursements Server

default

unexpected error

put/payees/{ID_PAYEE}
https://api.orbipay.com/payouts/v1/payees/{ID_PAYEE}

Please click on a language icon above to try out the API

Request samples

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

Response samples

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

Get Payee

The Get Payee API is used to retrieve the details of the payee based on the id.

path Parameters
ID_PAYEE
required
string [ 1 .. 20 ] characters [0-9]{1,20}

The unique identifier assigned by Digital Disbursements to the payee.

header Parameters
channel
required
string

The channel through which the API is invoked.

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

The unique identifier assigned by Digital Disbursements to the client.

product
required
string
Value: "orbipay_payouts"

The product identifier corresponding to the API.

timestamp
required
string

The timestamp for the moment when the API call is made, in the format, yyyy-MM-dd HH:mm:ss.SSSZ
For e.g., 2018-07-13 11:41:17.422+00:00 Please ensure that consecutive spaces are not used in the timestamp.

idempotent_request_key
required
string [ 1 .. 50 ] characters [a-zA-Z0-9]{1,50}

The unique token that clients can generate and maintain in order to identify an API request. This is used by Digital Disbursements to identify duplicate requests and retries. Please refer to the "Duplicate Requests & Retries" section for more details.

requestor
required
string [ 1 .. 50 ] characters [a-zA-Z0-9]{1,50}

The identifier for the requestor of the API.

requestor_type
required
string
Value: "payee"

Type of the requestor of the API.

X-OPAY-Headers
string

Intended for the future use.

Responses

200

The payee along with the list of payee accounts available to the payee

400

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

401

Unauthorized

403

Forbidden

404

The requested resource doesn't exist.

422

The parameters were valid but the request failed.

500

Something went wrong at the Digital Disbursements Server

default

unexpected error

get/payees/{ID_PAYEE}
https://api.orbipay.com/payouts/v1/payees/{ID_PAYEE}

Please click on a language icon above to try out the API

Response samples

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

Retrieve Payees

This API is used to retrieve/lookup payees from Digital Disbursements. Payees can be retrieved matching criteria that includes the payee Id, the SSN, the email or the payee account number.

query Parameters
page_size
string

The maximum number of objects returned in the query.

header Parameters
channel
required
string

The channel through which the API is invoked.

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

The unique identifier assigned by Digital Disbursements to the client.

product
required
string
Value: "orbipay_payouts"

The product identifier corresponding to the API.

timestamp
required
string

The timestamp for the moment when the API call is made, in the format, yyyy-MM-dd HH:mm:ss.SSSZ
For e.g., 2018-07-13 11:41:17.422+00:00 Please ensure that consecutive spaces are not used in the timestamp.

idempotent_request_key
required
string [ 1 .. 50 ] characters [a-zA-Z0-9]{1,50}

The unique token that clients can generate and maintain in order to identify an API request. This is used by Digital Disbursements to identify duplicate requests and retries. Please refer to the "Duplicate Requests & Retries" section for more details.

requestor
required
string [ 1 .. 50 ] characters [a-zA-Z0-9]{1,50}

The identifier for the requestor of the API.

requestor_type
required
string
Value: "payee"

Type of the requestor of the API.

X-OPAY-Headers
string

Intended for the future use.

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

Unique ID assigned by the client's system for a given payee.

ssn
string 9 characters [0-9]{9}

The SSN of the payee if the account holder is an individual or the tax ID, if the payee is a business.

email
string [ 0 .. 100 ] characters [a-zA-Z0-9!#$%&'*+-/=?^._`{|}~]+@[a-zA-Z0-9_.-]+\.[a-zA-Z0-9._]+

This field contains the payee’s email address within Digital Disbursements.

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

Payee Account Number of the payee to get details of.

Responses

200

The list of payees matching the criteria provided, the total results count and the urls to get the next/previous pages.

400

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

401

Unauthorized

403

Forbidden

404

The requested resource doesn't exist.

422

The parameters were valid but the request failed.

500

Something went wrong at the Digital Disbursements Server

default

unexpected error

post/payees/lists
https://api.orbipay.com/payouts/v1/payees/lists

Please click on a language icon above to try out the API

Response samples

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

Payee Account

This section outlines the API required to manage Payee Accounts.

Get Payee Account

The Get Payee Account API is used to retrieve the details of a payee account based on the id.

path Parameters
ID_PAYEE
required
string [ 1 .. 20 ] characters [0-9]{1,20}

The unique identifier assigned by Digital Disbursements to the payee.

ID_PAYEE_ACCOUNT
required
string [ 1 .. 20 ] characters [0-9]{1,20}

The unique identifier assigned by Digital Disbursements to the Payee Account.

header Parameters
channel
required
string

The channel through which the API is invoked.

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

The unique identifier assigned by Digital Disbursements to the client.

product
required
string
Value: "orbipay_payouts"

The product identifier corresponding to the API.

timestamp
required
string

The timestamp for the moment when the API call is made, in the format, yyyy-MM-dd HH:mm:ss.SSSZ
For e.g., 2018-07-13 11:41:17.422+00:00 Please ensure that consecutive spaces are not used in the timestamp.

idempotent_request_key
required
string [ 1 .. 50 ] characters [a-zA-Z0-9]{1,50}

The unique token that clients can generate and maintain in order to identify an API request. This is used by Digital Disbursements to identify duplicate requests and retries. Please refer to the "Duplicate Requests & Retries" section for more details.

requestor
required
string [ 1 .. 50 ] characters [a-zA-Z0-9]{1,50}

The identifier for the requestor of the API.

requestor_type
required
string
Value: "payee"

Type of the requestor of the API.

X-OPAY-Headers
string

Intended for the future use.

Responses

200

The payee account.

400

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

401

Unauthorized

403

Forbidden

404

The requested resource doesn't exist.

422

The parameters were valid but the request failed.

500

Something went wrong at the Digital Disbursements Server

default

unexpected error

get/payees/{ID_PAYEE}/payeeaccounts/{ID_PAYEE_ACCOUNT}
https://api.orbipay.com/payouts/v1/payees/{ID_PAYEE}/payeeaccounts/{ID_PAYEE_ACCOUNT}

Please click on a language icon above to try out the API

Response samples

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

Retrieve Payee Accounts

The API is used to retrieve all the payee accounts associated with a payee. The accounts can be filtered using the account number, status.

path Parameters
ID_PAYEE
required
string [ 1 .. 20 ] characters [0-9]{1,20}

The unique identifier assigned by Digital Disbursements to the payee.

query Parameters
page_size
string

The maximum number of objects returned in the query.

header Parameters
channel
required
string

The channel through which the API is invoked.

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

The unique identifier assigned by Digital Disbursements to the client.

product
required
string
Value: "orbipay_payouts"

The product identifier corresponding to the API.

timestamp
required
string

The timestamp for the moment when the API call is made, in the format, yyyy-MM-dd HH:mm:ss.SSSZ
For e.g., 2018-07-13 11:41:17.422+00:00 Please ensure that consecutive spaces are not used in the timestamp.

idempotent_request_key
required
string [ 1 .. 50 ] characters [a-zA-Z0-9]{1,50}

The unique token that clients can generate and maintain in order to identify an API request. This is used by Digital Disbursements to identify duplicate requests and retries. Please refer to the "Duplicate Requests & Retries" section for more details.

requestor
required
string [ 1 .. 50 ] characters [a-zA-Z0-9]{1,50}

The identifier for the requestor of the API.

requestor_type
required
string
Value: "payee"

Type of the requestor of the API.

X-OPAY-Headers
string

Intended for the future use.

Request Body Schema: application/x-www-form-urlencoded
account_number
string [ 4 .. 32 ] characters [a-zA-Z0-9-_/!@#$%&*{}.]+

The Account Number to get details of.

status
Array of strings
Items Enum: "active" "closed"

Status of the payee's account. This can take multiple values in the format key=value1&key=value2....

Responses

200

List of payee accounts matching the criteria provided, the total results count and the urls to get the next/previous pages.

400

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

401

Unauthorized

403

Forbidden

404

The requested resource doesn't exist.

422

The parameters were valid but the request failed.

500

Something went wrong at the Digital Disbursements Server

default

unexpected error

post/payees/{ID_PAYEE}/payeeaccounts/lists
https://api.orbipay.com/payouts/v1/payees/{ID_PAYEE}/payeeaccounts/lists

Please click on a language icon above to try out the API

Response samples

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

Retrieve Payee Accounts Page

This API is used to retrieve all the matching payee accounts associated with a payee.

path Parameters
ID_PAYEE
required
string [ 1 .. 20 ] characters [0-9]{1,20}

The unique identifier assigned by Digital Disbursements to the payee.

query Parameters
page_size
string

The maximum number of objects returned in the query.

query_id
required
string [ 1 .. 50 ] characters [a-z0-9]{1,50}

query id of the Retrieve/Search Accounts lookup.

from_index
string

The id of the object after which the next set of objects are to be retrieved.

to_index
string

The id of the object before which the previous set of objects are to be retrieved.

header Parameters
channel
required
string

The channel through which the API is invoked.

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

The unique identifier assigned by Digital Disbursements to the client.

product
required
string
Value: "orbipay_payouts"

The product identifier corresponding to the API.

timestamp
required
string

The timestamp for the moment when the API call is made, in the format, yyyy-MM-dd HH:mm:ss.SSSZ
For e.g., 2018-07-13 11:41:17.422+00:00 Please ensure that consecutive spaces are not used in the timestamp.

idempotent_request_key
required
string [ 1 .. 50 ] characters [a-zA-Z0-9]{1,50}

The unique token that clients can generate and maintain in order to identify an API request. This is used by Digital Disbursements to identify duplicate requests and retries. Please refer to the "Duplicate Requests & Retries" section for more details.

requestor
required
string [ 1 .. 50 ] characters [a-zA-Z0-9]{1,50}

The identifier for the requestor of the API.

requestor_type
required
string
Value: "payee"

Type of the requestor of the API.

X-OPAY-Headers
string

Intended for the future use.

Responses

200

All the applicable accounts are returned in the response. The fields applicable vary with the type of account.

400

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

401

Unauthorized

403

Forbidden

404

The requested resource doesn't exist.

422

The parameters were valid but the request failed.

500

Something went wrong at the Digital Disbursements Server

default

unexpected error

get/payees/{ID_PAYEE}/payeeaccounts/lists
https://api.orbipay.com/payouts/v1/payees/{ID_PAYEE}/payeeaccounts/lists

Please click on a language icon above to try out the API

Response samples

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

Credit Account

This section outlines the API required to enable payees to manage their credit accounts.

Add Bank Credit Account

This API is used to add a bank credit account for the payee.

path Parameters
ID_PAYEE
required
string [ 1 .. 20 ] characters [0-9]{1,20}

The unique identifier assigned by Digital Disbursements to the payee.

header Parameters
channel
required
string

The channel through which the API is invoked.

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

The unique identifier assigned by Digital Disbursements to the client.

product
required
string
Value: "orbipay_payouts"

The product identifier corresponding to the API.

timestamp
required
string

The timestamp for the moment when the API call is made, in the format, yyyy-MM-dd HH:mm:ss.SSSZ
For e.g., 2018-07-13 11:41:17.422+00:00 Please ensure that consecutive spaces are not used in the timestamp.

idempotent_request_key
required
string [ 1 .. 50 ] characters [a-zA-Z0-9]{1,50}

The unique token that clients can generate and maintain in order to identify an API request. This is used by Digital Disbursements to identify duplicate requests and retries. Please refer to the "Duplicate Requests & Retries" section for more details.

requestor
required
string [ 1 .. 50 ] characters [a-zA-Z0-9]{1,50}

The identifier for the requestor of the API.

requestor_type
required
string
Value: "payee"

Type of the requestor of the API.

X-OPAY-Headers
string

Intended for the future use.

Request Body Schema: application/json

JSON containing all the attributes of the Bank Credit account to be added to payee.

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

The name as specified on the account.

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

The nickname by which a payee might want to identify the account.

address
object
aba_routing_number
required
string 9 characters [0-9]{9}

The ABA/Routing number for the bank account.

account_number
required
string [ 4 .. 32 ] characters [a-zA-Z0-9]+

The number or reference that a payee uses to identify the credit account.

account_subtype
required
string
Enum: "checking" "money_market" "savings"

The sub type of the credit account. For e.g., a savings account, a checking account.

account_holder_type
required
string
Enum: "personal" "business"

The type of ownership for the credit account. This is applicable only in the case of bank accounts and it is defaults to personal.

custom_fields
object

The additional information or meta-information that Digital Disbursements can accept, maintain and transmit back to the client. The custom fields need to be configured with Digital Disbursements before they can be accepted. Digital Disbursements would reject custom fields that are not pre-configured. Please contact support@billerpayments.com for more information on configuring and using custom fields.

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

Comments that can be used to recollect the operation performed on the resource object. API clients need to ensure that no sensitive information is passed in the memo. Alacriti (Orbipay) is not responsible for the security of any sensitive information that may be passed as part of the memo.

Responses

201

The credit account created, with the id for the same in Digital Disbursements.

400

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

401

Unauthorized

403

Forbidden

404

The requested resource doesn't exist.

422

The parameters were valid but the request failed.

500

Something went wrong at the Digital Disbursements Server

default

unexpected error

post/payees/{ID_PAYEE}/bank/creditaccounts
https://api.orbipay.com/payouts/v1/payees/{ID_PAYEE}/bank/creditaccounts

Please click on a language icon above to try out the API

Request samples

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

Response samples

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

Update Bank Credit Account

The API is used to edit the credit account details. The type of the credit account cannot be changed. The sub-type of a bank account can be changed. For e.g., a saving account can be updated to a money market account. However, the sub-type cannot be updated for a card account. The Id of the credit account gets updated to a new value if the account number is updated. Editing a credit account updates the account information on all pending disbursements made using that account but does not change the details on disbursements that have been completed.

path Parameters
ID_PAYEE
required
string [ 1 .. 20 ] characters [0-9]{1,20}

The unique identifier assigned by Digital Disbursements to the payee.

ID_CREDIT_ACCOUNT
required
string [ 1 .. 20 ] characters [0-9]{1,20}

The unique identifier assigned by Digital Disbursements to the Credit Account.

header Parameters
channel
required
string

The channel through which the API is invoked.

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

The unique identifier assigned by Digital Disbursements to the client.

product
required
string
Value: "orbipay_payouts"

The product identifier corresponding to the API.

timestamp
required
string

The timestamp for the moment when the API call is made, in the format, yyyy-MM-dd HH:mm:ss.SSSZ
For e.g., 2018-07-13 11:41:17.422+00:00 Please ensure that consecutive spaces are not used in the timestamp.

idempotent_request_key
required
string [ 1 .. 50 ] characters [a-zA-Z0-9]{1,50}

The unique token that clients can generate and maintain in order to identify an API request. This is used by Digital Disbursements to identify duplicate requests and retries. Please refer to the "Duplicate Requests & Retries" section for more details.

requestor
required
string [ 1 .. 50 ] characters [a-zA-Z0-9]{1,50}

The identifier for the requestor of the API.

requestor_type
required
string
Value: "payee"

Type of the requestor of the API.

X-OPAY-Headers
string

Intended for the future use.

Request Body Schema: application/json

JSON containing all the attributes of the Card Credit account to be updated.

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

The name as specified on the account.

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

The nickname by which a payee might want to identify the account.

address
object
account_subtype
string
Enum: "checking" "money_market" "savings"

The sub type of the credit account. For e.g., a savings account, a checking account.

account_holder_type
string
Enum: "personal" "business"

The type of ownership for the credit account. This is applicable only in the case of bank accounts and it is defaults to personal.

custom_fields
object

The additional information or meta-information that Digital Disbursements can accept, maintain and transmit back to the client. The custom fields need to be configured with Digital Disbursements before they can be accepted. Digital Disbursements would reject custom fields that are not pre-configured. Please contact support@billerpayments.com for more information on configuring and using custom fields.

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

Comments that can be used to recollect the operation performed on the resource object. API clients need to ensure that no sensitive information is passed in the memo. Alacriti (Orbipay) is not responsible for the security of any sensitive information that may be passed as part of the memo.

status
string
Enum: "active" "suspended" "frozen" "unverified"

The status of the credit account in Disbursment.

Responses

200

The updated credit account.

400

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

401

Unauthorized

403

Forbidden

404

The requested resource doesn't exist.

422

The parameters were valid but the request failed.

500

Something went wrong at the Digital Disbursements Server

default

unexpected error

put/payees/{ID_PAYEE}/bank/creditaccounts/{ID_CREDIT_ACCOUNT}
https://api.orbipay.com/payouts/v1/payees/{ID_PAYEE}/bank/creditaccounts/{ID_CREDIT_ACCOUNT}

Please click on a language icon above to try out the API

Request samples

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

Response samples

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

Get Credit Account

The Get Credit Account API is used to retrieve the details of the credit account based on the id.

path Parameters
ID_PAYEE
required
string [ 1 .. 20 ] characters [0-9]{1,20}

The unique identifier assigned by Digital Disbursements to the payee.

ID_CREDIT_ACCOUNT
required
string [ 1 .. 20 ] characters [0-9]{1,20}

The unique identifier assigned by Digital Disbursements to the Credit Account.

header Parameters
channel
required
string

The channel through which the API is invoked.

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

The unique identifier assigned by Digital Disbursements to the client.

product
required
string
Value: "orbipay_payouts"

The product identifier corresponding to the API.

timestamp
required
string

The timestamp for the moment when the API call is made, in the format, yyyy-MM-dd HH:mm:ss.SSSZ
For e.g., 2018-07-13 11:41:17.422+00:00 Please ensure that consecutive spaces are not used in the timestamp.

idempotent_request_key
required
string [ 1 .. 50 ] characters [a-zA-Z0-9]{1,50}

The unique token that clients can generate and maintain in order to identify an API request. This is used by Digital Disbursements to identify duplicate requests and retries. Please refer to the "Duplicate Requests & Retries" section for more details.

requestor
required
string [ 1 .. 50 ] characters [a-zA-Z0-9]{1,50}

The identifier for the requestor of the API.

requestor_type
required
string
Value: "payee"

Type of the requestor of the API.

X-OPAY-Headers
string

Intended for the future use.

Responses

200

The credit account with the id provided.

400

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

401

Unauthorized

403

Forbidden

404

The requested resource doesn't exist.

422

The parameters were valid but the request failed.

500

Something went wrong at the Digital Disbursements Server

default

unexpected error

get/payees/{ID_PAYEE}/creditaccounts/{ID_CREDIT_ACCOUNT}
https://api.orbipay.com/payouts/v1/payees/{ID_PAYEE}/creditaccounts/{ID_CREDIT_ACCOUNT}

Please click on a language icon above to try out the API

Response samples

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

Delete Credit Account

The Delete Credit Account API is used to delete the credit account of a payee. All pending disbursements made with that account are cancelled upon deletion of the credit account.

path Parameters
ID_PAYEE
required
string [ 1 .. 20 ] characters [0-9]{1,20}

The unique identifier assigned by Digital Disbursements to the payee.

ID_CREDIT_ACCOUNT
required
string [ 1 .. 20 ] characters [0-9]{1,20}

The unique identifier assigned by Digital Disbursements to the Credit Account.

header Parameters
channel
required
string

The channel through which the API is invoked.

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

The unique identifier assigned by Digital Disbursements to the client.

product
required
string
Value: "orbipay_payouts"

The product identifier corresponding to the API.

timestamp
required
string

The timestamp for the moment when the API call is made, in the format, yyyy-MM-dd HH:mm:ss.SSSZ
For e.g., 2018-07-13 11:41:17.422+00:00 Please ensure that consecutive spaces are not used in the timestamp.

idempotent_request_key
required
string [ 1 .. 50 ] characters [a-zA-Z0-9]{1,50}

The unique token that clients can generate and maintain in order to identify an API request. This is used by Digital Disbursements to identify duplicate requests and retries. Please refer to the "Duplicate Requests & Retries" section for more details.

requestor
required
string [ 1 .. 50 ] characters [a-zA-Z0-9]{1,50}

The identifier for the requestor of the API.

requestor_type
required
string
Value: "payee"

Type of the requestor of the API.

X-OPAY-Headers
string

Intended for the future use.

Request Body Schema: application/json

Details of account to be deleted.

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

Responses

204

Returns 204 http status code with empty body.

400

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

401

Unauthorized

403

Forbidden

404

The requested resource doesn't exist.

422

The parameters were valid but the request failed.

500

Something went wrong at the Digital Disbursements Server

default

unexpected error

post/payees/{ID_PAYEE}/creditaccounts/{ID_CREDIT_ACCOUNT}
https://api.orbipay.com/payouts/v1/payees/{ID_PAYEE}/creditaccounts/{ID_CREDIT_ACCOUNT}

Please click on a language icon above to try out the API

Request samples

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

Response samples

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

Retrieve Credit Accounts

This API is used to retrieve all the credit accounts associated with a payee. Accounts can be filtered using the account number, the ABA routing number (for bank accounts), the account status and the account sub-type.

path Parameters
ID_PAYEE
required
string [ 1 .. 20 ] characters [0-9]{1,20}

The unique identifier assigned by Digital Disbursements to the payee.

query Parameters
page_size
string

The maximum number of objects returned in the query.

header Parameters
channel
required
string

The channel through which the API is invoked.

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

The unique identifier assigned by Digital Disbursements to the client.

product
required
string
Value: "orbipay_payouts"

The product identifier corresponding to the API.

timestamp
required
string

The timestamp for the moment when the API call is made, in the format, yyyy-MM-dd HH:mm:ss.SSSZ
For e.g., 2018-07-13 11:41:17.422+00:00 Please ensure that consecutive spaces are not used in the timestamp.

idempotent_request_key
required
string [ 1 .. 50 ] characters [a-zA-Z0-9]{1,50}

The unique token that clients can generate and maintain in order to identify an API request. This is used by Digital Disbursements to identify duplicate requests and retries. Please refer to the "Duplicate Requests & Retries" section for more details.

requestor
required
string [ 1 .. 50 ] characters [a-zA-Z0-9]{1,50}

The identifier for the requestor of the API.

requestor_type
required
string
Value: "payee"

Type of the requestor of the API.

X-OPAY-Headers
string

Intended for the future use.

Request Body Schema: application/x-www-form-urlencoded
account_number
string [ 4 .. 32 ] characters [a-zA-Z0-9]+

The Account Number to get details of.

status
Array of strings
Items Enum: "active" "frozen" "suspended" "unverified"

Status of the credit account. This can take multiple values in the format key=value1&key=value2....

aba_routing_number
string 9 characters [0-9]{9}

The ABA/Routing number for the bank account.

account_type
Array of strings
Items Enum: "bank" "debit_card"

The type of the credit account. For e.g., bank. This can take multiple values in the format key=value1&key=value2....

account_subtype
string
Enum: "checking" "savings" "money_market" "visa_debit" "mastercard_debit" "discover_debit" "atm_network"

The sub type of the credit account. For e.g., a savings account, a checking account.

Responses

200

The list of credit accounts matching the criteria provided, the total results count and the urls to get the next/previous pages.

400

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

401

Unauthorized

403

Forbidden

404

The requested resource doesn't exist.

422

The parameters were valid but the request failed.

500

Something went wrong at the Digital Disbursements Server

default

unexpected error

post/payees/{ID_PAYEE}/creditaccounts/lists
https://api.orbipay.com/payouts/v1/payees/{ID_PAYEE}/creditaccounts/lists

Please click on a language icon above to try out the API

Response samples

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

Retrieve Credit Accounts Page

This API is used to get a page/set of credit accounts based on the lookup id,

path Parameters
ID_PAYEE
required
string [ 1 .. 20 ] characters [0-9]{1,20}

The unique identifier assigned by Digital Disbursements to the payee.

query Parameters
page_size
string

The maximum number of objects returned in the query.

query_id
required
string [ 1 .. 50 ] characters [a-z0-9]{1,50}

query id of the Retrieve/Search Accounts lookup.

from_index
string

The id of the object after which the next set of objects are to be retrieved.

to_index
string

The id of the object before which the previous set of objects are to be retrieved.

header Parameters
channel
required
string

The channel through which the API is invoked.

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

The unique identifier assigned by Digital Disbursements to the client.

product
required
string
Value: "orbipay_payouts"

The product identifier corresponding to the API.

timestamp
required
string

The timestamp for the moment when the API call is made, in the format, yyyy-MM-dd HH:mm:ss.SSSZ
For e.g., 2018-07-13 11:41:17.422+00:00 Please ensure that consecutive spaces are not used in the timestamp.

idempotent_request_key
required
string [ 1 .. 50 ] characters [a-zA-Z0-9]{1,50}

The unique token that clients can generate and maintain in order to identify an API request. This is used by Digital Disbursements to identify duplicate requests and retries. Please refer to the "Duplicate Requests & Retries" section for more details.

requestor
required
string [ 1 .. 50 ] characters [a-zA-Z0-9]{1,50}

The identifier for the requestor of the API.

requestor_type
required
string
Value: "payee"

Type of the requestor of the API.

X-OPAY-Headers
string

Intended for the future use.

Responses

200

All the applicable accounts are returned in the response. The fields applicable vary with the type of account.

400

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

401

Unauthorized

403

Forbidden

404

The requested resource doesn't exist.

422

The parameters were valid but the request failed.

500

Something went wrong at the Digital Disbursements Server

default

unexpected error

get/payees/{ID_PAYEE}/creditaccounts/lists
https://api.orbipay.com/payouts/v1/payees/{ID_PAYEE}/creditaccounts/lists

Please click on a language icon above to try out the API

Response samples

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

Disbursement

This section outlines the API required to enable payees to manage their disbursements.

Create Disbursement

The API is used to make disbursements to service a payee account. Client systems can provide the unique identifier for the disbursement in their system as payout_reference.

path Parameters
ID_PAYEE
required
string [ 1 .. 20 ] characters [0-9]{1,20}

The unique identifier assigned by Digital Disbursements to the payee.

header Parameters
channel
required
string

The channel through which the API is invoked.

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

The unique identifier assigned by Digital Disbursements to the client.

product
required
string
Value: "orbipay_payouts"

The product identifier corresponding to the API.

timestamp
required
string

The timestamp for the moment when the API call is made, in the format, yyyy-MM-dd HH:mm:ss.SSSZ
For e.g., 2018-07-13 11:41:17.422+00:00 Please ensure that consecutive spaces are not used in the timestamp.

idempotent_request_key
required
string [ 1 .. 50 ] characters [a-zA-Z0-9]{1,50}

The unique token that clients can generate and maintain in order to identify an API request. This is used by Digital Disbursements to identify duplicate requests and retries. Please refer to the "Duplicate Requests & Retries" section for more details.

requestor
required
string [ 1 .. 50 ] characters [a-zA-Z0-9]{1,50}

The identifier for the requestor of the API.

requestor_type
required
string
Value: "payee"

Type of the requestor of the API.

X-OPAY-Headers
string

Intended for the future use.

Request Body Schema: application/json

JSON containing all the fields required to make a disbursement.

payout_reference
string [ 0 .. 50 ] characters [0-9a-zA-Z._-]{0,50}

The unique identifier in the client system for the disbursement.

payout_date
string 10 characters

The date on which Digital Disbursements will initiate the transaction to credit the Payee. It must be in ISO8601 full-date format, namely, YYYY-MM-DD.

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

Comments that can be used to recollect the operation performed on the resource object. API clients need to ensure that no sensitive information is passed in the memo. Alacriti (Orbipay) is not responsible for the security of any sensitive information that may be passed as part of the memo.

custom_fields
object

The additional information or meta-information that Digital Disbursements can accept, maintain and transmit back to the client. The custom fields need to be configured with Digital Disbursements before they can be accepted. Digital Disbursements would reject custom fields that are not pre-configured. Please contact support@billerpayments.com for more information on configuring and using custom fields.

amount
required
string [ 1 .. 17 ] characters ^[0-9]{1,14}(\.[0-9][0-9]?)?$

The disbursement amount upto 2 decimal places.

payout_request_date
string 10 characters

The date on which the payees credit account will be credited. It must be in ISO8601 full-date format, namely, YYYY-MM-DD. This is applicable only if the client has opted for it.

payee
required
object
credit_account
required
object
payee_account
required
object

Responses

201

The Disbursment object with confirmation number and id issued by Digital Disbursements.

400

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

401

Unauthorized

403

Forbidden

404

The requested resource doesn't exist.

422

The parameters were valid but the request failed.

500

Something went wrong at the Digital Disbursements Server

default

unexpected error

post/payees/{ID_PAYEE}/payouts
https://api.orbipay.com/payouts/v1/payees/{ID_PAYEE}/payouts

Please click on a language icon above to try out the API

Request samples

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

Response samples

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

Update Disbursement

The API is used to edit a disbursement. Only disbursements in scheduled status can be edited.

path Parameters
ID_PAYOUT
required
string [ 1 .. 20 ] characters [0-9]{1,20}

The unique identifier assigned by Digital Disbursements to the disbursement.

ID_PAYEE
required
string [ 1 .. 20 ] characters [0-9]{1,20}

The unique identifier assigned by Digital Disbursements to the payee.

header Parameters
channel
required
string

The channel through which the API is invoked.

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

The unique identifier assigned by Digital Disbursements to the client.

product
required
string
Value: "orbipay_payouts"

The product identifier corresponding to the API.

timestamp
required
string

The timestamp for the moment when the API call is made, in the format, yyyy-MM-dd HH:mm:ss.SSSZ
For e.g., 2018-07-13 11:41:17.422+00:00 Please ensure that consecutive spaces are not used in the timestamp.

idempotent_request_key
required
string [ 1 .. 50 ] characters [a-zA-Z0-9]{1,50}

The unique token that clients can generate and maintain in order to identify an API request. This is used by Digital Disbursements to identify duplicate requests and retries. Please refer to the "Duplicate Requests & Retries" section for more details.

requestor
required
string [ 1 .. 50 ] characters [a-zA-Z0-9]{1,50}

The identifier for the requestor of the API.

requestor_type
required
string
Value: "payee"

Type of the requestor of the API.

X-OPAY-Headers
string

Intended for the future use.

Request Body Schema: application/json

Details of the disbursement to be updated.

payout_date
string 10 characters

The date on which Digital Disbursements will initiate the transaction to credit the Payee. It must be in ISO8601 full-date format, namely, YYYY-MM-DD.

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

Comments that can be used to recollect the operation performed on the resource object. API clients need to ensure that no sensitive information is passed in the memo. Alacriti (Orbipay) is not responsible for the security of any sensitive information that may be passed as part of the memo.

custom_fields
object

The additional information or meta-information that Digital Disbursements can accept, maintain and transmit back to the client. The custom fields need to be configured with Digital Disbursements before they can be accepted. Digital Disbursements would reject custom fields that are not pre-configured. Please contact support@billerpayments.com for more information on configuring and using custom fields.

amount
string [ 1 .. 17 ] characters ^[0-9]{1,14}(\.[0-9][0-9]?)?$

The disbursement amount upto 2 decimal places.

payout_request_date
string 10 characters

The date on which the payees credit account will be credited. It must be in ISO8601 full-date format, namely, YYYY-MM-DD. This is applicable only if the client has opted for it.

credit_account
object

Responses

200

The Disbursement with the id provided, duly updated.

400

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

401

Unauthorized

403

Forbidden

404

The requested resource doesn't exist.

422

The parameters were valid but the request failed.

500

Something went wrong at the Digital Disbursements Server

default

unexpected error

put/payees/{ID_PAYEE}/payouts/{ID_PAYOUT}
https://api.orbipay.com/payouts/v1/payees/{ID_PAYEE}/payouts/{ID_PAYOUT}

Please click on a language icon above to try out the API

Request samples

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

Response samples

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

Get Disbursement

The API is used to retrieve the details of a disbursement by id.

path Parameters
ID_PAYOUT
required
string [ 1 .. 20 ] characters [0-9]{1,20}

The unique identifier assigned by Digital Disbursements to the disbursement.

ID_PAYEE
required
string [ 1 .. 20 ] characters [0-9]{1,20}

The unique identifier assigned by Digital Disbursements to the payee.

header Parameters
channel
required
string

The channel through which the API is invoked.

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

The unique identifier assigned by Digital Disbursements to the client.

product
required
string
Value: "orbipay_payouts"

The product identifier corresponding to the API.

timestamp
required
string

The timestamp for the moment when the API call is made, in the format, yyyy-MM-dd HH:mm:ss.SSSZ
For e.g., 2018-07-13 11:41:17.422+00:00 Please ensure that consecutive spaces are not used in the timestamp.

idempotent_request_key
required
string [ 1 .. 50 ] characters [a-zA-Z0-9]{1,50}

The unique token that clients can generate and maintain in order to identify an API request. This is used by Digital Disbursements to identify duplicate requests and retries. Please refer to the "Duplicate Requests & Retries" section for more details.

requestor
required
string [ 1 .. 50 ] characters [a-zA-Z0-9]{1,50}

The identifier for the requestor of the API.

requestor_type
required
string
Value: "payee"

Type of the requestor of the API.

X-OPAY-Headers
string

Intended for the future use.

Responses

200

The Disbursement with the id provided.

400

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

401

Unauthorized

403

Forbidden

404

The requested resource doesn't exist.

422

The parameters were valid but the request failed.

500

Something went wrong at the Digital Disbursements Server

default

unexpected error

get/payees/{ID_PAYEE}/payouts/{ID_PAYOUT}
https://api.orbipay.com/payouts/v1/payees/{ID_PAYEE}/payouts/{ID_PAYOUT}

Please click on a language icon above to try out the API

Response samples

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

Delete Disbursement

The API is used to delete or cancel a disbursement. Disbursements that are under processing or have already been processed cannot be deleted.

path Parameters
ID_PAYOUT
required
string [ 1 .. 20 ] characters [0-9]{1,20}

The unique identifier assigned by Digital Disbursements to the disbursement.

ID_PAYEE
required
string [ 1 .. 20 ] characters [0-9]{1,20}

The unique identifier assigned by Digital Disbursements to the payee.

header Parameters
channel
required
string

The channel through which the API is invoked.

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

The unique identifier assigned by Digital Disbursements to the client.

product
required
string
Value: "orbipay_payouts"

The product identifier corresponding to the API.

timestamp
required
string

The timestamp for the moment when the API call is made, in the format, yyyy-MM-dd HH:mm:ss.SSSZ
For e.g., 2018-07-13 11:41:17.422+00:00 Please ensure that consecutive spaces are not used in the timestamp.

idempotent_request_key
required
string [ 1 .. 50 ] characters [a-zA-Z0-9]{1,50}

The unique token that clients can generate and maintain in order to identify an API request. This is used by Digital Disbursements to identify duplicate requests and retries. Please refer to the "Duplicate Requests & Retries" section for more details.

requestor
required
string [ 1 .. 50 ] characters [a-zA-Z0-9]{1,50}

The identifier for the requestor of the API.

requestor_type
required
string
Value: "payee"

Type of the requestor of the API.

X-OPAY-Headers
string

Intended for the future use.

Request Body Schema: application/json

Details of disbursement to be deleted/cancelled

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

Comments that can be used to recollect the operation performed on the resource object. API clients need to ensure that no sensitive information is passed in the memo. Alacriti (Orbipay) is not responsible for the security of any sensitive information that may be passed as part of the memo.

Responses

204

Returns 204 http status code with empty body.

400

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

401

Unauthorized

403

Forbidden

404

The requested resource doesn't exist.

422

The parameters were valid but the request failed.

500

Something went wrong at the Digital Disbursements Server

default

unexpected error

post/payees/{ID_PAYEE}/payouts/{ID_PAYOUT}
https://api.orbipay.com/payouts/v1/payees/{ID_PAYEE}/payouts/{ID_PAYOUT}

Please click on a language icon above to try out the API

Request samples

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

Response samples

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

Retrieve Disbursements

The API is used to retrieve the disbursements made by a payee. Disbursements can be filtered using the confirmation number, payee account, credit account, status and disbursement schedule type and by date range. If no dates are provided for retrieval, disbursements in the last six months and all the disbursements scheduled for a future date are returned. In case a disbursement has failed due to ACH returns, then the disbursement return date and the return code will be available in the response. If the requestor type is payee then the id_payee request parameter is mandatory.

query Parameters
page_size
string

The maximum number of objects returned in the query.

header Parameters
channel
required
string

The channel through which the API is invoked.

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

The unique identifier assigned by Digital Disbursements to the client.

product
required
string
Value: "orbipay_payouts"

The product identifier corresponding to the API.

timestamp
required
string

The timestamp for the moment when the API call is made, in the format, yyyy-MM-dd HH:mm:ss.SSSZ
For e.g., 2018-07-13 11:41:17.422+00:00 Please ensure that consecutive spaces are not used in the timestamp.

idempotent_request_key
required
string [ 1 .. 50 ] characters [a-zA-Z0-9]{1,50}

The unique token that clients can generate and maintain in order to identify an API request. This is used by Digital Disbursements to identify duplicate requests and retries. Please refer to the "Duplicate Requests & Retries" section for more details.

requestor
required
string [ 1 .. 50 ] characters [a-zA-Z0-9]{1,50}

The identifier for the requestor of the API.

requestor_type
required
string
Value: "payee"

Type of the requestor of the API.

X-OPAY-Headers
string

Intended for the future use.

Request Body Schema: application/x-www-form-urlencoded
id_payee
required
string [ 1 .. 20 ] characters [0-9]{1,20}

The unique identifier assigned by Digital Disbursements to the payee.

status
string
Enum: "cancelled" "processed" "processing" "returned" "scheduled" "reversed" "initiated" "declined"

The status of the disbursement.

id_credit_account
string [ 1 .. 20 ] characters [0-9]{1,20}

The unique identifier assigned by Digital Disbursements to the credit account

id_payee_account
string [ 1 .. 20 ] characters [0-9]{1,20}

The unique identifier assigned by Digital Disbursements to the payee account

confirmation_number
string [ 1 .. 30 ] characters [a-zA-Z0-9]+

The confirmation number or reference provided to the payee for the successful disbursement.

payout_schedule_type
Array of strings
Items Enum: "one_time_payout" "autopay_generated_payout"

The schedule type for the disbursement. This can take multiple values in the format key=value1&key=value2....

from_date
string

date from which filtering starts

to_date
string

date at which filtering ends

Responses

200

List of disbursements matching the criteria provided, the total results count and the urls to get the next/previous pages.

400

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

401

Unauthorized

403

Forbidden

404

The requested resource doesn't exist.

422

The parameters were valid but the request failed.

500

Something went wrong at the Digital Disbursements Server

default

unexpected error

post/payouts/lists
https://api.orbipay.com/payouts/v1/payouts/lists

Please click on a language icon above to try out the API

Response samples

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

Retrieve Disbursements Page

This API is used to paginate through the list of disbursements returned in the Retrieve Disbursements API.

query Parameters
query_id
required
string [ 1 .. 50 ] characters [a-z0-9]{1,50}

query id of the Retrieve/Search disbursements lookup.

from_index
string

The id of the object after which the next set of objects are to be retrieved.

to_index
string

The id of the object before which the previous set of objects are to be retrieved.

id_payee
string [ 1 .. 20 ] characters [0-9]{1,20}

The unique identifier assigned by Digital Disbursements to the payee.

page_size
string

The maximum number of objects returned in the query.

header Parameters
channel
required
string

The channel through which the API is invoked.

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

The unique identifier assigned by Digital Disbursements to the client.

product
required
string
Value: "orbipay_payouts"

The product identifier corresponding to the API.

timestamp
required
string

The timestamp for the moment when the API call is made, in the format, yyyy-MM-dd HH:mm:ss.SSSZ
For e.g., 2018-07-13 11:41:17.422+00:00 Please ensure that consecutive spaces are not used in the timestamp.

idempotent_request_key
required
string [ 1 .. 50 ] characters [a-zA-Z0-9]{1,50}

The unique token that clients can generate and maintain in order to identify an API request. This is used by Digital Disbursements to identify duplicate requests and retries. Please refer to the "Duplicate Requests & Retries" section for more details.

requestor
required
string [ 1 .. 50 ] characters [a-zA-Z0-9]{1,50}

The identifier for the requestor of the API.

requestor_type
required
string
Value: "payee"

Type of the requestor of the API.

X-OPAY-Headers
string

Intended for the future use.

Responses

200

List of disbursements matching the criteria provided, the total results count and the urls to get the next/previous pages.

400

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

401

Unauthorized

403

Forbidden

404

The requested resource doesn't exist.

422

The parameters were valid but the request failed.

500

Something went wrong at the Digital Disbursements Server

default

unexpected error

get/payouts/lists
https://api.orbipay.com/payouts/v1/payouts/lists

Please click on a language icon above to try out the API

Response samples

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

Simple Bank Disbursement

The API is used to make disbursements to service a payee account. Client systems can provide the unique identifier for the disbursement in their system as payout_reference. This API updates the details of the payee, payee account and the credit account if those exist in Digital Disbursements or creates them otherwise.

header Parameters
channel
required
string

The channel through which the API is invoked.

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

The unique identifier assigned by Digital Disbursements to the client.

product
required
string
Value: "orbipay_payouts"

The product identifier corresponding to the API.

timestamp
required
string

The timestamp for the moment when the API call is made, in the format, yyyy-MM-dd HH:mm:ss.SSSZ
For e.g., 2018-07-13 11:41:17.422+00:00 Please ensure that consecutive spaces are not used in the timestamp.

idempotent_request_key
required
string [ 1 .. 50 ] characters [a-zA-Z0-9]{1,50}

The unique token that clients can generate and maintain in order to identify an API request. This is used by Digital Disbursements to identify duplicate requests and retries. Please refer to the "Duplicate Requests & Retries" section for more details.

requestor
required
string [ 1 .. 50 ] characters [a-zA-Z0-9]{1,50}

The identifier for the requestor of the API.

requestor_type
required
string
Value: "payee"

Type of the requestor of the API.

X-OPAY-Headers
string

Intended for the future use.

Request Body Schema: application/json

JSON containing all the fields required to make a disbursement.

payout_reference
string [ 0 .. 50 ] characters [0-9a-zA-Z._-]{0,50}

The unique identifier in the client system for the disbursement.

payout_date
string 10 characters

The date on which Digital Disbursements will initiate the transaction to credit the Payee. It must be in ISO8601 full-date format, namely, YYYY-MM-DD.

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

Comments that can be used to recollect the operation performed on the resource object. API clients need to ensure that no sensitive information is passed in the memo. Alacriti (Orbipay) is not responsible for the security of any sensitive information that may be passed as part of the memo.

custom_fields
object

The additional information or meta-information that Digital Disbursements can accept, maintain and transmit back to the client. The custom fields need to be configured with Digital Disbursements before they can be accepted. Digital Disbursements would reject custom fields that are not pre-configured. Please contact support@billerpayments.com for more information on configuring and using custom fields.

amount
required
string [ 1 .. 17 ] characters ^[0-9]{1,14}(\.[0-9][0-9]?)?$

The disbursement amount upto 2 decimal places.

payout_request_date
string 10 characters

The date on which the payees credit account will be credited. It must be in ISO8601 full-date format, namely, YYYY-MM-DD. This is applicable only if the client has opted for it.

payee
required
object
credit_account
required
object
payee_account
required
object

Responses

201

The Disburesment object with confirmation number and id issued by Digital Disbursements.

400

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

401

Unauthorized

403

Forbidden

404

The requested resource doesn't exist.

422

The parameters were valid but the request failed.

500

Something went wrong at the Digital Disbursements Server

default

unexpected error

post/bank/payouts
https://api.orbipay.com/payouts/v1/bank/payouts

Please click on a language icon above to try out the API

Request samples

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

Response samples

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