ISO 20022
How miaPOS speaks ISO 20022 to bank backends. Dual-signal inbound (pacs.008 + pacs.002), structural envelope, JSON projection of XML.
Overview
miaPOS exchanges payment messages with bank backends in ISO 20022 format. The internal representation is a structural envelope — a JSON projection of the XML that preserves nesting and semantics without forcing developers to write XSDs.
Dual-signal inbound
For redundancy and richer payer data, miaPOS accepts both pacs.008 (credit transfer) and pacs.002 (status report) from the bank for the same payment. The two messages are correlated by transaction reference; whichever arrives first triggers settlement, the second confirms.
Structural envelope
{
"header": {
"messageId": "MIA20260530001",
"creationDate": "2026-05-30T14:23:45Z",
"msgType": "pacs.008.001.10"
},
"body": {
"grpHdr": { /* GroupHeader */ },
"cdtTrfTxInf": [
{ /* CreditTransferTransactionInformation */ }
]
}
}
Supported messages
pacs.008— FIToFICustomerCreditTransfer (inbound + outbound)pacs.002— FIToFIPaymentStatusReport (inbound, dual-signal)pain.013— CreditorPaymentActivationRequest (Request to Pay)pain.014— CreditorPaymentActivationResponse
Out of scope: pain.001 (use pacs.008 direct), camt.052/053 (settlement reporting handled separately).