ISO 20022 payment status
CPUC: Cash picked up by creditor
The creditor has collected the cash. CPUC is a payment status your bank reports in a pain.002 status report (banks report it to each other in pacs.002).
| Code | CPUC |
|---|---|
| Name | Cash picked up by creditor |
| Outcome | Settled |
| Reported for | a single transaction (TxSts), in pain.002.001.08 and later |
| Messages | pain.002 (bank to customer), pacs.002 (bank to bank) |
What CPUC means
For a payment the creditor collects in cash: the creditor has picked the cash up.
CPUC exists for payments paid out in cash rather than to an account, such as a remittance the creditor collects at a bank branch or a cash agent. There is no account to credit, so CPUC plays the part ACCC plays for an account payment: it confirms the money reached the creditor. Companies’ payment files rarely contain cash payouts, so many treasury teams never see it.
Where CPUC appears
A status report answers a payment file (pain.001 or pain.008) at up to three levels: the whole message in OrgnlGrpInfAndSts/GrpSts, a payment block in OrgnlPmtInfAndSts/PmtInfSts, and one transaction in TxInfAndSts/TxSts. CPUC may be reported for a single transaction (TxSts), in pain.002.001.08 and later; the Payment File Viewer warns when a status sits at a level its ISO code list does not cover.
<OrgnlGrpInfAndSts>
<OrgnlMsgId>NWT-PAY-20261028-03</OrgnlMsgId>
<OrgnlMsgNmId>pain.001.001.09</OrgnlMsgNmId>
</OrgnlGrpInfAndSts>
<OrgnlPmtInfAndSts>
<OrgnlPmtInfId>PMT-20261028-03</OrgnlPmtInfId>
<TxInfAndSts>
<OrgnlEndToEndId>NW-2026-403</OrgnlEndToEndId>
<TxSts>CPUC</TxSts>
</TxInfAndSts>
</OrgnlPmtInfAndSts>The transactions are matched to your file by OrgnlEndToEndId (and OrgnlInstrId), the blocks by OrgnlPmtInfId and the file by OrgnlMsgId.
What comes next, and what to do
- What usually follows: Nothing: the payment is complete.
- What to do: Close the payment in your books.
Not every bank sends every status: many report only rejections, or only a few steps of the flow. Your bank’s implementation guide lists the statuses it uses.
Look up CPUC from a script or an AI agent
Scripts and AI agents get this code’s name, definition, where it sits and the address of this page from GET /api/v1/explain, keyless, or from the explain_code tool of the MCP server (API and MCP docs; add it to Claude, Cursor or VS Code).
curl -s 'https://iso20022-navigator.com/api/v1/explain?code=CPUC&kind=payment_status'