SWIFT GPI Tracker: How to Track Payments in Real Time

International wire transfers have long been a source of frustration. You send money abroad, and then you wait — sometimes for days — with no clear indication of where your funds are or when they will arrive. SWIFT GPI (Global Payments Innovation) was created to solve exactly this problem, and it has fundamentally changed how cross-border payments are tracked.

This guide explains what SWIFT GPI tracking is, how it works, what information it provides, and how you can use it — or an independent alternative — to monitor your international payment in real time.

What Is SWIFT GPI and Why Does It Matter?

SWIFT GPI is a payment tracking standard launched by SWIFT in 2017. Before GPI, cross-border payments moved through a chain of correspondent banks with virtually no transparency. You could send a wire transfer and have no way of knowing whether it had left the first bank, was stuck at an intermediary, or had been rejected entirely.

GPI changed this by requiring participating banks to update the status of every payment at every step of the chain. The result is an end-to-end tracking system — similar in concept to a package tracking number — that follows your money from the sending bank through intermediaries to the beneficiary's bank.

The numbers reflect the scale of this transformation:

These are not just statistics about speed. The real breakthrough is visibility: for the first time, banks (and through them, their customers) can see exactly where a payment is at any given moment.

How SWIFT GPI Tracking Works

At the core of GPI tracking is the UETR — the Unique End-to-End Transaction Reference. This is a 36-character identifier (formatted as a UUID, for example eb6305c2-2ef5-4f16-a8e9-e9e14c2a4b3b) that is assigned when a payment is initiated and stays with it throughout its entire journey. Learn more about the UETR and how to find it.

The UETR has been mandatory on all SWIFT payment messages since November 2018. Every bank that processes the payment — the originator, each intermediary, and the beneficiary's bank — is required to update the payment's status in SWIFT's central tracker database using this UETR.

The tracking data includes:

GPI Tracker vs. Basic Tracking: What Non-Bank Users Can Access

Here is an important distinction that many people miss: full SWIFT GPI tracking data is only available to GPI member banks. As an individual or a business, you cannot log into SWIFT's tracker directly. The detailed chain-of-banks view, with timestamps and fee breakdowns at each hop, is visible only to the financial institutions involved in the transaction.

What you can access depends on your bank and the tools you use:

Through Your Bank

If your bank is a SWIFT GPI member (and most major banks are), you can ask them for the current status of your payment. Some banks expose this in their online banking portal; others require you to call or email the international payments department. The bank sees the full GPI tracker data and can tell you:

Through Independent Tracking Tools

Independent tracking services like Ohmyfin provide basic SWIFT tracking that gives you visibility into your payment's status without needing to contact your bank. Using your UETR or Transaction Reference Number (TRN), you can check whether the payment is in progress, completed, or rejected, and in many cases see which intermediary banks are involved.

This is not the same as full GPI member access — independent tools work with the tracking data that is available outside the closed GPI member network. However, for most users who simply need to know "has my payment arrived?" or "is it stuck somewhere?", this level of visibility is sufficient and far faster than waiting for your bank to respond.

Understanding GPI Status Codes

When you track a SWIFT payment — whether through your bank or an independent tool — you will encounter standardised status codes. These codes tell you exactly where your payment stands. Here are the most common ones:

Primary Status Codes

Detailed GPI Reason Codes

GPI member banks also report more granular reason codes that provide additional context. These are typically shown as a combination of the primary status and a G-code:

For a complete reference of all tracking status codes, see our GPI Status Codes page.

Step by Step: How to Track a Payment Using the UETR

Step 1: Obtain Your UETR

The UETR is the single most important piece of information for tracking. It appears in Block 3, Field 121 of the MT103 message (or its equivalent in the newer pacs.008 format). To get it:

Every SWIFT payment initiated since November 2018 has a UETR. Your bank is required to provide it upon request.

Step 2: Enter the UETR in a Tracking Tool

Go to Ohmyfin's tracker and enter your 36-character UETR. The system will query the available tracking data and return the current status, including which banks have processed the payment and when.

Step 3: Interpret the Results

The tracking result will show you:

If the status shows ACCC, your payment has been delivered. If it shows ACSP with a recent timestamp, the payment is actively being processed. If the last update is more than 2-3 business days old with no progress, it may be time to ask your bank to investigate.

Step 4: Escalate If Necessary

If your payment appears stuck — for example, showing ACSP/G003 (waiting for documents) or no updates for several business days — contact your sending bank and ask them to initiate a payment investigation. Since the ISO 20022 migration in November 2025, investigations use structured camt messages that can resolve issues significantly faster than the old free-text MT199 process.

Limitations of SWIFT GPI for Individual Users

While SWIFT GPI has dramatically improved payment tracking, it is important to understand its limitations — particularly if you are not a bank:

Independent Tracking: The Ohmyfin Approach

Because full GPI data is restricted to member banks, independent tracking tools fill an important gap for individuals and businesses who need payment visibility without relying on bank customer service.

Ohmyfin provides SWIFT payment tracking that works with both UETR and TRN references. The service queries available tracking data and correspondent banking information to give you a clear picture of your payment's status and the banks involved in processing it.

Key capabilities:

This is not a replacement for full GPI access. Rather, it is a practical tool for the majority of users who need to answer straightforward questions: Is my payment still moving? Has it arrived? Is there a problem?

Frequently Asked Questions

What is the difference between SWIFT GPI and regular SWIFT?

Regular SWIFT is the messaging network that banks use to send payment instructions to each other. SWIFT GPI is an additional layer built on top of that network that adds real-time tracking, fee transparency, and speed commitments. Think of SWIFT as the postal system and GPI as the package tracking number. The payment still travels through SWIFT, but GPI makes it visible at every step. All GPI payments use the same SWIFT infrastructure — the difference is that participating banks commit to updating the payment status in real time.

Can I track a SWIFT payment without the UETR?

Yes, but with reduced visibility. If you have the TRN (Transaction Reference Number from Field 20 of the MT103), you can use it to track your payment. The TRN is the sending bank's own reference and is useful for communicating with your bank. However, intermediary banks assign their own references, so the TRN is less reliable for end-to-end tracking than the UETR. If you do not have either reference, contact your sending bank with the payment date, amount, and beneficiary details — they can look up the UETR for you.

Is SWIFT GPI tracking free?

For bank customers, asking your bank for a GPI status update should be free — it is part of the service they provide. Independent tracking tools like Ohmyfin offer free basic tracking. There is no separate fee from SWIFT charged to the person sending or receiving the payment for GPI tracking; the costs are borne by the member banks as part of their GPI membership.

Why does my GPI status show ACSC but the beneficiary has not received the money?

ACSC means "Accepted, Settlement Completed" — this confirms that the beneficiary's bank has received the funds. However, the bank still needs to credit the beneficiary's account, which may involve internal compliance checks, account verification, or manual processing. This is particularly common for large amounts, payments to new beneficiaries, or transfers involving high-risk corridors. The beneficiary should contact their bank directly with the payment details. The final confirmation status is ACCC, which means the beneficiary's account has been credited.

How long does a SWIFT GPI payment take?

SWIFT reports that 50% of GPI payments are credited to the beneficiary's account within 30 minutes, and nearly all arrive within 24 hours. However, actual timing depends on the corridor (which countries are involved), the number of intermediary banks, compliance requirements, time zones, and whether the payment arrives during business hours. Payments between well-connected corridors (e.g., USD between major financial centres) tend to be fastest. Payments to less-connected regions or involving multiple currency conversions may take 1-3 business days. If your payment has not arrived after 3 business days, ask your bank to investigate.

Does SWIFT GPI work for all currencies?

SWIFT GPI currently supports over 150 currencies across 198 countries, covering the vast majority of cross-border payment flows. However, not all currency corridors have the same level of GPI coverage. Major currencies (USD, EUR, GBP, JPY, CHF) have near-universal GPI tracking among correspondent banks. Less commonly traded currencies may pass through non-GPI intermediaries at some point in the chain, reducing tracking visibility. You can check whether your specific payment has GPI tracking by entering the UETR in a tracking tool.


Track Your SWIFT Payments

Create a free account to track international wire transfers and get real-time status updates.