Create Disbursement
The Create Disbursement API allows merchants to initiate a disbursement request. This process involves generating a disbursement ID that can be used to query the disbursement. Upon validation of request body information, the create disbursement request will be confirmed.
Endpoint
Request URL: https://apihit.net/api/disbursement/create
Request Headers
| Header Name | Value |
|---|---|
| Content-Type | application/json |
| Accept | application/json |
| X-Signature | The HMAC signature used for verification. |
Request Parameters
| Property | Presence | Type | Description |
|---|---|---|---|
| mid | Mandatory | String | Provided by creedo during onboarding. |
| disbursement_method | Mandatory | String | This parameter indicates the method of disbursement. For MXN_BANK_TRANSFER, the value of this parameter should be "MXN_BANK_TRANSFER". |
| merchant_disbursement_id | Mandatory | String | Unique invoice number used on the merchant side for this specific disbursement. Max length is 25 characters. Special characters "<", ">" and "&" are not allowed. |
| disbursement_amount | Mandatory | Integer | Amount of the disbursement to be made. |
| disbursement_currency | Mandatory | String | Currency of the mentioned amount. For MXN_BANK_TRANSFER, the value of this parameter should be "MXN". |
| account_details | Mandatory. | Object | Contains beneficiary bank account details required for disbursement. |
| account_details.account_number | Mandatory | String | Beneficiary bank account number where Creedo will send the disbursement amount. |
| account_details.bank_code | Mandatory | String | Bank identifier code as required by the payment rail. |
| ipn_url | Mandatory | String | URL where creedo sends Instant Disbursement Notification. It must accept POST request from creedo. |
| customer_id | Mandatory | String | Unique user ID on the merchant's side. |
| customer_name | Mandatory | String | Full name of the user on the merchant's side. |
| customer_phone_number | Mandatory | String | Registered phone number of the user on the merchant's side. |
| customer_email | Mandatory | String | Registered email address of the user on the merchant's side. |
| customer_ip | Mandatory | String | Current IP address of the user. |
| customer_type | Optional | String | Type of the user. Possible values: Trusted, FTD, MTD, YTD, Others. |
| btag | Optional | String | Btag identifier of the customer. |
| additional_info_1 | Optional | String | Additional information. |
| additional_info_2 | Optional | String | Additional information. |
Success Response Parameters
| Property | Type | Description |
|---|---|---|
| gateway_status | String | "accepted" |
| creedo_disbursement_id | String | Creedo-generated disbursement ID for this disbursement creation request. This disbursement ID can be used later to track the disbursement and in other disbursement-related APIs. |
Error Response Parameters
| Property | Type | Description |
|---|---|---|
| gateway_status | String | "rejected" |
| message | String | Error message here. |
Signature Generation
The signature (X-Signature) is generated using HMAC with SHA-256. It uses the secret_key and a secret_string as inputs. All inputs should be in string format:
secret_string = mid:merchant_disbursement_id:disbursement_method:disbursement_currency:disbursement_amount
Request Body
POST /api/disbursement/create HTTP/1.1
Host: https://apihit.net
Content-Type: application/json
Accept: application/json
X-Signature: <hash_str>
{
"mid": "CREEDO12345",
"disbursement_method": "MXN_BANK_TRANSFER",
"merchant_disbursement_id": "INV123456789",
"disbursement_amount": 5000,
"disbursement_currency": "MXN",
"account_details": {
"account_number": "63818001014xxxxxxx",
"bank_code": "MXN007" //Bank code
},
"ipn_url": "https://example.com/ipn-handler",
"customer_id": "USER12345",
"customer_name": "John Doe",
"customer_phone_number": "+88017XXXXXXXX",
"customer_email": "johndoe@example.com",
"customer_ip": "192.168.1.1",
"customer_type": "Trusted", // Optional
"btag": "BTAG001", // Optional
"additional_info_1": "Loyal customer", // Optional
"additional_info_2": "" // Optional
}
Success Response
A successful response will return a JSON object containing:
{
"gateway_status": "accepted",
"creedo_disbursement_id": "3C8HL0MHX9"
}
Error Response
In case of an error, the API will return a JSON object with error details:
{
"gateway_status": "rejected",
"message": "Unknown error occurred."
}
Notes
- The
merchant_disbursement_idmust be unique for each transaction to prevent duplication.
Supported Banks
The value sent in account_details.bank_code must be one of the Bank Code values listed below.
| Bank Code | Bank Name |
|---|---|
| MXN001 | Banco de México |
| MXN002 | Banco Nacional de Comercio Exterior |
| MXN003 | Banco Nacional de Obras y Servicios Públicos |
| MXN004 | Banco del Ejército |
| MXN005 | Nacional Financiera |
| MXN006 | BaBien |
| MXN007 | Sociedad Hipotecaria Federal |
| MXN008 | Banco Nacional de México |
| MXN009 | BBVA México |
| MXN010 | Banco Santander México |
| MXN011 | HSBC México |
| MXN012 | Banco del Bajío |
| MXN013 | Banco Inbursa |
| MXN014 | Banco Mifel |
| MXN015 | Scotiabank México |
| MXN016 | Banco Regional de Monterrey |
| MXN017 | Banco Invex |
| MXN018 | Banco Bansi |
| MXN019 | Banco Afirme |
| MXN020 | Banco Mercantil del Norte |
| MXN021 | Bank of America México |
| MXN022 | MUFG Bank México |
| MXN023 | J.P. Morgan México |
| MXN024 | Banco Monex |
| MXN025 | Ve por Más |
| MXN026 | Credit Suisse México |
| MXN027 | Banco Azteca |
| MXN028 | Banco Autofin |
| MXN029 | Barclays México |
| MXN030 | Banco Compartamos |
| MXN031 | Banco Multiva |
| MXN032 | Actinver |
| MXN033 | Banco Intercam |
| MXN034 | Banco Coppel |
| MXN035 | ABC Capital |
| MXN036 | Consubanco |
| MXN037 | Volkswagen Bank México |
| MXN038 | Cibanco |
| MXN039 | BBASE |
| MXN040 | Bankaool |
| MXN041 | Pagatodo |
| MXN042 | Banco Inmobiliario Mexicano |
| MXN043 | Banco Donde |
| MXN044 | Banco Bancrea |
| MXN045 | Banco Covalto |
| MXN046 | ICBC México |
| MXN047 | Banco Sabadell México |
| MXN048 | Shinhan Bank México |
| MXN049 | Mizuho Bank México |
| MXN050 | Bank of China México |
| MXN051 | Banco S3 |
| MXN052 | Monex Casa de Bolsa |
| MXN053 | GBM |
| MXN054 | Masari |
| MXN055 | Value |
| MXN056 | Vector |
| MXN057 | Finamex |
| MXN058 | Valmex |
| MXN059 | Profuturo |
| MXN060 | Intercam Casa de Bolsa |
| MXN061 | CI Casa de Bolsa |
| MXN062 | Fincomún |
| MXN063 | Nu México |
| MXN064 | STP |
| MXN065 | Credicapital |
| MXN066 | Kuspit |
| MXN067 | Unagra |
| MXN068 | ASP Integra OPC |
| MXN069 | Alternativos |
| MXN070 | Libertad |
| MXN071 | Caja Popular Mexicana |
| MXN072 | Cristóbal Colón |
| MXN073 | Caja de Ahorro de los Telefonistas |
| MXN074 | Transfer |
| MXN075 | Fondo (FIRA) |
| MXN076 | Invercap |
| MXN077 | Crediclub |
| MXN078 | Fompred |
| MXN079 | Tesored |
| MXN080 | Arcus |
| MXN081 | Nvio |
| MXN082 | Mercado Pago W |
| MXN083 | Cuenca |
| MXN084 | CLS |
| MXN085 | Indeval |
| MXN086 | CoDi Valida |
| MXN087 | Akala |
| MXN088 | Reforma |
| MXN089 | Tactiv Casa de Bolsa |
| MXN090 | Finterra |
| MXN091 | MexPago |
| MXN092 | albo |
| MXN093 | Fondeadora |
| MXN094 | Transfer |
| MXN095 | Spin by OXXO |
| MXN096 | Cartera Digital |
| MXN097 | Peibo |
| MXN098 | FINCO PAY |
| MXN099 | Evercore |
| MXN100 | Mexican-only Entity |
| MXN101 | CITI MEXICO |
| MXN102 | Banco del Ahorro Nacional y Servicios Financieros |
| MXN103 | Multiva Casa de Bolsa |