Skip to content

Payments Direct API (0.0.1)

Use the Payments Direct API to get quotes, create and manage payments, and manage originator and beneficiary identities.

API environments

The Payments Direct API offers the following environments:

Environment
Base URLDescription
Testhttps://api.test.ripple.comTest environment with simulated currency.
Productionhttps://api.ripple.comProduction environment

API authentication

All Ripple Payments Direct API operations require a Bearer access token specific to the environment you're using. Ripple provides a secure model for authentication and authorization by providing access tokens scoped for a set of credentials.

Generate client ID and client secret

You will need your client ID and client secret to obtain an access token.

If you do not already have your client ID and client secret, do the following:

  1. Log into the Ripple Payments UI.
  2. In the left navigation menu, click Settings.
  3. Under Administration, click API Credentials.
  4. In the dropdown list next to the page title, select the access environment. For example, to provision credentials for the test environment, select Test from the dropdown list.
  5. In the upper right corner of the page, click New Credential.
  6. Click Save and Generate Key.

Caution: The client secret is displayed only once when you are creating new credentials. You cannot retrieve the secret after exiting this page. Copy and store the client secret securely and share it with authorized individuals in accordance with your organization's security policy.

You can now use the client ID and client secret to generate access tokens using the Request an access token operation.

Request an access token

To get an access token, use the Request an access token operation with your client_id and client_secret. The response contains a token in the access_token field.

We recommend rotating your API credentials at regular intervals according to your organization's security policy.

Note: Authentication tokens are not a fixed length and can vary, avoid validating tokens based on character length.

Overview
License

Apache 2.0

Languages
Servers
Mock server

https://docs.ripple.com/_mock/products/payments-direct-2/api-docs/payments-direct-api/examples/payments-direct-external-openapi/

Test environment with simulated currency

https://api.test.ripple.com/

Production environment

https://api.ripple.com/

Authentication

Use these API operations to manage your authentication tokens.

OperationMethodDescription
Request an access tokenPOSTRequest an access token for authentication with Ripple APIs.
Test access tokenGETTest if an access token can be used for authentication.
Operations

Identities

Use these API operations to manage your identities.

OperationMethodDescription
Create an identityPOSTCreate a new identity.
List identitiesGETGet a list of existing identities.
Get an identity by IDGETGet an identity by its unique ID.
Deactivate an identityDELETEDeactivate an identity.
Operations

Create a new identity

Request

Create a new identity.

Security
Bearer
Bodyapplication/jsonrequired
piiDataobjectrequired

PII data in JSON format.

You must use the correct piiData schema for the type of identity you want to create.

Note: Reach out to your Ripple liaison to get this schema.

property name*anyadditional property
identityTypestringrequired

The type of the identity

Enum ValueDescription
BENEFICIARY

Identity associated with the beneficiary.

ORIGINATOR

Identity associated with the party originating the payment.

Example: "BENEFICIARY"
nickNamestring

The nickname for the identity provided at the time of identity creation

Example: "MyCompany"
useCaseTypestringrequired

The use case type for the identity

Enum ValueDescription
INDIVIDUAL

Identity associated with an individual

BUSINESS

Identity associated with an institution or business

Example: "BUSINESS"
curl -i -X POST \
  https://docs.ripple.com/_mock/products/payments-direct-2/api-docs/payments-direct-api/examples/payments-direct-external-openapi/v2/identities \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "piiData": {},
    "identityType": "BENEFICIARY",
    "nickName": "MyCompany",
    "useCaseType": "BUSINESS"
  }'

Responses

successful operation

Bodyapplication/json
identityIdstringrequired

The unique ID of the identity

Example: "2f4ac57f-c5ba-4051-b51f-b3565778717b"
versionintegerrequired

The version number of the identity

Example: 2
Response
application/json
{ "identityId": "2f4ac57f-c5ba-4051-b51f-b3565778717b", "version": 2 }

Get a list of identities

Request

Get a list of identities that match the query parameters.

Note: Depending on the number of identities in your account, not all of them may be returned even if they match your query parameters.

Security
Bearer
Query
identityTypestring

The type of identities you want to retrieve

Enum ValueDescription
BENEFICIARY

Identity associated with the beneficiary.

ORIGINATOR

Identity associated with the party originating the payment.

Example: identityType=BENEFICIARY
nickNamestring

The nickname for the identity provided at the time of identity creation

Example: nickName=Successful Beneficiary
curl -i -X GET \
  'https://docs.ripple.com/_mock/products/payments-direct-2/api-docs/payments-direct-api/examples/payments-direct-external-openapi/v2/identities?identityType=BENEFICIARY&nickName=Successful+Beneficiary' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Responses

Requested identity info in JSON format

Bodyapplication/json
dataArray of objects

The list of the identities that match the query parameters

identityIdstringrequired

The unique ID of the identity

Example: "2f4ac57f-c5ba-4051-b51f-b3565778717b"
nickNamestringrequired

The nickname of the identity provided at the time of identity creation.

Example: "MyCompany"
createdAtstring(date-time)required

The time at which the identity was created

Example: "2023-11-02T18:26:00.000Z"
identityTypestringrequired

The type of the identity

Enum ValueDescription
BENEFICIARY

Identity associated with the beneficiary.

ORIGINATOR

Identity associated with the party originating the payment.

Example: "BENEFICIARY"
useCaseTypestringrequired

The use case type for the identity

Enum ValueDescription
INDIVIDUAL

Identity associated with an individual

BUSINESS

Identity associated with an institution or business

Example: "BUSINESS"
Response
application/json
{ "data": [ {} ] }

Get an identity by ID

Request

Get an identity by its unique ID

Security
Bearer
Path
identity-idstringrequired

The ID of the identity to get.

Example: 146f3c51-c313-47ce-b6f2-691c5a238b3e
Query
versioninteger>= 1

Version of the identity you want to retrieve.

Note: If you don't specify a version, the latest version of the identity is returned.

Example: version=2
curl -i -X GET \
  'https://docs.ripple.com/_mock/products/payments-direct-2/api-docs/payments-direct-api/examples/payments-direct-external-openapi/v2/identities/146f3c51-c313-47ce-b6f2-691c5a238b3e?version=2' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Responses

Requested identity info in JSON format

Bodyapplication/json
identityIdstringrequired

The unique ID of the identity

Example: "2f4ac57f-c5ba-4051-b51f-b3565778717b"
identityTypestringrequired

The type of the identity

Enum ValueDescription
BENEFICIARY

Identity associated with the beneficiary.

ORIGINATOR

Identity associated with the party originating the payment.

Example: "BENEFICIARY"
createdAtstring(date-time)required

The time at which the identity was created

Example: "2023-11-02T18:26:00.000Z"
identityStatestringrequired

The state of the identity

Enum ValueDescription
ACTIVE

The identity requested exists and is active.

BLOCKED

The identity requested exists, but is blocked.

DEACTIVATED

The identity requested has been deactivated.

Example: "ACTIVE"
nickNamestring

The nickname for the identity provided at the time of identity creation

Example: "MyCompany"
piiDataobjectrequired

PII data in JSON format

property name*anyadditional property
versionintegerrequired

The version number of the identity

Example: 2
useCaseTypestringrequired

The use case type for the identity

Enum ValueDescription
INDIVIDUAL

Identity associated with an individual

BUSINESS

Identity associated with an institution or business

Example: "BUSINESS"
Response
application/json
{ "identityId": "2f4ac57f-c5ba-4051-b51f-b3565778717b", "identityType": "BENEFICIARY", "createdAt": "2023-11-02T18:26:00.000Z", "identityState": "ACTIVE", "nickName": "MyCompany", "piiData": {}, "version": 2, "useCaseType": "BUSINESS" }

Delete an identity

Request

Delete an identity

Security
Bearer
Path
identity-idstringrequired

Unique UUID string that maps to the identity to be deleted.

Example: 146f3c51-c313-47ce-b6f2-691c5a238b3e
curl -i -X DELETE \
  https://docs.ripple.com/_mock/products/payments-direct-2/api-docs/payments-direct-api/examples/payments-direct-external-openapi/v2/identities/146f3c51-c313-47ce-b6f2-691c5a238b3e \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Responses

The identity was deleted successfully

Response
No content

Payments

Use these API operations to manage your payments.

OperationMethodDescription
Search paymentsPOSTSearch for payments based on filtering criteria.
Create a paymentPOSTCreate a payment by accepting a quote.
Get payment by payment IDGETGet a specific payment by payment ID.
Operations

Quotes

Use these API operations to manage your quotes.

OperationMethodDescription
Create quote collectionPOSTCreate a collection of quotes.
Get quote collectionGETGet a quote collection by ID.
Get a quoteGETGet a specific quote by ID.
Operations

Balances

Use this API operation to view your balances.

OperationMethodDescription
Get balancesGETView your existing
balances
Operations