Steps 1-2: Country, Currency & Amount

The rest of this section assumes that readers are familiar with the main actors in Nexus: Payment Service Providers (PSPs), Instant Payment System Operators (IPSOs), Foreign Exchange Providers (FXPs) and Settlement Account Providers (SAPs).

For a primer on each of these actors please see Chapter 2.3 of the Nexus (2024) report.

The example user journey below demonstrates how an individual Sender would use their existing PSP channel (eg an app) to make a payment through Nexus, and describes the steps taken by Nexus behind the scenes.

Note that there is no "Nexus app" and payment Senders do not register with or interact directly with Nexus. The app shown is a mockup designed to give an example of how a PSP may integrate the service into their own app.

Step 1: Ask the Sender to select the country and currency

  1. Using data retrieved from the GET /countries/ API operation, the Source PSP (Sender's PSP) can display a dropdown Countries list to the Sender via the Source PSP’s app or other channel. (Left and middle figure below.)

  2. The response to GET /countries/ lists all Nexus-enabled countries and the currencies available in that country. If the Sender selects a country with more than one currency, the PSP should immediately:

    1. Display a second form element (eg <select> or <radio>) that lists the currencies available (Right hand screen below.)

    2. Ask the Sender to select the currency that the Recipient expects to receive

  3. The app should store the selected country (and currency, if applicable) in memory, as it will be required when retrieving FX quotes

Step 2: Ask the Sender to define EITHER the amount that should be sent, OR the amount that should be received

On the next screen, the PSP should now generate a form that will allow the user to define either:

  • The amount the Sender wishes to send (the DebtorAccountAmount which will be debited from the Sender/Debtor's account), OR

  • The amount the Sender wishes the Recipient to receive (the CreditorAccountAmount which will be credited to the Recipient/Creditor's account)

Validating maximum transaction amounts in-app

Different IPSs have different limits on the maximum value of a transaction. The GET /quotes/ API operation in Nexus will automatically apply these limits and inform the Source PSP if the requested amount exceeds the Source Currency Amount or Destination Currency Amount at a given exchange rate. However, the PSP can also use client-side validation (eg setting the max attribute of the HTML form input element) to cap the amounts that can be input:

  • The Source Currency Amount field (labelled “You send” in the example screen) can be capped to either:

    • the maximum value of the IPS to which the PSP is connected to. (This should be known by the Source PSP; it could alternatively be retrieved by calling GET /countries/{countryCode}/currencies/{currencyCode}/max-amounts with the country code of the PSP’s home country.), OR

    • the maximum value that the PSP is willing to send (if lower than the local IPS limit)

  • The Destination Currency Amount field (labelled “They receive” in the example screen) should be capped to the maximum defined in the response to GET /countries for the selected Destination Country.

For further details see Maximum value of a Nexus payment

Last updated