POST/counterparty/{userId}/counterparties/{counterpartyId}/instrument

Create Payment Instrument (Cross Border)

Creates a cross-border payment instrument for a counterparty. Supports multiple transfer types: GBP Wire, SEPA (EUR), SGD Domestic, AED Domestic, ARS Domestic, AUD Domestic, BRL Domestic, CAD Domestic, CAD Wire, CLP Domestic, COP Domestic, DKK Domestic, EUR Wire, GBP Faster Payments, HKD Domestic, IDR Domestic, JPY Domestic, KRW Domestic, MXN Domestic (CLABE), MYR Domestic, PEN Domestic, THB Domestic, VND Domestic.

Path variables

FieldTypeRequiredPossible valuesDescription
userIdstringRequired—

Unique ID of the user. The user must be active.

counterpartyIdstringRequired—

Unique counterparty ID.

Headers

FieldTypeRequiredPossible valuesDescription
session-tokenstringRequired—

SessionToken obtained from the Create GMA Session endpoint. All secured endpoints require this header.

Request body

FieldTypeRequiredPossible valuesDescription
CurrencystringRequiredGBP | EUR | SGD | AED | ARS | AUD | BRL | CAD | CLP | COP | DKK | JPY | MXN | HKD | IDR | KRW | MYR | PEN | THB | VND | ZAR

Target currency for the cross-border payment.

TransferTypestringRequiredCROSS_BORDER_AED_DOMESTIC | CROSS_BORDER_AED_WIRE | CROSS_BORDER_ARS_DOMESTIC | CROSS_BORDER_BRL_DOMESTIC | CROSS_BORDER_CAD_DOMESTIC | CROSS_BORDER_CAD_WIRE | CROSS_BORDER_SEPA | CROSS_BORDER_EUR_WIRE | CROSS_BORDER_FASTER_PAYMENTS | CROSS_BORDER_GBP_WIRE | CROSS_BORDER_HKD_DOMESTIC | CROSS_BORDER_HKD_WIRE | CROSS_BORDER_JPY_DOMESTIC | CROSS_BORDER_JPY_WIRE | CROSS_BORDER_CLABE | CROSS_BORDER_MXN_WIRE | CROSS_BORDER_SGD_DOMESTIC | CROSS_BORDER_SGD_WIRE | CROSS_BORDER_ZAR_DOMESTIC | CROSS_BORDER_ZAR_WIRE | CROSS_BORDER_CLP_DOMESTIC | CROSS_BORDER_COP_DOMESTIC | CROSS_BORDER_DKK_DOMESTIC | CROSS_BORDER_IDR_DOMESTIC | CROSS_BORDER_PEN_DOMESTIC | CROSS_BORDER_AUD_DOMESTIC | CROSS_BORDER_MYR_DOMESTIC | CROSS_BORDER_KRW_DOMESTIC | CROSS_BORDER_THB_DOMESTIC | CROSS_BORDER_VND_DOMESTIC

Cross-border transfer type.

CustomValuesobjectOptional{ Nickname, Iban, SwiftBic, BankName, BankCountry, AccountNumber, RoutingCode, IdentityType, IdentityNumber, IdentityExpirationDate, PhoneNumber, BranchNumber, AccountType, TaxId, CBU, OriginatorIdentityType, OriginatorIdentityNumber, SourceOfFunds }

Bank and beneficiary details of the instrument. The applicable sub-fields depend on the selected TransferType — see the hint below the table.

CustomValues.NicknamestringOptional—

Display name for the instrument. Applies to every cross-border transfer type.

CustomValues.IbanstringOptional—

IBAN of the beneficiary account. Used by SEPA, EUR/GBP wire and AED transfer types.

CustomValues.SwiftBicstringOptional—

SWIFT/BIC code of the beneficiary bank. Used by SEPA, SGD and wire transfer types.

CustomValues.BankNamestringOptional—

Name of the beneficiary bank.

CustomValues.BankCountrystringOptionale.g. US | GB | DE

ISO 3166-1 alpha-2 country code of the beneficiary bank.

CustomValues.AccountNumberstringOptional—

Beneficiary account number. Used by most local/domestic transfer types.

CustomValues.RoutingCodestringOptional—

Local routing code of the beneficiary bank. Used by SGD Domestic.

CustomValues.IdentityTypestringOptionalPASSPORT | DRIVING_LICENSE | NATIONAL_ID

Type of the beneficiary identity document. Used by AED, BRL, CLP, COP, PEN and THB transfer types.

CustomValues.IdentityNumberstringOptional—

Identity document number matching IdentityType.

CustomValues.IdentityExpirationDatestringOptionalYYYY-MM-DD

Expiry date of the identity document in YYYY-MM-DD format. Used by AED transfer types. Must have at least 6 months remaining before expiration.

CustomValues.PhoneNumberstringOptional—

Beneficiary phone number in E.164 format. Used by AED, COP and KRW transfer types.

CustomValues.BranchNumberstringOptional—

Branch number of the beneficiary bank. Used by BRL, DKK and AUD transfer types.

CustomValues.AccountTypestringOptionalSaving | Checking

Type of the beneficiary bank account. Used by BRL, CLP, COP and PEN transfer types.

CustomValues.TaxIdstringOptional—

Beneficiary tax identification number. Used by CLP, COP and PEN transfer types.

CustomValues.CBUstringOptional—

Clave Bancaria Uniforme of the beneficiary account. Used by ARS Domestic.

CustomValues.OriginatorIdentityTypestringOptionalPASSPORT | NATIONAL_ID | DRIVING_LICENSE

Type of the originator identity document. Used by IDR Domestic.

CustomValues.OriginatorIdentityNumberstringOptional—

Originator identity document number. Used by IDR and MYR transfer types.

CustomValues.SourceOfFundsstringOptionalCASH | BUSINESS | GIFT | SALARY | LOTTERY | SAVINGS | OTHER

Source of the funds being sent. Used by MYR Domestic.

Example request

{
  "Currency": "GBP",
  "TransferType": "CROSS_BORDER_GBP_WIRE",
  "CustomValues": {
    "Nickname": "UK Wire Account",
    "Iban": "GB29NWBK60161331926819",
    "SwiftBic": "NWBKGB2L",
    "BankName": "National Westminster Bank",
    "BankCountry": "GB"
  }
}

ℹ  Note

CustomValues fields vary by TransferType. Nickname, Iban, SwiftBic, BankName and BankCountry are the common fields. Retrieve the exact required fields for the corresponding transfer type from the Get Required Fields for Instruments endpoint.

  • SEPA — Iban, SwiftBic
  • SGD — AccountNumber, SwiftBic, RoutingCode
  • AED — Iban, IdentityType, IdentityNumber, IdentityExpirationDate, PhoneNumber
  • BRL — AccountNumber, BranchNumber, IdentityType, IdentityNumber, AccountType
  • ARS — CBU
  • COP — AccountNumber, AccountType, TaxId, PhoneNumber, IdentityType, IdentityNumber
  • CLP — AccountNumber, AccountType, TaxId, IdentityType, IdentityNumber
  • DKK — AccountNumber, BranchNumber
  • IDR — AccountNumber, OriginatorIdentityType, OriginatorIdentityNumber
  • PEN — AccountNumber, AccountType, TaxId, IdentityType, IdentityNumber
  • AUD — AccountNumber, BranchNumber
  • MYR — AccountNumber, OriginatorIdentityNumber, SourceOfFunds
  • KRW — AccountNumber, PhoneNumber
  • THB — AccountNumber, IdentityType, IdentityNumber
  • VND — AccountNumber

Response

FieldTypePossible valuesDescription
ResponseCodeinteger200 | 201 | 204 | 301 | 400 | 401 | 403 | 404 | 410 | 422 | 500 | 503

API result code in the response envelope. Indicates success or the error category (e.g. 200 success, 400 bad request, 401 unauthorized).

ResponseMessagestringSuccess | Created | NoContent | BadRequest | Unauthorized | Forbidden | NotFound | Gone | UnprocessableContent | ServerError | ResourceMoved | ServiceUnAvailable | UnProcessableEntity

Human-readable label paired with ResponseCode (e.g. Success, BadRequest, Unauthorized). Use with ResponseCode to interpret the outcome.

ResponseDataobjectPlease refer to below example for response body

ID of the newly created cross-border payment instrument.

Example response

{
  "ResponseCode": 200,
  "ResponseMessage": "Success",
  "ResponseData": "-8134735344136966182"
}

CustomValues fields vary significantly by TransferType. Use Get Required Fields to retrieve the exact field schema for each transfer type.

Requires `session-token: {SessionToken}` from Create GMA Session. Use the same client IP as authentication.

Search guide books, endpoints, paths, or parameters

↑↓navigate↵openEscclose