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 COP_BANK_TRANSFER, the value of this parameter should be "COP_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 COP_BANK_TRANSFER, the value of this parameter should be "COP". |
| 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 code from the Supported Banks list (e.g., COP004). |
| account_details.document_number | Mandatory | String | Identity document number of the account holder. |
| account_details.document_type | Mandatory | String | Document type from the Supported Document Types list (e.g., COP_CC). |
| 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": "COP_BANK_TRANSFER",
"merchant_disbursement_id": "INV123456789",
"disbursement_amount": 150000,
"disbursement_currency": "COP",
"account_details": {
"account_number": "12345678901",
"bank_code": "COP004", //Bank code
"document_number": "1020304050",
"document_type": "COP_CC"
},
"ipn_url": "https://example.com/ipn-handler",
"customer_id": "USER12345",
"customer_name": "John Doe",
"customer_phone_number": "+573XXXXXXXXX",
"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. - All
account_detailsfields are mandatory. A request missing one, or sending adocument_typeoutside the Supported Document Types list, is rejected. - There is no "other bank" fallback code. A bank that is not in the Supported Banks list cannot receive a disbursement.
COP_BREB, the other COP disbursement method, takes nobank_codeat all.
Supported Banks
The value sent in account_details.bank_code must be one of the Bank Code values listed below.
| Bank Code | Bank Name |
|---|---|
| COP001 | Banco de Bogotá |
| COP002 | Banco Popular |
| COP003 | Itaú |
| COP004 | Bancolombia |
| COP005 | Citibank |
| COP006 | Banco GNB Sudameris |
| COP007 | BBVA Colombia |
| COP008 | Scotiabank Colpatria |
| COP009 | Banco de Occidente |
| COP010 | Bancóldex |
| COP011 | Banco Caja Social (BCSC) |
| COP012 | Banco Agrario |
| COP013 | Banco Mundo Mujer |
| COP014 | Banco Davivienda |
| COP015 | Banco AV Villas |
| COP016 | Banco W |
| COP017 | Banco de las Microfinanzas Bancamía |
| COP018 | Banco Pichincha |
| COP019 | Bancoomeva |
| COP020 | Banco Falabella |
| COP021 | Banco Finandina |
| COP022 | Banco Santander de Negocios |
| COP023 | Banco Cooperativo Coopcentral |
| COP024 | Banco Serfinanza |
| COP025 | Financiera Juriscoop |
| COP026 | Cootrafa Cooperativa Financiera |
| COP027 | Confiar Cooperativa Financiera |
| COP028 | Coltefinanciera |
| COP029 | Nequi |
| COP030 | Daviplata |
| COP031 | Mibanco |
| COP032 | Lulo Bank |
| COP033 | Banco JP Morgan Colombia |
| COP034 | Dale |
| COP035 | Asopagos |
| COP036 | Cooperativa Financiera de Antioquia |
| COP037 | JFK Cooperativa Financiera |
| COP038 | Coofinep Cooperativa Financiera |
| COP039 | Banco Unión |
| COP040 | Ban100 |
| COP041 | PiBank |
| COP042 | Iris |
| COP043 | Movii |
| COP044 | Ding Tecnipagos |
| COP045 | Powwi |
| COP046 | Ualá |
| COP047 | Banco BTG Pactual |
| COP048 | Bold CF |
| COP049 | Nu Colombia |
| COP050 | RappiPay |
| COP051 | Coink |
| COP052 | Santander Consumer |
| COP053 | Global66 |
| COP054 | Alianza Fiduciaria |
| COP055 | Crezcamos |
| COP056 | Banca de Inversión Bancolombia |
| COP057 | Banco Credifinanciera |
| COP058 | Compañía de Financiamiento Tuya |
| COP059 | Corporación Financiera Colombiana |
| COP060 | Credifamilia |
| COP061 | Financiera de Desarrollo Nacional |
| COP062 | Findeter |
| COP063 | Fogafin |
| COP064 | Fondo Nacional de Garantías |
| COP065 | Fondo Nacional del Ahorro |
| COP066 | Finagro |
| COP067 | GM Financial Colombia |
| COP068 | Instituto Crédito Exterior |
| COP069 | Banco Multibank |
Supported Document Types
| Document Type | Description |
|---|---|
| COP_CC | Cédula de Ciudadanía (CC) |
| COP_TI | Tarjeta de Identidad (TI) |
| COP_CE | Cédula de Extranjería (CE) |
| COP_PASSP | Pasaporte (Passport) |
| COP_NIT | Número de Identificación Tributaria (NIT) |