Skip to main content

validate.schemaGet

POST 

/processing

Get the payout validation schema that is currently applied to your payouts for one destination corridor.

The schema is returned in tasks[].result.data.schema as a serialized JSON Schema draft-07 document that describes the payload of a pay.toAccount task, so it can be used to discover the mandatory and optional payout fields of a corridor, their allowed values, formats and constraints, to build payout input forms and to pre-validate a payout payload before it is submitted.

The operation covers the account-based and wallet-based payouts (payout to a bank account, payout to an e-wallet and payout to a crypto wallet - all submitted with the pay.toAccount task). Card payouts (pay.toCard) are out of scope. One request returns the schema of exactly one corridor; the operation does not return a list of supported countries or currencies.

Corridor definition

destinationCountry, transferCurrency and accountIdentifierType are always mandatory. paymentRail is mandatory for accountIdentifierType BAN, IBAN and CLABE, and provider is mandatory for accountIdentifierType EWALLET (it selects the Alipay or the WeChat Pay corridor). bankId is not part of this contract: the corridor is resolved from the fields above only, and a bankId value sent in the payload is ignored.

The schema is resolved for your own configuration, so two customers may receive different schemas for the same country and currency if their payout routing differs.

The returned schema

The document uses the field names and the nesting of the pay.toAccount payload (for example from.sender.address.addressLine1, from.sender.address.addressLine2, to.recipient.address.countrySubdivision) and conveys:

  • mandatory fields - the required arrays at the root of the document and inside every nested object;
  • optional fields - every other property present in properties;
  • allowed values - enum arrays; a single-value enum means the value is fixed for the corridor (for example "transferCurrency": { "enum": ["USD"] });
  • formats and constraints - type, minLength, maxLength, minimum, maximum, format and pattern, plus the non-standard patternError annotation that carries a human-readable explanation of the neighbouring pattern (standard validators ignore it);
  • conditional relations - if/then blocks inside allOf: a sender or a recipient of type Individual requires firstName/lastName while type LegalEntity requires name, governmentId.type and governmentId.number require each other, and address fields such as zip and countrySubdivision are required only for specific countries.

The schema contains client-facing rules only - no payout provider identity, no routing information, no internal-only fields such as from.sourceTransactionInstrument, no UI hints and no default values.

Errors

If the requested country and currency combination (with the requested rail or e-wallet provider) cannot be routed for your configuration, no schema exists for it: the request is accepted and the task result is returned with status Error and the comment Selected country and currency combination is not available.

Request​

Responses​

This code is returned if the response is successful (and a specific response is required). A Response object is returned in the response.