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. The system validates the SWIFT code upfront and blocks account creation if the code is invalid. - Fetch Country- and Currency-Specific Requirements
For non-USD International External Accounts, retrieve the required dynamic fields and validations before account creation. These requirements vary based on destination country, accepted currency, and holder type.
- Validate the SWIFT Code
-
Retrieve Account Status and Verification Details
Use the retrieve API to check the account status, status reason, OFAC verification details, accepted currency, and stored account holder information.- OFAC Screening
After account creation, the account holder name is screened against regulatory and compliance watchlists.
- OFAC Screening
-
Use the Account for International Wire Transactions : After the International External Account is
ACTIVE, use the POST/v1/customer/id/{id}/transaction(orexternalId) API to create an International Wire transaction with the International External Account as the destination.
Add an International External Account
Use the POST /v1/customer/id/{id}/internationalExternalAccount (or externalId) API to add an international bank account within the system. This account represents a customer-owned bank account outside the system that can later be used for cross-border transfers.
Key Details Required:
Field | Required | Description |
|---|---|---|
| ✓ | Type of bank account. Possible values: |
| ✓ | Name of the bank account holder exactly as it appears on bank records. Maximum 60 characters. All printable ASCII characters are allowed except tilde ( |
| ✓ | Type of account holder. Possible values: |
| ✓ | International bank account number. Maximum 34 characters. Supports letters, numbers, and these symbols: |
| ✓ | SWIFT code for the destination bank. Must be 8 to 11 alphanumeric characters. A valid SWIFT code is required before account creation. Use the POST |
| Conditional | International routing code required for certain countries. Use the POST Supported formats include:
|
| ✓ | Accepted currency for the International External Account. Uses a 3-character currency code. If multiple currencies are provided and If multiple currencies are provided and |
| Optional | Account holder email address. Must be in a valid format, for example |
| Optional | Phone number of the bank account holder. |
| Conditional, mandatory only for certain country-currency routes. | Helps meet cross-border compliance requirements and is shared with partner banks to facilitate secure and compliant processing of the wire transaction. |
Add the Account Holder Address
The account holder address is required as part of the International External Account details.
| Field | Required | Description |
|---|---|---|
holderAddress.addressLine1 | ✓ | Address line 1. Maximum 35 characters for USD and 25 characters for foreign currency. |
holderAddress.addressLine2 | Optional | Address line 2. Maximum 35 characters for USD and 20 characters for foreign currency. |
holderAddress.city | ✓ | City. Maximum 25 characters for USD and 20 characters for foreign currency. Supports alphabetic characters and country-supported special characters. |
holderAddress.state | Optional | State or region code. Must be 2 to 3 alphabetic characters. |
holderAddress.country | ✓ | 2-character country code, for example US. |
holderAddress.zip | Optional | Postal 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.
Add Meta Data for Non-USD External Accounts
For non-USD International External Accounts, additional information may be required in the additionalDetail.<key> object.
Use the POST /v1/customer/id/{id}/internationalExternalAccount/metadata (or externalId) API to fetch the required dynamic fields and validations based on the destination country, accepted currency, and holder type.
Field | Required | Description |
|---|---|---|
| Conditional | Dynamic fields that vary based on destination country, accepted currency, and holder type. Possible Values:
The validations accepted around “
Validation format varies by destination country. Country-specific tax identifiers can differ depending on the receiving jurisdiction. |
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
- SWIFT Code Validation
- A valid SWIFT code is required before account creation.
- The system blocks creation if the SWIFT code is invalid.
- Metadata Lookup for Non-USD Accounts
- Required before the first creation of a non-USD International External Account for a given country and currency combination.
- Returns the dynamic fields and validation rules based on country, currency, and holder type.
- OFAC Screening
- Performed on the account holder name.
- 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 GET /v1/customer/id/{id}/internationalExternalAccount/id/{id} (or externalId) 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.
| Status | Description |
|---|---|
INACTIVE | Default status on creation |
ACTIVE | Successfully cleared OFAC verification and ready for transactions |
BLOCKED | Restricted because OFAC verification was rejected |
OFAC Statuses
| Status | Description |
|---|---|
PENDING_VERIFICATION | Default status when the account is created or when the holder name is updated and OFAC verification is enabled |
VERIFIED | OFAC verification completed successfully |
UNDER_REVIEW | OFAC verification could not be completed automatically and requires manual review |
REJECTED | OFAC verification failed during manual review |
IGNORED | Default 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
INACTIVEstatus - Re-run prerequisite checks such as SWIFT validation or metadata lookup before resubmitting
- Contact the Passport team for accounts in
UNDER_REVIEWor 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.
externalIdmust be unique across all International External Accounts.- Once assigned,
externalIdcannot be updated. - An International External Account in
INACTIVEstatus can be updated. - A Program Manager can delete an International External Account if no transaction has been created using it.
Best Practices
| Practice | Description |
|---|---|
| Use International External Accounts only for customer-owned accounts | Do not use them for third-party recipients; use Contacts instead |
| Validate SWIFT codes before creation | Prevent account creation failures early |
| Run the metadata API before non-USD onboarding | Required to discover country- and currency-specific fields and validations |
| Store the external account identifier | Required for future payout flows and reconciliation |
| Monitor OFAC verification status | International account usability depends on compliance outcome |
| Keep holder address details accurate | Country-specific formatting and PO Box restrictions can block account creation or updates |