Deposits

Create Deposit

Start a balance deposit for an account.

Modified at Apr 28, 2026, 05:38 AM UTC

POST/api/depositdeposit.create

Use this request after the payer chooses a provider and deposit amount. Show the payer the payment instruction fields returned in the response.

Display amounts.total_pay as the payable amount.

Request

curl "https://cekceir.online/api/deposit" \
  -X POST \
  -H "Authorization: Bearer <api_key>" \
  -H "Content-Type: application/json" \
  -d '{
  "amount": 50000,
  "provider_code": "gopay"
}'

Request Fields

FieldTypeRequiredDescription
Authorizationheader stringYesBearer token header in the format Bearer <api_key>.
amountnumberYesDeposit amount before fee and unique matching amount.
provider_codestringYesProvider code from GET /api/deposit/provider.

Success Response

{  "id": 123,  "amounts": {    "total_pay": 50987,    "deposit_amount": 50000  },  "qr_string": "000201...",  "qr_url": "https://....",  "provider_code": "gopay",  "status": "pending",  "fee_amount": 0,  "channel": "qris",  "provider_ref": null,  "confirmed_at": null,  "created_at": "2026-04-26T00:00:00.000Z",  "updated_at": "2026-04-26T00:00:00.000Z",  "expires_at": "2026-04-26T00:15:00.000Z"}

Response Fields

FieldTypeRequiredDescription
idnumberYesDeposit ID.
amounts.total_paynumberYesFinal amount the payer must pay.
amounts.deposit_amountnumberYesOriginal deposit amount before fee and matching adjustments.
qr_stringstring or nullNoQR payload for QRIS providers.
qr_urlstring or nullNoQR image URL or data URL for QRIS providers.
account_numberstring or nullNoDestination account number for bank transfer providers.
account_holder_namestring or nullNoDestination account holder name for bank transfer providers.
provider_codestringYesProvider code used by the deposit.
statusstringYesDeposit status, initially pending.
fee_amountnumberYesFee charged for this deposit.
channelstringYesPayment channel used by the provider.
provider_refstring or nullNoProvider reference when available.
confirmed_atISO datetime or nullNoTime the deposit was confirmed.
created_atISO datetimeYesDeposit creation time.
updated_atISO datetimeYesLast update time.
expires_atISO datetime or nullNoPayment expiration time when configured.

For QRIS providers, the response can include qr_string and qr_url. For bank transfer providers, the response can include account_number and account_holder_name.