Make Crypto Payments from Embedded Customer Wallets
This guide explains how to initiate incoming and outgoing payments for an Embedded Partner Customer’s wallet.
The following operation is identical to the one described in direct crypto payment.
Note the differenceFor the Embedded Partner use case, use
"walletId": {{wallet_lsId}}
instead of themerchantID
in the request.
To create an incoming or outgoing crypto payment to or from an Embedded Partner Customer’s wallet, send the POST /v1/pay/summary
request with the following body parameters:
{
"walletId": "a:24092328494070:G5i4XZ9:1",
"type": "OUT",
"amount": 10,
"currency": "USD",
"expiryMinutes": 30,
"reference": "test_reference_out_SQeh6J",
"returnUrl": "https://your-url-here.com/status",
"payOutDetails": {
"code": "crypto",
"currency": "USDT",
"protocol": "ERC20",
"address": "0x02ae6765C6991813a3EAa86fe63ebBCA1c9EC156",
"tag": ""
},
"customerId": "9420b652-c6e9-4bfe-9425-fc069c6bb710",
"complianceDetails": {
"requesterIpAddress": "77.71.188.87",
"partyDetails": [
{
"type": "BENEFICIARY",
"entityType": "INDIVIDUAL",
"firstName": "John",
"lastName": "Doe",
"dateOfBirth": "1984-06-30",
"relationshipType": "THIRD_PARTY",
"countryCode": "DE"
}
]
}
}
{
"walletId": "a:24092328494070:G5i4XZ9:1",
"type": "IN",
"amount": 10,
"currency": "USD",
"expiryMinutes": 30,
"reference": "test_reference_out_SQeh6J",
"returnUrl": "https://your-url-here.com/status",
"payOutDetails": {
"code": "crypto",
"currency": "USDT",
"protocol": "ERC20",
"address": "0x02ae6765C6991813a3EAa86fe63ebBCA1c9EC156",
"tag": ""
},
"customerId": "9420b652-c6e9-4bfe-9425-fc069c6bb710",
"complianceDetails": {
"requesterIpAddress": "77.71.188.87",
"partyDetails": [
{
"type": "BENEFICIARY",
"entityType": "INDIVIDUAL",
"firstName": "John",
"lastName": "Doe",
"dateOfBirth": "1984-06-30",
"relationshipType": "THIRD_PARTY",
"countryCode": "DE"
}
]
}
}
Parameter | Required | Description |
---|---|---|
walletId | ✔️ | The Wallet ID of your Embedded Partner Customer |
type | ✔️ | Specify OUT for an outgoing payment or IN for an incoming one |
In case the wallet doesn't have enough funds to cover the payment amount, and network and processing fees, the following error is returned. In this case, top up the wallet balance or contact the Solutions team.
{
"requestId": "fd3b64b97db85a7ebab39d5a1fb20867",
"errorList": [
{
"requestId": null,
"code": "MER-PAY-2012",
"parameter": "amount",
"message": "insufficient funds"
}
]
}
Updated about 7 hours ago