Axiym

Schemas

Data models used by the Payment API.

78 schemas

AccessToken

object
#
token_typeRequired
string
expires_inRequired
integer
access_tokenRequired
string
scopeRequired
string

Currency

string
#

Currency code — ISO 4217 (e.g. USD, EUR) or a supported digital currency (USDT, USDC).

FiatCurrency

string
#

ISO 4217 fiat currency used for local payout. Digital currencies are not valid buy currencies.

Pattern^[A-Z]{3}$

CountryCode

string
#

ISO 3166-1 alpha-2 country code.

Pattern^[A-Z]{2}$

Decimal

string
#

Decimal number serialized as a string to preserve precision.

PageInfo

object
#
hasNextPageRequired
boolean

When paginating forwards, are there more items?

endCursor
string

When paginating forwards, the cursor to continue.

PaymentRailsCode

string
#

Payment rail code the account settles on (e.g. `ZENUS_BANK`, `TRON`).

AccountStatus

string
#
Allowed values
ACTIVESUSPENDEDCLOSED

Account

object
#

An Axiym account that holds one currency on one payment rail. Its available balance funds payments. Account funding is arranged outside the Payment API.

accountIdRequired
string

Account identifier (UUID).

Formatuuid
currencyRequired
Currency

Account currency.

paymentRailsRequired
PaymentRailsCode

Rail the account settles on.

balanceRequired
Decimal

Current balance.

statusRequired
AccountStatus

Account status.

StatementEntryType

string
#

Direction of movement on the account.

Allowed values
CREDITDEBIT

StatementEntry

object
#

A posted ledger movement on an account. Entries are returned in posting order and carry the running balance, so consecutive entries reconcile against each other.

entryIdRequired
string

Ledger entry identifier (UUID).

Formatuuid
accountIdRequired
string

Account identifier (UUID).

Formatuuid
typeRequired
StatementEntryType

Credit or debit direction.

amountRequired
Decimal

Positive movement amount in the account currency; direction is in `type`.

currencyRequired
Currency

Account currency.

balanceBefore
Decimal

Running balance before this movement.

balanceAfterRequired
Decimal

Running balance after this movement.

relatedResourceType
string

Type of the linked money movement; absent for ledger adjustments with no linked resource.

Allowed values
DEPOSITWITHDRAWALCONVERSIONPAYOUT
relatedResourceId
string

Identifier of the linked resource, where present.

Formatuuid
occurredAtRequired
string

When the movement occurred. Formatted in ISO 8601.

Formatdate-time

Corridor

object
#

A configured payout route from the partner's onboarded origin country and sell currency to a destination country, buy currency, and payout method.

originCountryRequired
CountryCode

Derived from the partner's onboarded location.

sellCurrencyRequired
Currency

Currency sold from the funding account.

destinationCountryRequired
CountryCode

Destination country for the payout.

buyCurrencyRequired
FiatCurrency

Fiat currency bought and delivered to the receiver.

payoutMethodRequired
PayoutMethod

Method used to deliver the payout.

availabilityRequired
CorridorAvailability

Current availability of the payout route.

CorridorAvailability

string
#

Current availability of the corridor. A payout quote can only be created when the corridor is AVAILABLE.

Allowed values
AVAILABLEUNAVAILABLE

CorridorDetails

Corridor & object
#
Combines
Corridorobject

CorridorAmountLimits

object
#

Permitted payout range expressed in the corridor's buy currency. A quote outside this range is rejected.

minimumRequired
FiatMoney

Smallest buy amount that can be paid through the corridor.

maximumRequired
FiatMoney

Largest buy amount that can be paid through the corridor.

PayoutMethod

string
#

Method used to deliver the payout. Currently only bank payouts are supported.

Allowed values
BANK

QuoteRequest

object
#
accountIdRequired
string

A funded Axiym account enabled for payouts. The sell currency is derived from this account.

Formatuuid
buyCurrencyRequired
FiatCurrency

Fiat currency to deliver to the receiver.

destinationCountryRequired
CountryCode

Destination country for the payout.

payoutMethodRequired
PayoutMethod
amountRequired
Decimal

Amount expressed in the currency selected by amountBasis.

amountBasisRequired
string

Indicates whether amount is expressed in the sell or buy currency.

Allowed values
sellbuy

QuoteStatus

string
#
Allowed values
ACTIVEEXPIREDUSEDCANCELED

Quote

object
#
quoteIdRequired
string
Formatuuid
accountIdRequired
string
Formatuuid
statusRequired
QuoteStatus
originCountryRequired
CountryCode

Derived from the partner's onboarded location.

destinationCountryRequired
CountryCode
payoutMethodRequired
PayoutMethod
sellRequired
Money

Amount sold from the funding account currency, excluding the fee.

buyRequired
FiatMoney

Amount bought and delivered to the beneficiary.

feeRequired
Money
totalPayableRequired
Money

Total amount payable from the funding account, including the fee.

rateRequired
ExchangeRate
requestedAtRequired
string
Formatdate-time
expiresAtRequired
string
Formatdate-time

CorridorRequirements

object
#

Country-playbook additions and overrides for the corridor. This does not repeat fields that are required for every payout.

fieldsRequired
CorridorFieldRequirement[]

Fields whose requiredness, format, validation or normalization is specific to this corridor.

complianceInformationRequired
string[]

Destination-specific compliance information that may affect the payout data Axiym validates.

CorridorFieldRequirement

object
#
fieldRequired
string

Partner-facing payment-data field path.

labelRequired
string

Human-readable field name.

requirednessRequired
string

Requiredness for this corridor.

Allowed values
REQUIREDOPTIONAL
formatRequired
string

Human-readable value format.

pattern
string

Regular expression used to validate the value when one applies.

normalization
string

Normalization applied before validation when one applies.

descriptionRequired
string

Additional guidance for supplying the field.

PartyAddress

object
#
addressLineRequired
string
Min length1
cityRequired
string
Min length1
postalCode
string
region
string
countryRequired
CountryCode

PartyContact

object
#
emailRequired
string
Formatemail
phoneNumberRequired
string

International phone number in E.164 format.

Pattern^\+[1-9][0-9]{7,14}$

PartyIdentificationType

string
#

Partner-facing classification of a party identification document or identifier. Corridor requirements determine which types are accepted for a specific payout.

Allowed values
REGISTRATION_NUMBERTAX_IDVAT_NUMBERNATIONAL_IDPASSPORTDRIVER_LICENSERESIDENCE_PERMITLEIOTHER

PartyIdentificationInput

object
#

Identification data supplied while preparing a payout. The type value is normalized to Axiym's closed PartyIdentificationType vocabulary for the prepared instruction.

typeRequired
string

How you describe the identification type. Provide an accepted Axiym value or descriptive text; Axiym normalizes it before validation.

Min length1
numberRequired
string
Min length1
issueDate
string
Formatdate
expiryDate
string
Formatdate

UboDesignation

string
#

Relationship of the individual to the sender. Every entry in the sender.ubos array represents an ultimate beneficial owner.

Allowed values
ubo

UltimateBeneficialOwnerInput

object
#
firstNameRequired
string
Min length1
lastNameRequired
string
Min length1
designationRequired
string

How you describe the individual's ownership or control relationship. Axiym normalizes it to the final UBO designation before validation.

Min length1
nationalitiesRequired
CountryCode[]
Min items1
addressRequired
PartyAddress

BankAccountType

string
#

Functional type of the receiver's destination bank account.

Allowed values
CURRENTSAVINGSCHECKINGCORPORATEOTHER

ReceiverBankAccount

object
#

The normalized destination bank account returned with a prepared payout. Axiym derives the clearing system and account currency.

accountHolderNameRequired
string
Min length1
accountTypeRequired
BankAccountType
accountNumberRequired
string
Min length1
nameRequired
string
Min length1
countryRequired
CountryCode
bic
string

ISO 9362 BIC, when required for the corridor.

Pattern^[A-Z]{6}[A-Z0-9]{2}([A-Z0-9]{3})?$
clearingCode
string

Local clearing or routing code, when required for the corridor.

ReceiverBankAccountInput

object
#

Destination bank-account details. `accountType` may use descriptive partner terms and is normalized before validation. Axiym derives the clearing system and account currency.

accountHolderNameRequired
string
Min length1
accountTypeRequired
string

How you describe the bank-account type. Provide an accepted Axiym value or descriptive text; Axiym normalizes it before validation.

Min length1
accountNumberRequired
string
Min length1
nameRequired
string
Min length1
countryRequired
CountryCode
bic
string

ISO 9362 BIC, when required for the corridor.

Pattern^[A-Z]{6}[A-Z0-9]{2}([A-Z0-9]{3})?$
clearingCode
string

Local clearing or routing code, when required for the corridor.

ReceiverRelationship

string
#

Provider-neutral business relationship between the receiver and sender.

Allowed values
SUPPLIERCUSTOMERCONTRACTORSERVICE_PROVIDERGROUP_COMPANYSUBSIDIARYPARENTINVESTMENT_TARGETDEBTORCREDITOROTHER

AxiymReceiverInput

object
#

Receiver data using Axiym's field structure. Fields with an allowed-value list may use descriptive partner terms; Axiym normalizes them before validation. The corridor determines any extra identification and routing requirements.

nameRequired
string
Min length1
countryOfIncorporationRequired
CountryCode
relationshipRequired
string

How you describe the receiver's relationship to the sender. Provide an accepted Axiym value or descriptive text; Axiym normalizes it before validation.

Min length1
addressRequired
PartyAddress
contactRequired
PartyContact

PartyDataMapDefinition

object
#

Portable, partner-independent mapping definition exported by the Payload Mapping Tool. It contains field paths, but no partner identifier, sample party values, or enum translations.

schemaVersionRequired
string

Version of the portable party-data-map document format.

targetModelVersionRequired
string

Version of Axiym's partner-facing party fields used when the map was authored.

senderRequired
PartyDataMapSection
receiverRequired
PartyDataMapSection

PartyDataMapSection

object
#

Declarative field mappings for one party object. Source paths use the partner's JSON structure; target paths use Axiym's documented sender or receiver structure.

mappingsRequired
object

Source paths keyed to their Axiym target paths. Array paths use `[]`, for example `owners[].fullName`.

CreatePartyDataMapRequest

object
#
nameRequired
string

Partner-facing name for the stored map.

Min length1Max length120
description
string

Optional note describing the source structures or integration that uses this map.

Max length500
definitionRequired
PartyDataMapDefinition

PartyDataMapStatus

string
#

Lifecycle state of a stored party data map.

Allowed values
ACTIVEARCHIVED

PartyDataMap

object
#

Immutable party data map stored for the authenticated partnership.

partyDataMapIdRequired
string
Formatuuid
nameRequired
string
description
string
definitionRequired
PartyDataMapDefinition
versionRequired
integer

Stored resource version. A changed definition is stored as a new immutable party data map.

Minimum1
statusRequired
PartyDataMapStatus
contentHashRequired
string

SHA-256 digest of Axiym's canonical serialization of the map definition.

Pattern^sha256:[a-f0-9]{64}$
createdAtRequired
string
Formatdate-time

MappedPartyData

object
#

Sender or receiver data using the partner-defined structure linked to `partyDataMapId`. The saved map translates field paths. Axiym then normalizes allowed-value fields and validates the result using the same party-data requirements.

Additional propertiesallowed

SupportingDocumentType

string
#

Axiym classification of evidence supplied with a payout.

Allowed values
PASSPORTNATIONAL_IDDRIVER_LICENSERESIDENCE_PERMITPROOF_OF_ADDRESSUTILITY_BILLBANK_STATEMENTTAX_CERTIFICATECERTIFICATE_OF_INCORPORATIONREGISTRY_EXTRACTARTICLES_OF_ASSOCIATIONSHAREHOLDER_REGISTERDIRECTOR_REGISTERUBO_DECLARATIONPOWER_OF_ATTORNEYBOARD_RESOLUTIONREGULATORY_LICENSEBUSINESS_LICENSEFINANCIAL_STATEMENTAUDIT_REPORTSOURCE_OF_FUNDSINVOICECONTRACTPURCHASE_ORDERPAYROLL_FILELOAN_AGREEMENTSHIPPING_DOCUMENTCUSTOMS_DECLARATIONOTHER

TransactionPurpose

string
#

Axiym's classification of the business reason for the payment.

Allowed values
GOODS_PURCHASESERVICES_PAYMENTSALARY_PAYROLLCONTRACTOR_PAYMENTRENT_LEASELOAN_DISBURSEMENTLOAN_REPAYMENTINTERCOMPANY_TRANSFERTREASURY_MANAGEMENTTAX_PAYMENTINVESTMENTREFUNDOTHER

SourceOfFunds

string
#

Axiym's classification of where the payment funds originated.

Allowed values
BUSINESS_REVENUEBANK_ACCOUNT_BALANCESAVINGSSALARY_INCOMEINVESTMENT_PROCEEDSSALE_OF_ASSETLOAN_PROCEEDSCAPITAL_CONTRIBUTIONSHAREHOLDER_FUNDSGRANT_OR_DONATIONINHERITANCEOTHER

SupportingDocumentInput

object
#

Supporting evidence supplied while preparing a payout. The document type is normalized to Axiym's closed SupportingDocumentType vocabulary for the prepared instruction.

documentTypeRequired
string

How you describe the supporting document. Provide an accepted Axiym value or descriptive text; Axiym normalizes it before validation.

Min length1
documentDescription
string
documentContentTypeRequired
string
documentDataRequired
string
documentDataBackside
string

TransactionInput

object
#

Transaction details and supporting evidence for the payment. Purpose, source of funds, and document types may use descriptive partner terms; Axiym normalizes them before validation.

purposeRequired
string

The business reason for the payment. Provide an accepted Axiym value or descriptive text; Axiym normalizes it before validation.

Min length1
sourceOfFundsRequired
string

Where the payment funds originated. Provide an accepted Axiym value or descriptive text; Axiym normalizes it before validation.

Min length1
reference
string
supportingDocumentsRequired
SupportingDocumentInput[]
Min items1

AxiymPartyPayoutRequest

object
#

Use this variant when `sender` and `receiver` follow Axiym's documented field structure. Do not provide `partyDataMapId`. Axiym normalizes allowed-value fields before validation.

quoteIdRequired
string
Formatuuid
clientReferenceRequired
string

Partner's unique, idempotent reference to the payout.

transactionRequired
TransactionInput
senderRequired
AxiymSenderInput
receiverRequired
AxiymReceiverInput

MappedPartyPayoutRequest

object
#

Use this variant when `sender` and `receiver` follow the partner-defined structures linked to `partyDataMapId`. The saved map translates party-field paths. `transaction` still uses Axiym's structure, and Axiym normalizes allowed-value fields before validation.

quoteIdRequired
string
Formatuuid
clientReferenceRequired
string

Partner's unique, idempotent reference to the payout.

partyDataMapIdRequired
string

Immutable saved mapping applied to sender and receiver only.

Formatuuid
transactionRequired
TransactionInput
senderRequired
MappedPartyData
receiverRequired
MappedPartyData

PayoutRequest

AxiymPartyPayoutRequest | MappedPartyPayoutRequest
#

Choose one party-data mode. Without `partyDataMapId`, use Axiym's documented `sender` and `receiver` structure. With `partyDataMapId`, use the partner structures linked to that map. Both modes normalize allowed-value fields and apply the same payment and corridor validation.

PayoutTestContext

object
#

Non-financial context used to select the applicable destination requirements. Axiym derives the origin country from the partner's onboarded location.

sellCurrencyRequired
Currency

Currency that would fund the payment.

destinationCountryRequired
CountryCode

Country where the beneficiary would be paid.

buyCurrencyRequired
FiatCurrency

Local fiat currency that would be delivered to the beneficiary.

payoutMethodRequired
PayoutMethod

MappedPayoutTestRequest

object
#

Tests a complete representative payload after applying the stored Party Data Map to sender and receiver. Transaction data continues to use Axiym's documented structure.

contextRequired
PayoutTestContext
partyDataMapIdRequired
string

Stored Party Data Map applied to the representative sender and receiver objects.

Formatuuid
transactionRequired
TransactionInput
senderRequired
MappedPartyData
receiverRequired
MappedPartyData

PayoutTestRequest

AxiymPayoutTestRequest | MappedPayoutTestRequest
#

Representative payout data used to test party structure, optional Party Data Map application, controlled-value normalization, and destination-specific validation without creating a quote or payout. `clientReference` is omitted because no resource is created.

PayoutTestResult

object
#

Normalized representative payout data and its validation result. Nothing in this response is a quote or payout instruction, and no submitted payload data is persisted.

validRequired
boolean

True when the mapped and normalized payload satisfies the baseline and destination requirements selected by context.

contextRequired
PayoutTestContext
partyDataMapId
string

Party Data Map used by the test. Omitted when the submitted parties used Axiym's structure.

Formatuuid
normalizedDataRequired
PayoutTestNormalizedData
normalizationsRequired
PayoutTestNormalization[]

Controlled values changed during normalization. Exact Axiym values that passed through unchanged are not included.

warningsRequired
PayoutTestWarning[]

Non-blocking mapping or validation observations, such as unused source fields.

errorsRequired
object | null

Mapping or validation failures keyed by the mapped payout-data path; null when `valid` is true.

PayoutTestNormalizedData

object
#

Mapped and normalized sender, receiver, and transaction data produced during a test. It can be incomplete when validation fails, so it is less restrictive than `PreparedPaymentData`.

senderRequired
object
receiverRequired
object
transactionRequired
object

PayoutTestNormalization

object
#

One supplied value that was normalized to a controlled Axiym value during the test.

pathRequired
string

Axiym payout-data path containing the normalized value.

inputValueRequired
string
normalizedValueRequired
string

Final allowed Axiym value.

vocabularyRequired
string

Controlled vocabulary used for normalization.

PayoutTestWarning

object
#
codeRequired
string
path
string

Partner source path or mapped Axiym path associated with the warning.

messageRequired
string

PayoutStatus

string
#

Normalized payout lifecycle status. PENDING_CONFIRMATION means the prepared payout has not yet been committed and cannot move funds or be submitted for execution.

Allowed values
PENDING_CONFIRMATIONPROCESSINGAPPROVEDSETTLEDSUBMITTEDCOMPLETEDREJECTEDFAILEDRETURNEDCANCELEDEXPIRED

Payout

object
#
payoutIdRequired
string
Formatuuid
quoteIdRequired
string
Formatuuid
accountIdRequired
string
Formatuuid
clientReferenceRequired
string
statusRequired
PayoutStatus
payoutMethodRequired
PayoutMethod
sellRequired
Money

Amount sold from the funding account currency, excluding the fee.

buyRequired
FiatMoney

Amount bought and delivered to the beneficiary.

feeRequired
Money
totalPayableRequired
Money

Total amount payable from the funding account, including the fee.

confirmationExpiresAtRequired
string

Deadline for confirming a payout with status PENDING_CONFIRMATION. Derived from the referenced quote's expiry.

Formatdate-time
confirmedAt
string

Present after the partner has confirmed the prepared payout.

Formatdate-time
createdAtRequired
string
Formatdate-time
updatedAtRequired
string
Formatdate-time

PayoutDetails

Payout & object
#

A payment with its prepared party and transaction data. `paymentData` contains the normalized instruction that confirmation commits.

Combines
Payoutobject

PreparedSupportingDocument

object
#
documentTypeRequired
SupportingDocumentType
documentDescription
string
documentContentTypeRequired
string
sha256Required
string

SHA-256 digest of the decoded document content. The API does not echo base64 document data in payout responses.

Pattern^[a-f0-9]{64}$
hasBacksideRequired
boolean

Indicates whether backside document content was supplied.

PayoutFailure

object
#
codeRequired
string
messageRequired
string

CreateSubscriptionRequest

object
#
endpointRequired
string

URL of the endpoint to subscribe to notifications. Must be publicly accessible, use HTTPS, and respond with a 2XX status to a POST request.

Subscription

object
#
subscriptionIdRequired
string

Subscription identifier (UUID).

Formatuuid
endpointRequired
string

URL of the endpoint to subscribe to notifications. Must be publicly accessible, use HTTPS, and respond with a 2XX status to a POST request.

Formaturi

RequestStatus

object
#
statusRequired
string

Request status.

Allowed values
OK

Default OK

PublicKey

object
#
publicKeyIdRequired
string

Public key identifier (UUID).

Formatuuid
activeRequired
boolean

Indicates whether the key is active

algorithmRequired
string

Encryption algorithm

publicKeyRequired
string

Public Key

createdAtRequired
string

Creation timestamp. Formatted in ISO 8601.

Formatdate-time

Error

object
#
codeRequired
integer

HTTP status code, duplicated in the body.

messageRequired
string

Human-readable message describing the error.

errorsRequired
object | null

Additional error details; null when there are none.

ValidationErrorResponse

object
#
codeRequired
integer

HTTP status code, duplicated in the body.

messageRequired
string

Invalid Parameters for validation failures; the rejection reason otherwise.

errorsRequired
object | null

Validation failures are keyed by field name. Business rejections return null.

ValidationFieldErrors

ValidationError[] | object
#

Nested validation errors keyed by field name or array index. Leaf values are arrays of `ValidationError` objects.

One of

ValidationError

object
#

One field-level validation error.

codeRequired
string

Validation rule code (e.g. 'length', 'email', 'invalid_currency', 'disbursement_account_required').

message
string | null

Human-readable message.

paramsRequired
object

Rule-specific parameters. Always includes `value` (the offending input). Additional keys depend on the rule (e.g. `min`, `max` for length).

value
unknown

The submitted value that failed validation.