Skip to content

RippleNet Server API (4.0.0)

The RippleNet Server API provides you the ability to develop custom applications to manage or interact with your RippleNet instance.

Check out the best practices and tutorials.

Authentication

All API operations require a bearer access token for your target environment.<br>Learn how to request the access token.

API environments

The RippleNet Server API creates a dynamic [domainPrefix] that consists of {tenant}.{environment}.

Note: This example uses aperture as the tenant. Your tenant ID is different.

EnvironmentDomaing PrefixDomainBase URL
Testaperture.testripplexcurrent.comhttps://aperture.test.ripplexcurrent.com
UATaperture.uatripplexcurrent.comhttps://aperture.uat.ripplexcurrent.com
Productionaperture.prodripplexcurrent.comhttps://aperture.prod.ripplexcurrent.com
Languages
Servers
Mock server

https://docs.ripple.com/_mock/products/payments-odl/api-docs/ripplenet/reference/openapi/

https://[domainPrefix].ripplexcurrent.com/v4/

Auditing

Use these operations to audit your accounts.

OperationMethodDescription
Get auditsGETGets an audit trail of user actions and configuration changes (to accounts, fees, and rates) on a RippleNet instance.
Get event trail for paymentGETGets an audit trail of a payment's state changes on a local RippleNet instance.
Operations

Balances and statements

Use these operations to view balances and statements for a ledger.

OperationMethodDescription
Get balancesGETGet balances for local and remote accounts owned by a RippleNet address.
Get ledger balancesGETGet balances for ledger owned by a RippleNet address.
Get statementGETGets a statement for an account that lists payments and transfers that impacted the account's balance during a specified date-time range.
Get statement by external account IDGETGets a statement for an account that lists payments and transfers that impacted the account's balance during a specified date-time range.
Get ledger account statementGETGet statement for a specified Ledger Account
Operations

Beneficiary confirmation

Use these operations to perform beneficiary confirmations.

OperationMethodDescription
Get account lookup by statusGETGet Account Lookup entities by status and other filters.
Initiate account lookupPOSTCreates an Account Lookup request to validate a beneficiary's account details before sending a payment.
Complete account lookupPOSTPosts an Account Lookup response to validate a beneficiary's account details before payment.
Get account lookup by IDGETGets an Account Lookup entity for its account_lookup_id value.
Operations

Diagnostics

Use these operations to view RippleNet Server health.

OperationMethodDescription
Check healthGETGets the health status of the xCurrent server.
Check heartbeatGETGets the health status of the xCurrent server's peers.
Operations

Exchange transfers

Use these operations to manage exchange transfers.

OperationMethodDescription
Get exchange transfersGETList all exchange transfers.
Execute exchange transferPOSTExecute an exchange transfer to move funds from one of your accounts in one currency, to another one of your accounts in another currency.
Get exchange transfer quote POSTRequests a quote for an exchange transfer.
Complete exchange transfer POSTUpdates the status of an exchange transfer to COMPLETED. Make this request once the exchange transfer has been made on both the ledger and on internal systems.
Get exchange transfer by ID GETGets an exchange transfer by ID.
Operations

Fees

Operations

Non-orchestration payments

Operations

Add payment labels

Request

Adds a list of labels to the payment. To retrieve payments by label, see Get payments.

Security
Bearer
Path
payment_idstring(uuid)required

Unique identifier of the payment you want to label.

Query
labelArray of stringsrequired

Text of the label you want to add to the payment.

curl -i -X PUT \
  'https://docs.ripple.com/_mock/products/payments-odl/api-docs/ripplenet/reference/openapi/payments/{payment_id}/labels?label=string' \
  -H 'Authorization: YOUR_API_KEY_HERE'

Responses

Successfully added one or more labels to the payment.

Response
No content

Delete payment labels

Request

Deletes an existing label from a payment. The label you provide is deleted from the labels array in the Payment object.

Security
Bearer
Path
payment_idstring(uuid)required

Unique identifier of the payment from which to delete a label.

Query
labelArray of stringsrequired

Text of the label you want to delete from the payment.

curl -i -X DELETE \
  'https://docs.ripple.com/_mock/products/payments-odl/api-docs/ripplenet/reference/openapi/payments/{payment_id}/labels?label=string' \
  -H 'Authorization: YOUR_API_KEY_HERE'

Responses

Successfully deleted label from payment.

Response
No content

Get payment node status

Request

Senders can query for the RippleNet instances (in a given payment chain) that have payments in the <code>LOCKED</code> state. This information is only stored on the sender's RippleNet instance.

Security
Bearer
Path
payment_idstring(uuid)required

Unique identifier of the payment for which to get states on each node participating in the payment.

curl -i -X GET \
  'https://docs.ripple.com/_mock/products/payments-odl/api-docs/ripplenet/reference/openapi/payments/{payment_id}/node-status' \
  -H 'Authorization: YOUR_API_KEY_HERE'

Responses

Successfully retrieved payment states on each node participating in the payment.

Bodyapplication/jsonArray [
paymentIdstring(uuid)required

Unique identifier of the payment.

Example: "efdf213c-9f64-43f7-80ab-15e7b4d139ae"
paymentStatestringrequired

State of the payment. This API only recognizes payments in the <code>LOCKED</code> state. For more on payment states, see Payment States in the RippleNet Developer Guide.<p></p>

Enum"QUOTED""ACCEPTED""AWAITING_COLLECTION""COMPLETED""EXECUTED""FAILED""FORWARDED""LOCK_DECLINED""LOCKED""PREPARED"
Example: "LOCKED"
nodeAddressstringrequired

RippleNet address of the participating node reporting the payment state.

Example: "rn.eur.uk.london"
pathOrderinteger(int32)required

Each node in the payment chain participates in sequence. Provides the order in the sequence in which this node participates.

Example: 3
]
Response
application/json
[ { "paymentId": "efdf213c-9f64-43f7-80ab-15e7b4d139ae", "paymentState": "LOCKED", "nodeAddress": "rn.eur.uk.london", "pathOrder": 3 } ]

Orchestration payments

Operations

Payment expiration

Operations

Payout method

Payout Method operations let receivers create and manage payout methods. Senders can generate quotes based on these receiver payout methods.

OperationMethodDescription
Create payout methodPOSTCreates a payout method. For example, LOCAL_RAILS.
Get payout methodsGETReturns a list of payout methods created by a receiving partner.
Get payout method by IDGETReturns a payout method by its ID.
Update payout methodPUTUpdates a payout method.
Delete payout methodDELETEDeletes a payout method.
Get all categoriesGETReturns all the payout method categories.
Operations

Platform accounts

Use these operations to configure your RippleNet platform accounts.

OperationMethodDescription
Create platformPOSTCreates a RippleNet platform that represents a financial entity that holds accounts in the real world. For example, a Bank, Exchange, or Wallet provider.
Get all platformsGETReturns a list of all active RippleNet platforms.
Get platform by platform IDGETGet a RippleNet platform by its platform ID.
Update platformPUTUpdates a RippleNet platform.
Delete platform by platform IDDELETEDeletes a RippleNet platform by its platform ID.
Create platform accountPOSTCreates a RippleNet platform account, which represents a real-world account owned by a financial entity.
Get platform accountsGETReturns a paged list of all active RippleNet platform accounts.
Get platform account by platform account IDGETGets a RippleNet platform account by its platform account ID.
Update platform accountPUTUpdates a RippleNet platform account.
Delete platform account by platform account IDDELETEDeletes a RippleNet platform account by its platform account ID.
Get platform accounts balancesGETGet balances for local Platform Accounts
Get platform account statementGETGet statement for a specified Platform Account
Operations

Pool accounts

Operations

Quote expiration

Use these operations to manage quote expirations.

OperationMethodDescription
List quote expiriesGETReturns all configured quote expiries.
Create quote expiryPOSTCreates a quote expiration window, or time to live (ttl), in seconds.
Get quote expiryGETGets the configured quote expiration window, or time to live (ttl), in seconds.
Update quote expiryPUTSets a quote expiration window, or time to live (ttl), in seconds.
Operations

Quotes

Operations

Rates

Use these operations to manage your rates.

OperationMethodDescription
Get ratesGETGets a list of configured exchange rates.
Create ratePOSTCreates an exchange rate for a specified currency pair.
Get rate by IDGETGets a configured exchange rate by ID.
Update ratePUTUpdates an existing exchange rate.
Delete rateDELETEDeletes an exchange rate. Once deleted, an exchange rate cannot be accessed.
Operations

Request for payment

Operations

Transfers

Use these operations to manage your transfers.

OperationMethodDescription
Get transfersGETGets a list of transfers.
Get transfer estimateGETGet an estimate of the fee to make an "outbound" transfer from an exchange (connected to xRapid) to an another account outside of RippleNet (such as a bank account).
Get transfer by IDGETGets a transfer by ID.
Execute transferPOSTTransfers funds between accounts.
Complete transferPOSTUpdates the state of a transfer to COMPLETED.
Add transfer labelsPUTAdds a list of labels to the transfer. To retrieve transfers by label, see Get transfers
Delete transfer labelsDELETEDeletes one or more existing labels from the transfer.
Operations