v1

latestOpenAPI 3.0.02026-07-265892227.1 KB
Delegation

Create a delegated Transfer

This endpoint allows you to make a transfer (PAY-OUT) using your own provider credentials.

post/delegated/transfers

Headers

ApiKeystring required

Your api key. To create a key, please get into our dashboard. If you don't have access to it, please reach the Support team.

MerchantIdstring required

Your merchant ID. This information is available in our dashboard. If you don't have access to it, please reach the Support team.

Environment'live' | 'sandbox' required

Allow you to choose between the sandbox mode to perform some tests or the live mode for real world transactions.

Request body

referencestring required

A reference provided by the client during the creation of this Transfer

amountnumber required

Amount intended to be sent to the recipient. A positive integer representing how much to charge in the smallest currency unit (e.g., 100 cents to charge €1.00 or 100 to charge FCFA100, a zero-decimal currency).

currencystring required

Three-letter ISO currency code.

descriptionstring required

An arbitrary string attached to the Transfer. Mostly useful for displaying to user.

overrideBusinessNamestring

This field is mandatory for aggregators and allows you to override the business name displayed to the end users. This is useful if you don't want your clients to see "Hub2" as the target of their payment but your company name instead.

overrideBusinessIdstring

This field is mandatory for merchants that have the corresponding setting enabled, It allows to send a custom name

aggregatedMerchantIdstring required

Aggregated merchant id

Example request

{
  "reference": "ref_2020_11_10_001",
  "amount": 100,
  "currency": "XOF",
  "destination": {
    "type": "mobile_money",
    "country": "CI",
    "provider": "orange"
  },
  "overrideBusinessName": "MyBusiness",
  "overrideBusinessId": "e9bb247c-6e3f-4a39-a539-78e3bf115994",
  "transferInformation": {
    "recipient_name_hashmac": "hash_xyz_789",
    "recipient_phone_hashmac": "a3f2c9e1b8d7...",
    "customer_id_hashmac": "hash_cust_abc",
    "transaction_purpose": "SALARY"
  }
}

Response

idstring required

Unique identifier for the Transfer

merchantIdstring required

Identifier of the merchant owning this Transfer

createdAtstring required

Datetime in UTC timezone at which this object was created. Follows the Datetime ISO.

updatedAtstring required

Datetime in UTC timezone at which this object was updated for the last time . Follows the Datetime ISO.

referencestring required

A reference provided by the client during the creation of this Transfer

descriptionstring required

An arbitrary string attached to the Transfer. Mostly useful for displaying to user.

status'created' | 'successful' | 'pending' | 'failed' required

The current status of this Transfer

amountnumber required

Amount intended to be sent to the recipient. A positive integer representing how much to charge in the smallest currency unit (e.g., 100 cents to charge €1.00 or 100 to charge FCFA100, a zero-decimal currency).

currencystring required

Three-letter ISO currency code.

mode'live' | 'sandbox' required

Mode in which this transfer exists. The sandbox mode can be used during the integration phase and is available as soon as the merchant account is created. No real transactions are made in this mode. The live mode has to be used to make real transactions.

overrideBusinessNamestring

override business name for aggregator

overrideBusinessIdstring

override business id for merchant

isIrtboolean required

indicate if the transfer was international

providerReferencestring required

provider reference that identify this transfer

gatewayIdstring required

The gateway ID used for this transfer

isDelegatedboolean required

Indicates if the transfer is delegated

aggregatedMerchantIdstring required

Aggregated merchant id

providerDataobject

Provider informations

subMerchantIdstring

Submerchant ID

balanceBeforenumber

Computed balance before the transfer is executed.

balanceAfternumber

Real available balance right after the transfer is executed.

Example response

{
  "id": "tr_z1urYtVFgEebtcj8fxp4v",
  "createdAt": "2020-10-15T12:09:49.355Z",
  "updatedAt": "2020-10-15T12:16:26.128Z",
  "reference": "ref_2020_11_10_001",
  "status": "successful",
  "amount": 100,
  "currency": "XOF",
  "mode": "live",
  "destination": {
    "type": "mobile_money",
    "country": "CI",
    "provider": "orange"
  },
  "fees": [
    {
      "id": "lAe5HnFpvOjwdT9vSIgPA",
      "amount": 5,
      "currency": "XOF"
    }
  ],
  "subMerchantId": "submerchant_123",
  "transferInformation": {
    "recipient_name_hashmac": "hash_xyz_789",
    "recipient_phone_hashmac": "a3f2c9e1b8d7...",
    "customer_id_hashmac": "hash_cust_abc",
    "transaction_purpose": "SALARY"
  }
}