Lewati ke konten utama

Create E-wallet Disbursement

Transfer funds from your wallet to an e-wallet account.

Endpoint​

POST /v1/disbursements

Request​

Body​

FieldTypeRequiredDescription
idempotency_keystringYesUnique key to prevent duplicates
channelstringYesMust be EWALLET
ewallet_providerstringYesE-wallet code (e.g., GOPAY, OVO) — see E-wallet Codes
ewallet_phonestringYesDestination e-wallet phone number (normalized to 62xxxxxxxxx)
amountintegerYesWhole-Rupiah transfer amount (not including fee)
notify_urlstringNoWebhook URL for disbursement status updates

Example​

cURL
curl -X POST https://api.flypay.asia/v1/disbursements \
-H "X-API-Key: your-api-key" \
-H "Content-Type: application/json" \
-d '{
"idempotency_key": "disb-ewallet-001",
"channel": "EWALLET",
"ewallet_provider": "GOPAY",
"ewallet_phone": "08123456789",
"amount": 100000
}'

Response​

HTTP 201 Created

{
"success": true,
"data": {
"id": "uuid",
"ref_code": "DSB-260601110000-E5F6",
"idempotency_key": "disb-ewallet-001",
"channel": "EWALLET",
"bank_id": null,
"account_number": null,
"account_name": null,
"ewallet_provider": "GOPAY",
"ewallet_phone": "6281234567890",
"request_amount": 100000,
"fee": 0,
"final_amount": 100000,
"total_debit": 100000,
"source": "API",
"status": "PENDING",
"requested_at": "2026-06-01T11:00:00Z",
"created_at": "2026-06-01T11:00:00Z"
}
}

Error Codes​

CodeHTTPDescription
NOT_WALLET_MERCHANT403Account is not WALLET settlement type
MISSING_EWALLET_INFO400ewallet_provider or ewallet_phone is missing
INSUFFICIENT_BALANCE422Wallet balance < amount + fee
AMOUNT_EXCEEDS_LIMIT422Exceeds per-transaction limit
DAILY_LIMIT_EXCEEDED422Exceeds daily limit
DUPLICATE_IDEMPOTENCY_KEY409A disbursement with this key already exists