How do I send a transaction to a specific MID based on transaction currency?

There may be cases where you don't want to use Nexio's smart routing feature and you want to send all transactions for a specific transaction currency to one specific merchant account (MID).

You can limit the routing by specifying the processingOptions.merchantId in the transaction request (such as Run card transaction).

The merchantId parameter is a unique code that Nexio assigns to each MID on your account.

Before you begin using merchantId, Nexio recommends that you understand the following notes.



  • When you specify a value for processingOptions.merchantId, Nexio uses only this information to process the transaction. The system will not attempt to use any other possible merchant IDs (MIDs).

    Therefore, using a specific value for this parameter means that Nexio does not attempt any other routing, even if other routing rules or paymentOptionTags have been specified in the account.

  • If the value provided for merchantId in the transaction request is invalid for the account, Nexio sends an error rather than attempt the transaction.

  • If the transaction would be disqualified because of the specified parameter, Nexio responds with an error message and does not attempt to process the transaction further.

To set up merchantId

  1. Contact Integrations Support to learn the merchantId for each MID on your Nexio account.

    Example 1:

    paymentOptionTags for USD as official currency in different countries
    MID #1
    - merchantId is 100000000039
    - USD currency for United States: usa
    - USD currency for Puerto Rico: pri
    - USD currency for Ecuador: ecu
    MID #2
    - merchantId is 100000000041
    - USD currency for Ecuador: ecu
  2. Open the Nexio Dashboard and log in.
    For the sandbox:
    For production:

  3. Go to Settings > Merchant Management.

    A list displays of all merchant accounts for your account, including the merchant ID value.

    Make note of the merchant ID value that you want to use.

  4. For the transaction request, configure the API as follows:

    Each payment request must include the following parameters for payment routing with the merchantId:

    • data.amount
    • data.currency
    • processingOptions.merchantId

What happens when a transaction request includes a merchantId?

After you know and assign the merchantId you want to use to transaction rerquests, the following process happens for each transaction:

  1. A consumer adds an item to the shopping cart and submits payment with a specific transaction currency.

    For example, The consumer with an address in Ecuador uses a card to pay in USD.

    Also, the processingOptions.merchantId parameter is set to '100000000041'.

  2. The Nexio system checks that the MID has support for the transaction currency.

    Example 1:

    For address in Ecuador and MID of 100000000041
    MID #2 is valid because it has support for the currency.

    Example 2:

    For address in Puerto Rico and MID of 100000000041
    Nexio returns an error message because that MID does not support that currency for that country.
  3. The system routes the payment to the MID or responds with an error message.