When you call the POST /v2/payments operation to create a payment, you must include a request body containing required payment information, such as the beneficiary identity and the purpose of the payment.
The following sections walk you through building an example payment request body.
The payment request body accepts key-value pairs in the JSON format.
To successfully create a payment, you must include all required properties depending on the type of payment you want to make:
- Always specify the
quoteIdandbeneficiaryIdentityIdproperties. - If you're making a payment on behalf of a business, include the
originatorIdentityIdproperty. - Optionally, you can include the
internalId,purposeCode,sourceOfCash,paymentMemo, andpaymentLabelsproperties.
The following tabs show sample payment request body for each type of payment:
{
"quoteId": "7ea3399c-1234-5678-8d8f-d320ea406630",
"beneficiaryIdentityId": "11111111-abcd-2222-efgh-333333333333",
"sourceOfCash": "SVGS",
"purposeCode": "OTHR",
"paymentMemo": "ORDER 2025-09-001 PAYMENT"
}{
"quoteId": "7ea3399c-1234-5678-8d8f-d320ea406630",
"originatorIdentityId": "12345678-abcd-1234-abcd-123456789123",
"beneficiaryIdentityId": "11111111-abcd-2222-efgh-333333333333",
"sourceOfCash": "SVGS",
"purposeCode": "OTHR",
"paymentMemo": "ORDER 2025-09-001 PAYMENT"
}The following sections provide more details about each property.
This property identifies the quote that you previously fetched and want to execute to send the payment.
The response from the POST /v2/quotes/quote-collection operation contains a quote object that's uniquely identified by its quoteId value. This is the value you must specify in the request body of your POST /v2/payments call.
This property identifies the beneficiary of this payment. The value of this property is the identityId of an existing beneficiary.
To get a beneficiary's identity ID, call the GET /v2/identities operation with the query parameter identityType set to BENEFICIARY. You can get the beneficiary's identityId from the response.
This property identifies the party that originates the payment. The value of this property is the identityId of an existing originator.
You only need to provide the originatorIdentityId if you are originating a payment on behalf of another business. For example, if you're paying a business or an individual on behalf of your customer, then provide the originatorIdentityId that contains identifying information about your customer. You don't need to include this property if you are the payment originator.
To get an existing originator's identityId, call the GET /v2/identities operation with the query parameter identityType set to ORIGINATOR. You can get the originator's identityId from the response.
This property indicates the source of funds for this payment. This value must be equal to one of the known values in the table below.
Expand to see the list of known values for sourceOfCash
Known values for sourceOfCash
| Value | Description |
|---|---|
ALMY | Alimony |
CASH | Cash Proceeds |
COMP | Compensation |
EMIN | Employee Income |
GIFT | Gift |
INHE | Inheritance |
INLQ | Insurance Premium Liquidation |
PACA | Paid Up Capital |
REDM | Redemption |
REPY | Retirement Policy |
REST | Real Estate Sale |
SALE | Sale Of Goods |
SEAQ | Sale Aquisition Corporation |
SELF | Self Employment Income |
SVGS | Savings |
WINS | Winnings |
An optional, sender-defined identifier for the payment (for example, an invoice number or internal reference). Maximum length is 36 characters. Use this value to correlate payments with your own records and to filter results when searching payments.
This property indicates the purpose of the payment.
Reach out to your Ripple liaison to get the value for your transaction.
An optional, transaction-specific memo forwarded with the payment for beneficiary reconciliation. Key behaviors:
- Validation rules (allowed characters, maximum length) vary by corridor. Consult the data requirements for your payout corridor.
- If omitted, Ripple may generate a memo automatically.
- The memo is not stored as PII but is persisted on the payment object and forwarded to compliance and payout partners.
- Where possible, the memo is delivered to the beneficiary's credit record, but delivery is not guaranteed for all corridors and payout partners.
An optional array of application-defined strings for grouping and categorizing payments, for example, campaign IDs, workflow tags, or batch identifiers. Maximum of 10 labels, each up to 100 characters.
Labels are mutable over the payment's lifetime and can be added or removed using PATCH /v2/payments/{paymentId}/labels.