Skip to main content
External transfers and withdrawals carry an AML questionnaire describing the originator, destination, and recipient. Internal movements don’t need it. Use the key that matches your operation: All fields have a 256-character maximum. Some fields are conditional on others.

How to fill it

1. destinationType — Where the destination is hosted.
  • FINANCIAL_INSTITUTION — A third party holds the key (for example, an exchange). Requires institutionName and institutionCountry. Pass the country as an ISO 3166-1 alpha-2 code, for example GB for the United Kingdom (UK isn’t a valid code).
  • SELFHOSTED_WALLET — The owner holds the key. Requires selfhostedDescription.
2. recipientType — Who receives the funds.
  • DESTINATION_INSTITUTION — The financial institution named in institutionName.
  • MY_ORGANIZATION — Your own organization.
  • PERSON — Requires recipientFirstName, recipientLastName, and recipientCountry.
  • ENTITY — Requires recipientFullName and recipientCountry.
3. originatorType — Who initiated the move.
  • MY_ORGANIZATION — Your API key initiated the move and assets aren’t being moved on behalf of a client.
  • MY_CLIENT — Your key is acting as a financial institution on a client’s behalf. The originator address fields are then required.
4. purpose — TRADING_SETTLEMENT, LENDING, INVESTMENT, EXPENSES, FEE_PAYMENT, GRANT_PAYMENT, PRIZE_AWARD, GIFT, REIMBURSEMENT, REBALANCE, INTRA_COMPANY, or REWARDS_DISTRIBUTION.

Reduced AML for trusted destinations

If the destination is a trusted destination that already carries AML details, set useTrustedDestinationAml: true and provide only originatorType and purpose. The rest is inherited.

Field reference

Institution / country mapping

When the destination is held at one of the institutions below, use the country code shown for institutionCountry. For any other institution, pass its name in institutionName and the ISO 3166-1 alpha-2 code of the country where it’s based.