Need help with your APIs? I offer API discovery, governance & evangelism services. Explore services →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

Xe Payments API

Xe Payments API — cross-border payment execution for Xe's international money-transfer platform. Documented Swagger 2.0 covering quotes, recipients, tradeable currencies, purposes of payment, transactions, and permissions for sending payments to 200+ countries with a sandbox for integration testing.

Xe Payments API is one of 6 APIs that Euronet Worldwide publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

Tagged areas include Cross-Border, Payments, and Money Transfer. The published artifact set on APIs.io includes an OpenAPI specification, API documentation, and an API reference.

This API exposes 13 operations across 10 paths, organized into 6 resource areas, and defines 27 schemas. It is described by OpenAPI 2.0, at version 1.3.0.

Requests are made against the base URL https://payments-api.xe.com.

13 operations 10 paths 27 schemas 1 DELETE8 GET1 PATCH3 POST

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 2.0
API Version
1.3.0
Base URL
https://payments-api.xe.com
Resource Areas
6

Paths & Operations 13

Across 10 paths, the API surfaces 13 operations — 1 DELETE, 8 GET, 1 PATCH, 3 POST. They span 6 resource areas: Permission, PurposesOfPayment, Quote, Recipient, TradeableCurrency, Transaction. Each is listed below with its method, path, parameters, and response codes.

Permission 1
GET
/permissions
Gets all permissions for the current user.
Get → 200500
PurposesOfPayment 1
GET
/purposesofpayment/{currency}
Get purposes of payment for given user.
Get 1 param → 200400500
Quote 3
POST
/quotes
Creates a quote for the currencies and amount provided.
Create 1 param → 200400500
GET
/quotes/{quoteId}
Refreshes a quote to gain an up-to-date quote.
Refresh 2 params → 200404500
PATCH
/quotes/{quoteId}
Updates a quote to change or add more details.
Update 2 params → 200400404500
Recipient 4
GET
/recipients
Gets recipients for a currency.
Get 1 param → 200400404500
POST
/recipients
Creates a recipient with the details provided.
Create 1 param → 200400500
DELETE
/recipients/{recipientId}
Delete a recipient.
Delete 1 param → 204404500
GET
/recipients/fields/{country}/{currency}
Gets all recipient field definitions for a user for a specified currency and a country.
GetRecipientFieldDefinitions 2 params → 200400500
TradeableCurrency 1
GET
/tradeablecurrencies
Get tradeable currencies.
Get → 200404500
Transaction 3
GET
/transactions
Gets a list of transactions for the specified page number and page size, filtered by creation date.
GetList 4 params → 200400404500
POST
/transactions
Creates a transaction for the quote specified.
Book 1 param → 200400404500
GET
/transactions/{transactionId}
Gets a transaction with the specified ID.
Get 1 param → 200400404500

Schemas 27

The contract defines 27 schemas that model the data the API accepts and returns. The most detailed are Recipient (28 properties), Transaction (24 properties), Quote (21 properties), SettlementBankAccount (13 properties). Each schema is shown below with its type and property counts.

StringArrayResponse
object
Generic response returned for each request. "message" - Result from the request. "content" - Data returned in the response. "errors" - Issues while processing…
5 properties
Message
object
Details for an error or warning that occured during the request or general information from it. "code" - Code that can be used to find full details for the mes…
2 properties
StringStringKeyValuePair
object
2 properties
PurposeOfPaymentListResponse
object
Generic response returned for each request. "message" - Result from the request. "content" - Data returned in the response. "errors" - Issues while processing…
5 properties
PurposeOfPayment
object
2 properties
CreateQuoteRequest
object
Request body for creating a new quote. Quotes expire in around 15 seconds. SWIFT characters match the following regular expression: ^[\r\n\sa-zA-Z0-9\/\-:,'\?\…
11 properties 4 required
QuoteResponse
object
Generic response returned for each request. "message" - Result from the request. "content" - Data returned in the response. "errors" - Issues while processing…
5 properties
Quote
object
Details for a quote. "quoteId" - ID of the quote. "quoteStatus" - Enum value for the status of the quote. "quoteStatusText" - Text value for the status of the…
21 properties
UpdateQuoteRequest
object
Request body for updating a quote. SWIFT characters match the following regular expression: ^[\r\n\sa-zA-Z0-9\/\-:,'\?\(\)\.\+]$ "amount" - Optional: Amount of…
8 properties
RecipientRequest
object
Request body for creating a new recipient. "bankCountryCode" - Country code of the bank for the recipient. "currencyCode" - Currency code that the recipient is…
3 properties
RecipientField
object
2 properties
RecipientResponse
object
Generic response returned for each request. "message" - Result from the request. "content" - Data returned in the response. "errors" - Issues while processing…
5 properties
Recipient
object
Details for a recipient. "id" - ID of the recipient. "name" - Display name of the recipient. "currency" - Currency code for the recipient's account. "accountNu…
28 properties
RecipientListResponse
object
Generic response returned for each request. "message" - Result from the request. "content" - Data returned in the response. "errors" - Issues while processing…
5 properties
RecipientFieldDefinitionsResponse
object
Generic response returned for each request. "message" - Result from the request. "content" - Data returned in the response. "errors" - Issues while processing…
5 properties
RecipientFieldDefinitions
object
Details for a recipient field definitions "fieldDefinitions" - List of recipient field definition. "contentReplacements" - A list of replacements values that a…
4 properties
RecipientFieldDefinition
object
Details for a recipient field definition. "fieldName" - Name of the recipient field. "regEx" - Allowed format of the field. "required" - Boolean value to indic…
5 properties
LocalisableString
object
Details for the localisable string. "externalCode" - code to indentify the display name. "text" - Text to display for the field.
2 properties
TradeableCurrencyListResponse
object
Generic response returned for each request. "message" - Result from the request. "content" - Data returned in the response. "errors" - Issues while processing…
5 properties
TradeableCurrency
object
5 properties
CreateTransactionRequest
object
1 property 1 required
TransactionResponse
object
Generic response returned for each request. "message" - Result from the request. "content" - Data returned in the response. "errors" - Issues while processing…
5 properties
Transaction
object
"transactionId" - ID of the transaction. "isValidTransaction" - Whether there are any issues with the current transaction. "buyOrSell" - Whether the client is…
24 properties
Payment
object
Details for the payment including recipient details and purpose of payment. "amount" - Amount to pay the recipient. "recipientID" - ID of the recipient to make…
6 properties
SettlementBankAccount
object
Bank details for the client. "accountName" - Name of the account holder. "accountNumber" - Account number of the bank account. "iban" - IBAN for the bank accou…
13 properties
TransactionPagedDataResponse
object
Generic response returned for each request. "message" - Result from the request. "content" - Data returned in the response. "errors" - Issues while processing…
5 properties
TransactionPagedData
object
4 properties

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

xe-payments-api-openapi.json Raw ↑

Other APIs Euronet Worldwide publishes across the network.

Xe Currency Data API
Xe Mass Payments API
Xe Currency Data Tradable Rates API
XETA API
Dandelion Cross-Border Payments API