Withdrawal interface — Cambodia USD

Use the merchant ID and merchant API key issued by EOOPAY. Each product must be enabled for your merchant account before use. Submit the product number assigned to you.

These products support payments in Cambodia and are denominated and accounted for in USD, with at most two decimal places. 100.00 means USD 100, not KHR and not cents.

Per-order limits depend on the product configuration enabled for your merchant account and request validation.

Product numbers

payment_codeProduct namePayment method
12727USD-PAYOUT-ACLACL
12728USD-PAYOUT-WINGWING
12729USD-PAYOUT-ABAABA
12730USD-PAYOUT-BAKONGBAKONG

POST https://{request-address}/Payment_AddOrder
Content-Type: application/x-www-form-urlencoded

Request parameters

ParameterRequiredTypeDescription
mchidYesstringEOOPAY merchant ID
applydateYesstringyyyy-MM-dd HH:mm:ss
out_trade_noYesstringUnique merchant order number; do not submit duplicate orders
payment_codeYesstringEnabled withdrawal product number from the table above
moneyYesstringAmount in USD, e.g. 50.00
banknameYesstringMatch the selected product: ACL / WING / ABA / BAKONG
accountnumberYesstringValid recipient account number; send as a string to preserve leading zeros
accountnameYesstringRecipient account holder name
useridYesstringEnd-user identifier in the merchant system
notifyurlYesstringMerchant URL for asynchronous result notifications
pay_md5signYesstringCalculate using the existing EOOPAY merchant signing rules

Request example

This is a parameter template, not a live order. Replace the merchant ID, account details, order number and callback URLs, then calculate the signature with your merchant key. Send the actual request as form data.

{
  "mchid": "YOUR_MERCHANT_ID",
  "applydate": "2026-10-20 12:00:00",
  "out_trade_no": "USDPAYOUT_UNIQUE_ORDER",
  "payment_code": "12729",
  "money": "50.00",
  "bankname": "ABA",
  "accountnumber": "YOUR_RECIPIENT_ACCOUNT",
  "accountname": "YOUR_RECIPIENT_NAME",
  "userid": "YOUR_USER_ID",
  "notifyurl": "https://merchant.example/payment/notify",
  "pay_md5sign": "RECALCULATE_WITH_YOUR_MERCHANT_KEY"
}

Response parameters and example

ParameterRequiredTypeDescription
successYesbooleantrue means the request was accepted, not that the withdrawal completed
errCodeYesstring0 indicates request acceptance; inspect errMsg for errors
errMsgYesstringAcceptance or error message; obtain final status from a callback or query
{
  "success": true,
  "errCode": "0",
  "errMsg": "Accepted; awaiting payment result"
}

If the request times out or the final result is unavailable, query the original order before any retry to avoid duplicate withdrawals. Match the original merchant order number and do not treat acceptance as settlement.

Signing, queries and callbacks

Encryption · Deposit inquiry · Withdrawal inquiry · Deposit callback · Withdrawal callback