Overview:
UPay (Bangladesh) allows users to receive payments and send payouts directly to customers’ wallet IDs.
Payin
Request body:
| Field | Type | Requirement Level | Description |
|---|---|---|---|
amount | number | Required | Amount in BDT |
currency | string | Required | "BDT" |
method_code | string | Required | "UPAY_BDT" |
reference | string | Required | Merchant reference |
description | string | Optional | Description for this payment |
metadata | object | Optional | Merchant metadata, returned in notifications |
webhook_url | string | Optional | HTTPS URL for payout notifications |
customer.first_name | string | Optional | Customer's first name |
customer.last_name | string | Optional | Customer's last name |
customer.email | string | Optional | Customer's email address |
customer.phone | string | Optional | Customer's phone number |
customer.address | string | Optional | Customer's address |
customer.city | string | Optional | Customer's city |
customer.state | string | Optional | Customer's state |
customer.zip | string | Optional | Customer's zipcode |
customer.country | string | Required | Customer's country (iso2) |
ip_address | string | Optional | Sever's IP Address |
Sample Payload:*
{
"amount": 100,
"currency": "BDT",
"method_code": "UPAY_BDT",
"reference": "INV-2025-001",
"metadata": {
"internal_id": "user1234"
},
"webhook_url": "https://yourwebsite.com/webhook",
"callback_url": "https://yourwebsite.com/callback",
"customer": {
"first_name": "Firstname",
"last_name": "lastname",
"address": "No 2, Green Median Str",
"phone": "+9995676898076",
"email": "[email protected]",
"country": "BD"
},
"ip_address": "0.0.0.0"
}
Payout
Request body:
| Field | Type | Requirement Level | Description |
|---|---|---|---|
amount | number | Required | Amount in BDT |
currency | string | Required | "BDT" |
method_code | string | Required | "UPAY_BDT" |
recipient.wallet_uid | string | Required | Recipient’s 11-digit upay_bdt wallet number |
recipient.full_name | string | Required | Recipient’s full name |
reference | string | Required | Merchant reference |
country | string | Required | Customer's country (iso2) |
metadata | object | Optional | Merchant metadata. This will be sent back through when receiving notifications |
webhook_url | string | Optional | An HTTPS URL. Notifications will be sent to this URL. |
sender.full_name | string | Optional | Sender's full name |
sender.address | string | Optional | Sender's address |
sender.phone | string | Optional | Sender's phone number |
Sample Payload:
{
"amount": 100,
"currency": "BDT",
"method_code": "UPAY_BDT",
"recipient": {
"wallet_uid": "01712345678",
"full_name": "Firstname Surname"
},
"country":"BD",
"reference": "INV-2025-001",
"metadata": {
"internal_id": "user1234"
},
"webhook_url": "https://yourwebsite.com/webhook",
"sender": {
"full_name": "Firstname Surname",
"address": "No 2, Green Median Str"
}
}