POST /v1/stable/collect/payment-links/permanent/prepay-whitelistpaymentLinkType must be permanent.create-permanent-prepay first. clientId is the session id that page sends; the response echoes it. currency, network, and amount must equal that call. orderId is the paymentId from POST /v1/stable/collect/create-payment-link. walletId must equal that link's recipientAccountId.PROCESSING, with whiteListStatus init.COLLECT_ORDER_UPDATED is sent with orderStatus PROCESSING and whiteListStatus init. After the whitelist is approved and the funds are credited, COLLECT_ORDER_UPDATED is sent with orderStatus SUCCESS.whiteListStatus is init (never submitted) or rejected (resubmit).transactionId from COLLECT_ORDER_UPDATED. Pass that value as {transactionId} on the submit call.POST /v1/wallet/deposit-whitelist/transactions/{transactionId}/submit with the payer details. Do not send the source address, network, memo, or transaction hash. Those come from the on-chain payment.whiteListStatus becomes pending while the review runs.rejected, read failMessage and submit again. The order stays PROCESSING and the funds stay unavailable.PROCESSING until that sweep finishes. COLLECT_ORDER_UPDATED with orderStatus SUCCESS is the completion signal.| Link type | Endpoint | When |
|---|---|---|
onetime | POST /v1/stable/collect/payment-links/onetime/prepay-whitelist | After POST /v1/stable/collect/create-payment-link |
permanent | POST /v1/stable/collect/payment-links/permanent/prepay-whitelist | After the hosted payment page has called create-permanent-prepay |
paymentLinkType. A mismatch returns ODR00000041.POST /v1/wallet/deposit-whitelist/wallets/{walletId}/profile.travelRule uses the same payer fields as Address Book / submit:correspondentType | Required inside travelRule |
|---|---|
ENTITY | fullName, countryCode, companyAddress |
INDIVIDUAL | firstName, lastName, birthday (yyyy-MM-dd), countryCode, residentialAddress |
walletAddress, network, memo, symbol, or txHash inside travelRule. Do not send countryInfo.status 500.code | When |
|---|---|
ODR00000041 | paymentLinkType is not permanent; walletId is not the link's recipient account; clientId, currency, network, or amount is missing; the order is not owned by the caller |
10000103 | A travelRule value is not accepted. An unrecognised countryCode returns this code. |
amount is a decimal string. A JSON number is accepted. It must equal the amount on that create-permanent-prepay call.{
"orderId": "PAY2025101507677652572380042240",
"walletId": 10086,
"clientId": "client-session-uuid",
"currency": "USDT",
"network": "ETH",
"amount": "100.00",
"travelRule": {
"walletLabel": "Payport Limited",
"addressType": "STANDARD",
"walletType": "VASP",
"provider": "Binance",
"correspondentType": "ENTITY",
"fullName": "Payport Limited",
"countryCode": "SG",
"companyAddress": "Tampines Blk67, Singapore"
}
}data:{
"prepayId": 90001,
"bizNo": "90001",
"saved": true
}