Integrate our payment aggregator APIs into your application seamlessly.
All API requests should be made to the following Base URL:
https://bickapay.com
You must include your API Key in the headers of all requests. You can find your API Keys in the API Configuration section.
X-API-KEY: {YOUR_PUBLIC_KEY}X-API-TIMESTAMP: {UNIX_TIMESTAMP}X-API-SIGNATURE: hash_hmac('sha256', payload + timestamp, secret_key)
Use this endpoint to generate a payment link/order for your customers.
POST https://bickapay.com/api/payment/create
| Field | Type | Required | Description |
|---|---|---|---|
amount | Float | Yes | The amount to be collected (e.g. 100.00) |
order_id | String | Yes | Your system's unique order ID |
method | String | No | Payment method (e.g. 100, 101, default is other) |
customer_name | String | No | Customer's full name |
customer_email | String | No | Customer's email address |
customer_phone | String | No | Customer's phone number |
return_url | String | No | URL to redirect the user after payment |
Response: Returns the payment_url to redirect your customer.
Use this endpoint to manually check the status of a payment.
GET https://bickapay.com/api/payment/status
| Field | Type | Required | Description |
|---|---|---|---|
order_id | String | Yes | Your system's order ID (or our transaction_id) |
Use this endpoint to disburse funds to a user's bank account or wallet.
POST https://bickapay.com/api/payout/create
| Field | Type | Required | Description |
|---|---|---|---|
amount | Float | Yes | The amount to be disbursed |
payee_name | String | Yes | Recipient's Name |
payee_account | String | No | Recipient's Bank Account No / Wallet ID |
mode | String | No | Payout mode (e.g. bank_transfer) |
bank_code | String | No | Bank Code (e.g. ABB, required for some gateways) |
reference | String | No | Your internal reference ID |
When creating a Payin or Payout, you can pass one of the following unified method codes in the method or mode parameter. This will automatically route the transaction to the specific gateway and payment channel.
| Code | Category | Payment Method / Gateway |
|---|---|---|
100 | Bangladesh Version 1 | bKash |
101 | Bangladesh Version 1 | Nagad |
102 | Bangladesh Version 1 | Rocket |
We will send a POST request to your configured Webhook URL when a transaction succeeds or fails. You can set the Webhook URL in your API Keys section.
Event payload example:
{
"event": "payment.success",
"transaction_id": "txn_xxxxxx",
"order_id": "your_order_id_123",
"amount": 100.00,
"status": "success",
"method": "100",
"timestamp": "2024-01-01T12:00:00Z"
}
Always secure your webhook endpoint and verify the transaction status if needed.