Skip to content

Endpoint inventory ​

This inventory reflects the methods, paths, and example field names in the supplied client Postman collection. All paths are relative to https://api.xdc.tech/v1.

Using this reference

This is an endpoint inventory, not an exhaustive payload schema. The deployed release has scoped authorization; selected public read and denial checks passed. The complete set of write requests has not been exercised as part of the onboarding read checks. Confirm required fields, route eligibility and payment behavior for your organization. An example field does not establish that it is required, optional, exhaustive, or valid for every route. No live request runner is provided.

{walletId}, {virtualAccountId}, {externalAccountId}, and {corridorId} below stand for identifiers belonging to your own organization or an approved route. The download uses Postman variables for them. Apart from GET /health, requests inherit X-Api-Key authentication in the source collection.

Required permissions ​

Every authenticated operation requires an eligible business and a reviewed key with read. Wallet creation, recipient administration and deposit-account deactivation additionally require resources:write. Transfers, payouts and payment routes require payments:write. Deposit-account creation/reactivation requires both write scopes. Explicit sync=true requires resource permission. See credentials and access.

Status ​

MethodPathPurpose
GET/healthCheck reachability; no API key required.
GET/meInspect the customer associated with the key.

Start with the quickstart. A health response does not confirm eligibility or permissions.

Wallets ​

MethodPathPurposeReview level
GET/walletsList wallets.Read
GET/wallets/{walletId}/balanceRead wallet balance.Read
GET/wallets/{walletId}/historyRead wallet history.Read
POST/walletsCreate a wallet.Changes account state

The create-wallet example contains a chain body field. Supported values and organization eligibility are not established by this inventory.

Deposit accounts ​

The source calls these virtual accounts.

MethodPathPurposeReview level
GET/virtual-accountsList deposit accounts.Read
POST/virtual-accountsCreate a deposit account.Changes account state
POST/virtual-accounts/{virtualAccountId}/deactivateDeactivate a deposit account.Changes account state
POST/virtual-accounts/{virtualAccountId}/reactivateReactivate a deposit account.Changes account state

The create-account example contains source_currency, destination_currency, destination_payment_rail, and destination_address. Confirm supported currency/rail combinations and the correct destination before use.

Recipients ​

The source calls these external accounts.

MethodPathPurposeReview level
GET/external-accountsList recipients.Read
GET/external-accounts/{externalAccountId}Retrieve a recipient.Read
POST/external-accountsCreate a recipient.Changes account state
PATCH/external-accounts/{externalAccountId}Update a recipient.Changes account state
POST/external-accounts/{externalAccountId}/deactivateDeactivate a recipient.Changes account state
POST/external-accounts/{externalAccountId}/reactivateReactivate a recipient.Changes account state

The create-recipient example contains corridor_id, account_owner_name, bank_name, account_number, routing_number, street_line_1, city, state, postal_code, and country. The update example contains only account_owner_name; this is not a statement that other fields can or cannot be updated.

Treat beneficiary and banking details as sensitive. Confirm corridor-specific requirements before entering data.

Deposits ​

MethodPathPurpose
GET/depositsList deposit activity.

There is no deposit-creation request in this client collection.

Transfers ​

MethodPathSource request nameReview level
GET/transfersList transfers.Read
POST/transfersSend to recipient (off-ramp).Payment operation
POST/transfers/crypto-to-cryptoCrypto to crypto.Payment operation
POST/transfers/payment-routeCrypto payment route.Route configuration
POST/transfers/offramp-routeOff-ramp payment route.Route configuration

Source example body fields:

PathFields present in the example
/transferswallet_id, external_account_id, amount, source_currency, corridor_id
/transfers/crypto-to-cryptowallet_id, amount, source_currency, destination_currency, destination_payment_rail, destination_address
/transfers/payment-routewallet_id, source_currency, destination_payment_rail, destination_currency, destination_address
/transfers/offramp-routewallet_id, corridor_id, external_account_id, source_currency

The source list request also includes a limit query parameter with example value 50. Valid ranges, defaults, pagination behavior, and completion statuses are not specified here.

Payouts ​

MethodPathPurposeReview level
GET/payoutsList payouts.Read
POST/payoutsCreate a payout.Payment operation

The create-payout example contains wallet_id, amount, currency, beneficiary_name, beneficiary_account, beneficiary_routing, and destination_type. Confirm field semantics, route availability, approvals, and settlement behavior before use.

FX and corridors ​

MethodPathSource request nameSource query fields
GET/fx/latestFX latestNone shown
GET/fx/rateFX ratefrom, to, amount
GET/corridorsCorridorsNone shown

The FX-rate source example uses from=USD, to=EUR, and amount=100. Those are example inputs, not a guarantee of supported currencies, an executable quote, or a fee/timing commitment. The client download replaces these values with empty variables. Confirm route eligibility before transacting.

Provider synchronization ​

The supplied collection adds sync=true to the list requests for wallets, deposit accounts, recipients, deposits, and transfers. The onboarding guide identifies this as requesting provider synchronization.

The client download and starter examples remove that parameter from all default list requests. Confirm its released behavior and required authority before adding it. Omitting synchronization does not establish data freshness or consistency guarantees.

Review before any write ​

All POST and PATCH requests require separate review before use. Establish organization eligibility, exact field validation, permission checks, and any approval requirements first. For payment operations, agree status reconciliation and retry handling; do not infer idempotency or final settlement from a successful HTTP response.

Download the sanitized client collection to inspect its request structure. It contains no live credentials, populated customer identifiers, or saved response data.

XDC Tech · Customer and developer documentation