Customize a SWIFT wire

Customize wire foreign exchange contracts, charge bearer, and fixed or variable currency

This is a follow up guide to sending a SWIFT wire. Modern Treasury offers a few features for enhancing your SWIFT wires. These are documented in the payment orders overview as well.

Executing foreign exchange contracts

When you send a SWIFT wire, the funds must be converted from your local bank account's currency to the recipient's. Many businesses want to lock in the conversion rate prior to initiating the transfer to get certainty and shield themselves from currency fluctuations.

If you can execute foreign exchange (FX) contracts with your bank, you may pass in a unique identifier for the contract to Modern Treasury when sending the wire. We currently only support this functionality at Wells Fargo and Currencycloud. For Currencycloud, you would pass us the ID of a conversion object.

To pass in a FX contract ID, simply include a value in the foreign_exchange_contract field when creating the payment order.

curl --request POST \
  -u ORGANIZATION_ID:API_KEY \
  --url https://app.moderntreasury.com/api/payment_orders \
  -H 'Content-Type: application/json' \
  -d '{
    "type": "wire",
    "amount": 1000,
    "direction": "credit",
    "currency": "EUR",
    "foreign_exchange_contract": "123456",
    "originating_account_id": "0f8e3719-3dfd-4613-9bbf-c0333781b59f",
    "receiving_account_id": "5acec2ef-987b-4260-aa97-b719eeb0a8d5"
  }'

Setting the charge bearer

When sending a SWIFT wire, you may specify who is liable for the wire fees in the transaction. You would set the charge_bearer to one of the following values: shared, sender, or receiver, which correspond respectively with the SWIFT 71A values SHA, OUR, BEN.

curl --request POST \
  -u ORGANIZATION_ID:API_KEY \
  --url https://app.moderntreasury.com/api/payment_orders \
  -H 'Content-Type: application/json' \
  -d '{
    "type": "wire",
    "amount": 1000,
    "direction": "credit",
    "currency": "EUR",
    "charge_bearer": "shared",
    "originating_account_id": "0f8e3719-3dfd-4613-9bbf-c0333781b59f",
    "receiving_account_id": "5acec2ef-987b-4260-aa97-b719eeb0a8d5"
  }'

Variable-to-fixed vs. Fixed-to-variable

When sending a foreign currency, you may specify which side of the transaction has a fixed currency and which side will fluctuate based on market prices. You would set the foreign_exchange_indicator to either variable_to_fixed or fixed_to_variable

curl --request POST \
  -u ORGANIZATION_ID:API_KEY \
  --url https://app.moderntreasury.com/api/payment_orders \
  -H 'Content-Type: application/json' \
  -d '{
    "type": "wire",
    "amount": 1000,
    "direction": "credit",
    "currency": "EUR",
    "foreign_exchange_indicator": "variable_to_fixed",
    "originating_account_id": "0f8e3719-3dfd-4613-9bbf-c0333781b59f",
    "receiving_account_id": "5acec2ef-987b-4260-aa97-b719eeb0a8d5"
  }'