Payment stuck
SWIFT payment pending or on hold: what to do next
A SWIFT payment is stuck when a bank holds it, shown by the reason code G002, G003 or G004 (with ACSP, or as PDNG at some banks), or when no bank has updated the status for days. Check the status by UETR to see where it stopped and why, then take the step that matches the reason code.
These reason codes come from the beneficiary’s bank: G003 means it wants documents from the beneficiary, G004 that it is waiting for the cover funds, and G002 that it may confirm the credit only on a later day.
Updated
First, see where it stopped and why
Send the UETR to @swiftarius_bot. The card shows the latest status, the gpi reason code and when the bank reported it, with what to do next. When a bank in the chain reports a hold, you see the hold and its reason in plain words.
Example
UETR cf935c67-a3ac-4d58-b2fc-bf2267a14ecd
PDNG Held for documents · G003
Reported 26 Oct 2026, 16:40 UTC
What to do
The beneficiary’s bank has asked the beneficiary for documents or more information. Ask the beneficiary to contact their bank and quote the UETR.
With watch mode on, SWIFTarius re-checks the payment and messages you as soon as a bank in the chain updates the status, so you know when the hold is released.
Held for documents: G003
G003 comes from the beneficiary’s bank: the credit to the beneficiary’s account is pending until the bank receives the documents it asked for. Under the ISO 20022 definition, the bank has asked the beneficiary for them, so the request is already with the recipient.
- Ask the beneficiary to contact their bank, quote the UETR and provide what it asked for, for example an invoice, a contract or the purpose of the payment.
- If the beneficiary needs papers from you, such as the invoice or the contract, send them to the beneficiary.
- The hold usually lifts once the bank accepts the documents; if they are not provided, the bank can reject the payment.
Waiting for cover funds: G004
In a cover payment, the payment instruction goes straight to the beneficiary’s bank, while the money travels separately through correspondent banks. G004 means the instruction has arrived and the money that covers it has not.
- Ask the sending bank when and through which bank the cover was sent.
- The payment moves on, usually to ACCC, once the cover funds arrive.
Credit may not be confirmed today: G002, or PDNG without a reason
G002 means the beneficiary’s bank may confirm the credit only on a later day, for example after its cut-off time or an internal check, and that it sends the next update itself. A PDNG without a reason code is usually a check at one of the banks.
- Wait until the next business day.
- With G002, if the credit is still not confirmed after two days, ask the beneficiary to check with their bank and quote the UETR.
- With PDNG and no reason code, if the hold lasts more than two days, ask the sending bank what is required to complete the payment.
No movement for days
SWIFT reports that nearly 60% of gpi payments are credited to the beneficiary within 30 minutes and almost 100% within 24 hours. A payment that has shown the same status, often ACSP (in transit), for two days is worth a trace. SWIFTarius flags it in the card: “No movement for 2 d”.
- Check the calendar first: payments wait for cut-off times, weekends and holidays in the currency’s country.
- Ask the sending bank to investigate the payment through SWIFT, for example in SWIFT Case Management or with an MT199 enquiry, and to give you a case reference.
- Send the request in writing; the payment passport has the letter, shown below.
Rejected or cancelled: RJCT and CANC
RJCT: a bank refused the payment
The funds normally go back to the sender, often minus fees. Ask the sending bank for the reason code and when the funds will be returned, and fix the cause before you send the payment again. Reason codes that come with a rejection include:
| Code | Meaning |
|---|---|
| AC01 | The account number is invalid or missing. |
| AC04 | The account is closed. |
| AC06 | The account is blocked. |
| BE01 | The name or identification of the customer does not match the account number. |
| RR03 | The beneficiary’s name or address, needed for regulatory reasons, is missing or insufficient. |
| RR04 | Regulatory reason. |
| AM05 | Duplicate payment. |
| MS03 | The bank has not given a reason. |
| NARR | The reason is given as free text. |
CANC: cancelled at the sender’s request
The payment was stopped before the beneficiary was credited, and the money normally goes back to the sender. If you did not ask for a cancellation, contact the sending bank.
What to ask your bank
Write to the sending bank with the UETR, the amount and the date, and ask for:
- the current status, the last confirmed event and the bank that reported it;
- whether there is a delay, a rejection or a request for documents;
- the exact list of documents and how to submit them, if any are needed;
- a trace through the bank’s channel if there is no final outcome;
- the case reference number and the date of the next update.
The letter in the payment passport asks exactly these questions.
What to ask the beneficiary
- Has the money reached the account? If not, ask them to check with their bank and quote the UETR.
- Has their bank asked them for documents? With G003, their bank is waiting for documents from them.
- Do the payment details match their account: name, account number or IBAN, and bank?
Instead of screenshots, send them a SWIFTarius counterparty link with /share: it opens in their language, shows the status and never the amount.
The payment passport and its draft letter
In the bot, send /passport with the UETR. The payment passport collects everything known about the payment in one PDF: the UETR, the latest status, the amount and value date with where each came from, every bank report in time order and the questions still open. Draft letters to your bank, in English and in your language, come with it.
This is the English letter for a payment on hold. The bot fills in your UETR and the latest status code; add your name and contact details before you send it.
Subject: payment status and trace request, UETR cf935c67-a3ac-4d58-b2fc-bf2267a14ecd Dear Sir or Madam, Please check our payment with UETR cf935c67-a3ac-4d58-b2fc-bf2267a14ecd. The latest status reported for this payment is PDNG; please verify it. Please advise the current status, the last confirmed event and the bank that reported it, and clarify whether there is a delay, a rejection or a request for additional documents. If documents are required, please provide the exact list and the way to submit them. If there is no final outcome, please initiate a trace through the channel available to your bank and provide the case reference number and the date of the next update. We will provide payment details and supporting documents upon your request. [Name, organisation, contact details]
The passport comes with Rescue and the monthly plans: see pricing. What every code means: SWIFT gpi status codes.
Sources
- SWIFT: Swift GPI. The share of gpi payments credited within 30 minutes and within 24 hours
- ISO 20022: External code sets. Definitions of PDNG, RJCT, G002, G003, G004 and the rejection reason codes, August 2026 release
- SWIFT: Universal confirmations. Banks confirm whether a payment was credited, rejected, put on hold or transferred outside SWIFT
Sources accessed 30 October 2026.
First check free
Where is your payment now?
Send the UETR to @swiftarius_bot. SWIFTarius shows what banks report about your payment in plain words, usually in about half a minute. No sign-up and no bank login.