International External Accounts

Store customer-owned international bank accounts for cross-border transfers.

International External Accounts represent bank accounts owned by the customer but held outside the system in another country. These accounts are linked to enable cross-border movement of funds between a customer’s system Account and the customer’s own bank account in another country.

A customer can configure one or more International External Accounts depending on their business needs. Every International External Account undergoes OFAC screening on the account holder name before it can be used for transaction processing.

When to Use International External Accounts

  • Move funds between the system account and the customer’s own bank account in another country
  • Support cross-border treasury or payout use cases
  • Store reusable international banking details for future transfers
  • Manage customer-owned international bank destinations outside the system

International External Accounts should not be used for collecting funds from or sending funds to third parties. Use Contacts (Payees) for those flows.


How it Works

  • Add an International External Account
    Provide the international bank account details required for the destination country and currency, such as account number, SWIFT code, holder information, and holder address.
  • Validate the SWIFT Code
    A valid SWIFT code is required before the account can be created. You can validate the SWIFT code before submitting the account details.
  • Fetch Country- and Currency-Specific Requirements
    For non-USD International External Accounts, use the metadata API first to retrieve the required dynamic fields and validations based on the destination country, accepted currency, and holder type.
  • OFAC Screening
    The account holder name is screened against regulatory and compliance watchlists.
  • Account Activation
    Once OFAC verification is successfully completed, the International External Account becomes ACTIVE and is ready for transaction processing.

Add an International External Account

Use the International External Account create API to add an international bank account within the system. This account represents a customer-owned bank account outside the Passport system that can later be used for cross-border transfers.

Key Details Required

Field

Required

Description

externalId

Optional

Reference identifier assigned by the Program Manager. Maximum 45 characters. If provided, it must be unique across all International External Accounts and cannot be updated later.

type

Type of bank account. Possible values: SAVINGS, CHECKING.

holderName

Name of the bank account holder exactly as it appears on bank records. Maximum 60 characters. All printable ASCII characters are allowed except tilde (~) and pipe.

holderType

Type of account holder. Possible values: CONSUMER, CORPORATE.

accountNumber

International bank account number. Maximum 34 characters. Supports letters, numbers, and these symbols: * : # - / & , + '.

swiftCode

SWIFT code for the destination bank. Must be 8 to 11 alphanumeric characters. A valid SWIFT code is required before account creation.

internationalRoutingCode

Conditional

International routing code required for certain countries. Supported formats include:

  • Australia – 6 characters
  • India – 11 characters
  • Canada – 9 characters
  • United Kingdom – 6 characters
  • New Zealand – 6 characters
  • Hong Kong – 3 characters
  • Poland – 8 characters

acceptedCurrency

Accepted currency for the International External Account. Uses a 3-character currency code. If multiple currencies are provided and USD is included, the system accepts USD as the default accepted currency. If multiple currencies are provided and USD is not included, the system throws an error and requires a single appropriate accepted currency for the destination country.

holderEmail

Optional

Account holder email address. Must be in a valid format, for example [email protected].

holderPhone

Optional

Phone number of the bank account holder.

purpose

Optional

Helps meet cross-border compliance requirements and is shared with partner banks to facilitate secure and compliant processing of the wire transaction.

comment

Optional

Comments passed by the user.

tags

Optional

Labels or tags assigned to the International External Account.

metaData

Optional

Key-value pairs used to store additional information for the account.

Account Holder Address

The account holder address is required as part of the International External Account details.

FieldRequiredDescription
holderAddress.addressLine1Address line 1. Maximum 35 characters for USD and 25 characters for foreign currency.
holderAddress.addressLine2OptionalAddress line 2. Maximum 35 characters for USD and 20 characters for foreign currency.
holderAddress.cityCity. Maximum 25 characters for USD and 20 characters for foreign currency. Supports alphabetic characters and country-supported special characters.
holderAddress.stateState or region code. Must be 2 to 3 alphabetic characters.
holderAddress.country2-character country code, for example US.
holderAddress.zipPostal code. Length must be between 1 and 9 characters. Supports letters and numbers.

You cannot save or update an International External Account for a Contact if the holder address is a PO Box address.

Additional Details for Non-USD Accounts

For non-USD International External Accounts, additional information may be required in the additionalDetail object.

FieldRequiredDescription
additionalDetail.<key>ConditionalDynamic fields that vary based on destination country, accepted currency, and holder type.
additionalDetail.taxIdConditionalExample dynamic field. Validation format varies by destination country. Country-specific tax identifiers can differ depending on the receiving jurisdiction.

Use the metadata API before creating a non-USD International External Account to retrieve the required dynamic fields and validations for the selected country, currency, and holder type.

After submitting the request, the system checks that all required information is present. If any validation fails, the request is rejected immediately, and an error response is returned. You must correct the issue and resubmit the request. For a complete list of validation errors and how to resolve them, refer to the HTTP Response Codes.

Key Capabilities:

  • Link multiple International External Accounts per customer
  • Store customer-owned cross-border bank destinations
  • Support country- and currency-specific account requirements
  • Validate SWIFT codes before account creation
  • Perform OFAC screening on the account holder
  • Store dynamic metadata and compliance-related details for international processing

Validation Requirements

  1. SWIFT Code Validation
    1. A valid SWIFT code is required before account creation.
    2. The system blocks creation if the SWIFT code is invalid.
  2. Metadata Lookup for Non-USD Accounts
    1. Required before the first creation of a non-USD International External Account for a given country and currency combination.
    2. Returns the dynamic fields and validation rules based on country, currency, and holder type.
  3. OFAC Screening
    1. Performed on the account holder name.
    2. Required before the account becomes ACTIVE.

The metadata response is fetched from a third party outside the Passport system. Customers must provide all required values returned for the selected country and currency.


Retrieve International External Account details

Use the International External Account retrieve API to view the following important information:

  • International External Account Status & Status Reason: Current lifecycle state of the account and the reason assigned to that state
  • OFAC Status Details: Compliance verification result for the account holder, including status, reason, and timestamp
  • Account Holder and Address Information: Stored account holder details and holder address
  • Accepted Currency and Country-Specific Details: Currency configuration and any routing or dynamic field requirements
  • Audit Metadata: Creation details, last updated details, comments, tags, and custom metadata

Only the last 4 digits of the account number are returned in API responses through accountNumberLast4.


International External Account Lifecycle

International External Accounts follow a simpler lifecycle than domestic External Accounts because they rely primarily on SWIFT validation, metadata requirements, and OFAC screening rather than domestic account validation methods such as EWS, prenote, or micro-deposits.

StatusDescription
INACTIVEDefault status on creation
ACTIVESuccessfully cleared OFAC verification and ready for transactions
BLOCKEDRestricted because OFAC verification was rejected

OFAC Statuses

StatusDescription
PENDING_VERIFICATIONDefault status when the account is created or when the holder name is updated and OFAC verification is enabled
VERIFIEDOFAC verification completed successfully
UNDER_REVIEWOFAC verification could not be completed automatically and requires manual review
REJECTEDOFAC verification failed during manual review
IGNOREDDefault status when OFAC verification is disabled for the program

If OFAC verification is rejected, the International External Account is marked as BLOCKED.


Blocked Accounts & Resolution

An International External Account may be marked as BLOCKED due to:

  • Rejected OFAC verification
  • Invalid or incomplete account details
  • Country- or currency-specific validation failures
  • Invalid SWIFT code or unsupported routing information

Resolution Path

  • Review status, statusReason, and OFAC verification details from the retrieve response
  • Correct account details if the account is still in INACTIVE status
  • Re-run prerequisite checks such as SWIFT validation or metadata lookup before resubmitting
  • Contact the Passport team for accounts in UNDER_REVIEW or compliance-related blocked states

Transactions are not allowed on blocked accounts.


Compliance & Security

  • Every International External Account undergoes OFAC verification on the account holder name.
  • A valid SWIFT code is required before account creation.
  • Running the metadata API is mandatory before the first creation of a non-USD International External Account for a given country and currency combination.
  • externalId must be unique across all International External Accounts.
  • Once assigned, externalId cannot be updated.
  • An International External Account in INACTIVE status can be updated.
  • A Program Manager can delete an International External Account if no transaction has been created using it.

Best Practices

PracticeDescription
Use International External Accounts only for customer-owned accountsDo not use them for third-party recipients; use Contacts instead
Validate SWIFT codes before creationPrevent account creation failures early
Run the metadata API before non-USD onboardingRequired to discover country- and currency-specific fields and validations
Store the external account identifierRequired for future payout flows and reconciliation
Monitor OFAC verification statusInternational account usability depends on compliance outcome
Keep holder address details accurateCountry-specific formatting and PO Box restrictions can block account creation or updates


.readme-logo { display: none !important; }