Main Use cases
The API allows to:
- send a package of signed domestic payments (hereinafter a Mass payment) to the bank in the pain.001.001 format
- request for the status of the Mass payment in the format pain.002.001
- request for the status of a each payment as part of the Mass payment in the pain.002.001 format
- request the processing status of the Mass payment and each payment within it you in the pain.002.001 format
Sending a signed Mass payment to the bank
To send a signed Mass payment to the bank, you should:
- get AccessToken
- generate an xml file in the Pain.001.001 format containing domestic payments (see the format specification on the page Import format in the file Raiffeisen_API_isoxml_signed)
- send a POST request message to the /dsig/iso20022 address, issuing the generated xml file in the body of the request
- receive a synchronous response with message receipt status
An example of Pain.001.001 message
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<Document xmlns="urn:iso:std:iso:20022:tech:xsd:pain.001.001.raifsig" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
<CstmrCdtTrfInitn>
<GrpHdr>
<MsgId>ORCRUWIRE0320202317717602</MsgId>
<CreDtTm>2023-02-28T05:54:55</CreDtTm>
<NbOfTxs>2</NbOfTxs>
<CtrlSum>1000.08</CtrlSum>
<InitgPty>
<Nm>ООО Компания Интернэшнл</Nm>
<Id>
<OrgId>
<Othr>
<Id>1111111118</Id>
<SchmeNm>
<Cd>TXID</Cd>
</SchmeNm>
</Othr>
</OrgId>
</Id>
</InitgPty>
</GrpHdr>
<PmtInf>
<PmtInfId>ORCRUWIRE0220202317717603</PmtInfId>
<PmtMtd>TRF</PmtMtd>
<Dbtr>
<Nm>ООО Компания Интернэшнл</Nm>
<Id>
<OrgId>
<Othr>
<Id>1111111118</Id>
<SchmeNm>
<Cd>TXID</Cd>
</SchmeNm>
</Othr>
</OrgId>
</Id>
</Dbtr>
<DbtrAcct>
<Id>
<Othr>
<Id>11111810211111888888</Id>
<SchmeNm>
<Cd>BBAN</Cd>
</SchmeNm>
</Othr>
</Id>
</DbtrAcct>
<DbtrAgt>
<FinInstnId>
<ClrSysMmbId>
<ClrSysId>
<Cd>RUCBC</Cd>
</ClrSysId>
<MmbId>044525700</MmbId>
</ClrSysMmbId>
<Nm>a</Nm>
</FinInstnId>
</DbtrAgt>
<DbtrAgtAcct>
<Id>
<Othr>
<Id>30101810200000000700</Id>
<SchmeNm>
<Cd>BBAN</Cd>
</SchmeNm>
</Othr>
</Id>
</DbtrAgtAcct>
<CdtTrfTxInf>
<PmtId>
<InstrId>HMSRUEFT7841912</InstrId>
<EndToEndId>3</EndToEndId>
</PmtId>
<PmtTpInf>
<SvcLvl>
<Cd>NURG</Cd>
</SvcLvl>
<LclInstrm>
<Prtry>01</Prtry>
</LclInstrm>
</PmtTpInf>
<Amt>
<InstdAmt Ccy="RUB">500.00</InstdAmt>
</Amt>
<CdtrAgt>
<FinInstnId>
<ClrSysMmbId>
<ClrSysId>
<Cd>RUCBC</Cd>
</ClrSysId>
<MmbId>044525787</MmbId>
</ClrSysMmbId>
<Nm>a</Nm>
</FinInstnId>
</CdtrAgt>
<CdtrAgtAcct>
<Id>
<Othr>
<Id>a</Id>
<SchmeNm>
<Cd>BBAN</Cd>
</SchmeNm>
</Othr>
</Id>
</CdtrAgtAcct>
<Cdtr>
<Nm>ООО ТРОЯН</Nm>
<Id>
<OrgId>
<Othr>
<Id>7734527918</Id>
<SchmeNm>
<Cd>TXID</Cd>
</SchmeNm>
</Othr>
</OrgId>
</Id>
</Cdtr>
<CdtrAcct>
<Id>
<Othr>
<Id>40702810500360001171</Id>
<SchmeNm>
<Cd>BBAN</Cd>
</SchmeNm>
</Othr>
</Id>
</CdtrAcct>
<Purp>
<Prtry>5</Prtry>
</Purp>
<RmtInf>
<Ustrd>Оплата сч.№ 23 от 15/02/23 абон.плата по дог.№11111 от22/07/21г за март 2023, в т.ч.НДС 83,33 руб.</Ustrd>
<Strd>
<RfrdDocInf>
<RltdDt>2023-02-28</RltdDt>
</RfrdDocInf>
</Strd>
</RmtInf>
</CdtTrfTxInf>
</PmtInf>
<PmtInf>
<PmtInfId>ORCRUWIRE0220202317717604</PmtInfId>
<PmtMtd>TRF</PmtMtd>
<Dbtr>
<Nm>ООО Компания Интернэшнл</Nm>
<Id>
<OrgId>
<Othr>
<Id>111111111888</Id>
<SchmeNm>
<Cd>TXID</Cd>
</SchmeNm>
</Othr>
</OrgId>
</Id>
</Dbtr>
<DbtrAcct>
<Id>
<Othr>
<Id>11111810211111888888</Id>
<SchmeNm>
<Cd>BBAN</Cd>
</SchmeNm>
</Othr>
</Id>
</DbtrAcct>
<DbtrAgt>
<FinInstnId>
<ClrSysMmbId>
<ClrSysId>
<Cd>RUCBC</Cd>
</ClrSysId>
<MmbId>044525700</MmbId>
</ClrSysMmbId>
<Nm>a</Nm>
</FinInstnId>
</DbtrAgt>
<DbtrAgtAcct>
<Id>
<Othr>
<Id>30101810200000000700</Id>
<SchmeNm>
<Cd>BBAN</Cd>
</SchmeNm>
</Othr>
</Id>
</DbtrAgtAcct>
<CdtTrfTxInf>
<PmtId>
<InstrId>HMSRUEFT7841913</InstrId>
<EndToEndId>4</EndToEndId>
</PmtId>
<PmtTpInf>
<SvcLvl>
<Cd>NURG</Cd>
</SvcLvl>
<LclInstrm>
<Prtry>01</Prtry>
</LclInstrm>
</PmtTpInf>
<Amt>
<InstdAmt Ccy="RUB">500.08</InstdAmt>
</Amt>
<CdtrAgt>
<FinInstnId>
<ClrSysMmbId>
<ClrSysId>
<Cd>RUCBC</Cd>
</ClrSysId>
<MmbId>044525411</MmbId>
</ClrSysMmbId>
<Nm>a</Nm>
</FinInstnId>
</CdtrAgt>
<CdtrAgtAcct>
<Id>
<Othr>
<Id>a</Id>
<SchmeNm>
<Cd>BBAN</Cd>
</SchmeNm>
</Othr>
</Id>
</CdtrAgtAcct>
<Cdtr>
<Nm>ООО Софт</Nm>
<Id>
<OrgId>
<Othr>
<Id>7720714403</Id>
<SchmeNm>
<Cd>TXID</Cd>
</SchmeNm>
</Othr>
</OrgId>
</Id>
</Cdtr>
<CdtrAcct>
<Id>
<Othr>
<Id>40702810400000019354</Id>
<SchmeNm>
<Cd>BBAN</Cd>
</SchmeNm>
</Othr>
</Id>
</CdtrAcct>
<Purp>
<Prtry>5</Prtry>
</Purp>
<Tax>
<Rcrd>
<TaxAmt>
<Rate>10</Rate>
<TtlAmt Ccy="RUB">52.09</TtlAmt>
</TaxAmt>
<AddtlInf>VTIN</AddtlInf>
</Rcrd>
</Tax>
<RmtInf>
<Ustrd>Оплата сч.№6 от 01.02.23г по дог.№ 2 от 24/08/22</Ustrd>
<Strd>
<RfrdDocInf>
<RltdDt>2023-02-28</RltdDt>
</RfrdDocInf>
</Strd>
</RmtInf>
</CdtTrfTxInf>
</PmtInf>
<SplmtryData>
<Envlp>
<SgntrSt>
<ds:Signature Id="SigID1">
<ds:SignedInfo>
<ds:CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/>
<ds:SignatureMethod Algorithm="urn:ietf:params:xml:ns:cpxmlsec:algorithms:gostr34102012-gostr34112012-256"/>
<ds:Reference URI="">
<ds:Transforms>
<ds:Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature"/>
<ds:Transform Algorithm="http://www.w3.org/2002/06/xmldsig-filter2">
<XPath xmlns="http://www.w3.org/2002/06/xmldsig-filter2" Filter="subtract">//ds:Signature</XPath>
</ds:Transform>
</ds:Transforms>
<ds:DigestMethod Algorithm="urn:ietf:params:xml:ns:cpxmlsec:algorithms:gostr34112012-256"/>
<ds:DigestValue>2oMe1BaO2Nd8qBxdDbtv78WCYgmhbZBJdjgHrwId9oc=</ds:DigestValue>
</ds:Reference>
</ds:SignedInfo>
<ds:SignatureValue>/xB3sjzeeJu9n2+JJlVVgEz8sLKm3IE5KBXrq2o9UlMISwpvzepjemPAHhhHrcta
HJzTHZzvrPuwZKP5o2dDZQ==</ds:SignatureValue>
<ds:KeyInfo>
<ds:X509Data>
<ds:X509Certificate>MIIFNzCCBOSgAwIBAgITfAAGJ4osQ81SjFsaoQABAAYnijAKBggqhQMHAQEDAjCC
AQoxGDAWBgUqhQNkARINMTIzNDU2Nzg5MDEyMzEaMBgGCCqFAwOBAwEBEgwwMDEy
MzQ1Njc4OTAxLzAtBgNVBAkMJtGD0LsuINCh0YPRidGR0LLRgdC60LjQuSDQstCw
0Lsg0LQuIDE4MQswCQYDVQQGEwJSVTEZMBcGA1UECAwQ0LMuINCc0L7RgdC60LLQ
sDEVMBMGA1UEBwwM0JzQvtGB0LrQstCwMSUwIwYDVQQKDBzQntCe0J4gItCa0KDQ
mNCf0KLQni3Qn9Cg0J4iMTswOQYDVQQDDDLQotC10YHRgtC+0LLRi9C5INCj0KYg
0J7QntCeICLQmtCg0JjQn9Ci0J4t0J/QoNCeIjAeFw0yMjA3MjYxMzI3NTBaFw0y
MjEwMjYxMzM3NTBaMIHIMSMwIQYJKoZIhvcNAQkBFhR4bi0tIC03c2JiM2FpcXJ5
MWI5ZjEcMBoGA1UEAwwT0J/RgtC40YbQsCDQnNCw0LnRjzEcMBoGA1UECwwT0J/R
gtC40YbQsCDQnNCw0LnRjzEcMBoGA1UECgwT0J/RgtC40YbQsCDQnNCw0LnRjzEc
MBoGA1UEBwwT0J/RgtC40YbQsCDQnNCw0LnRjzEcMBoGA1UECAwT0J/RgtC40YbQ
sCDQnNCw0LnRjzELMAkGA1UEBhMCUlUwZjAfBggqhQMHAQEBATATBgcqhQMCAiQA
BggqhQMHAQECAgNDAARAYFH9oNuJigPZ8GPZWvu6LF0L8pTCaJ4nN7r0PEdeC7gV
j7fu3V5hW7BxcYB+ixoDF3szm1xmvVCZB1lMXhR35KOCAlkwggJVMA4GA1UdDwEB
/wQEAwIE8DATBgNVHSUEDDAKBggrBgEFBQcDAjAdBgNVHQ4EFgQUzS2ChkN9FatS
4zE+GSu2OweIo8MwHwYDVR0jBBgwFoAUm4Ve+4HcTVkHUWPPvt/aLH/JRDwwggEP
BgNVHR8EggEGMIIBAjCB/6CB/KCB+YaBtWh0dHA6Ly90ZXN0Z29zdDIwMTIuY3J5
cHRvcHJvLnJ1L0NlcnRFbnJvbGwvITA0MjIhMDQzNSEwNDQxITA0NDIhMDQzZSEw
NDMyITA0NGIhMDQzOSUyMCEwNDIzITA0MjYlMjAhMDQxZSEwNDFlITA0MWUlMjAh
MDAyMiEwNDFhITA0MjAhMDQxOCEwNDFmITA0MjIhMDQxZS0hMDQxZiEwNDIwITA0
MWUhMDAyMigxKS5jcmyGP2h0dHA6Ly90ZXN0Z29zdDIwMTIuY3J5cHRvcHJvLnJ1
L0NlcnRFbnJvbGwvdGVzdGdvc3QyMDEyKDEpLmNybDCB2gYIKwYBBQUHAQEEgc0w
gcowRAYIKwYBBQUHMAKGOGh0dHA6Ly90ZXN0Z29zdDIwMTIuY3J5cHRvcHJvLnJ1
L0NlcnRFbnJvbGwvcm9vdDIwMTguY3J0MD8GCCsGAQUFBzABhjNodHRwOi8vdGVz
dGdvc3QyMDEyLmNyeXB0b3Byby5ydS9vY3NwMjAxMmcvb2NzcC5zcmYwQQYIKwYB
BQUHMAGGNWh0dHA6Ly90ZXN0Z29zdDIwMTIuY3J5cHRvcHJvLnJ1L29jc3AyMDEy
Z3N0L29jc3Auc3JmMAoGCCqFAwcBAQMCA0EA7VdgJhf5KOM7uRfpzx4hqRtZLJ/D
KqIl5+iFpeROGTGe9HorbwNA+I3cQkumQ8OLiUPAJAm0MmeRFz2OJeNw8w==</ds:X509Certificate>
</ds:X509Data>
</ds:KeyInfo>
</ds:Signature>
<ds:Signature Id="SigID2">
<ds:SignedInfo>
<ds:CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/>
<ds:SignatureMethod Algorithm="urn:ietf:params:xml:ns:cpxmlsec:algorithms:gostr34102012-gostr34112012-256"/>
<ds:Reference URI="">
<ds:Transforms>
<ds:Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature"/>
<ds:Transform Algorithm="http://www.w3.org/2002/06/xmldsig-filter2">
<XPath xmlns="http://www.w3.org/2002/06/xmldsig-filter2" Filter="subtract">//ds:Signature</XPath>
</ds:Transform>
</ds:Transforms>
<ds:DigestMethod Algorithm="urn:ietf:params:xml:ns:cpxmlsec:algorithms:gostr34112012-256"/>
<ds:DigestValue>2oMe1BaO2Nd8qBxdDbtv78WCYgmhbZBJdjgHrwId9oc=</ds:DigestValue>
</ds:Reference>
</ds:SignedInfo>
<ds:SignatureValue>dB69wTy2QLYv7hFLj99OPULdeDZTe7Ugk1P1QydlEbcT9+JKpv/DSodIM8QGV19r
wWUrK+bz0b6c8iE0Wjx2gQ==</ds:SignatureValue>
<ds:KeyInfo>
<ds:X509Data>
<ds:X509Certificate>MIIE2zCCBIigAwIBAgITfAAGyfb/eHg2bqfbbgABAAbJ9jAKBggqhQMHAQEDAjCC
AQoxGDAWBgUqhQNkARINMTIzNDU2Nzg5MDEyMzEaMBgGCCqFAwOBAwEBEgwwMDEy
MzQ1Njc4OTAxLzAtBgNVBAkMJtGD0LsuINCh0YPRidGR0LLRgdC60LjQuSDQstCw
0Lsg0LQuIDE4MQswCQYDVQQGEwJSVTEZMBcGA1UECAwQ0LMuINCc0L7RgdC60LLQ
sDEVMBMGA1UEBwwM0JzQvtGB0LrQstCwMSUwIwYDVQQKDBzQntCe0J4gItCa0KDQ
mNCf0KLQni3Qn9Cg0J4iMTswOQYDVQQDDDLQotC10YHRgtC+0LLRi9C5INCj0KYg
0J7QntCeICLQmtCg0JjQn9Ci0J4t0J/QoNCeIjAeFw0yMjEwMDUxMjM1MTlaFw0y
MzAxMDUxMjQ1MTlaMG0xEzARBgkqhkiG9w0BCQEWBG1pdmkxDTALBgNVBAMMBG1p
dmkxDTALBgNVBAsMBG1pdmkxDTALBgNVBAoMBG1pdmkxDTALBgNVBAcMBG1pdmkx
DTALBgNVBAgMBG1pdmkxCzAJBgNVBAYTAlJVMGYwHwYIKoUDBwEBAQEwEwYHKoUD
AgIkAAYIKoUDBwEBAgIDQwAEQC38SG2Ni66RLRWqEneBHrYnDS9yx9jc/0ocL9Ra
iiXc9dw8dK6VkaTSPpUSt9l9hfP8lSsVu7Ufcpm1Y+83zbejggJZMIICVTAOBgNV
HQ8BAf8EBAMCBPAwEwYDVR0lBAwwCgYIKwYBBQUHAwIwHQYDVR0OBBYEFEMTlE+X
fcoqem3M7tpzIdtYyl5tMB8GA1UdIwQYMBaAFJuFXvuB3E1ZB1Fjz77f2ix/yUQ8
MIIBDwYDVR0fBIIBBjCCAQIwgf+ggfyggfmGgbVodHRwOi8vdGVzdGdvc3QyMDEy
LmNyeXB0b3Byby5ydS9DZXJ0RW5yb2xsLyEwNDIyITA0MzUhMDQ0MSEwNDQyITA0
M2UhMDQzMiEwNDRiITA0MzklMjAhMDQyMyEwNDI2JTIwITA0MWUhMDQxZSEwNDFl
JTIwITAwMjIhMDQxYSEwNDIwITA0MTghMDQxZiEwNDIyITA0MWUtITA0MWYhMDQy
MCEwNDFlITAwMjIoMSkuY3Jshj9odHRwOi8vdGVzdGdvc3QyMDEyLmNyeXB0b3By
by5ydS9DZXJ0RW5yb2xsL3Rlc3Rnb3N0MjAxMigxKS5jcmwwgdoGCCsGAQUFBwEB
BIHNMIHKMEQGCCsGAQUFBzAChjhodHRwOi8vdGVzdGdvc3QyMDEyLmNyeXB0b3By
by5ydS9DZXJ0RW5yb2xsL3Jvb3QyMDE4LmNydDA/BggrBgEFBQcwAYYzaHR0cDov
L3Rlc3Rnb3N0MjAxMi5jcnlwdG9wcm8ucnUvb2NzcDIwMTJnL29jc3Auc3JmMEEG
CCsGAQUFBzABhjVodHRwOi8vdGVzdGdvc3QyMDEyLmNyeXB0b3Byby5ydS9vY3Nw
MjAxMmdzdC9vY3NwLnNyZjAKBggqhQMHAQEDAgNBAGX2jH2Gy37Cg3PGArV+Na5d
iGlTWSINc8R2lqHH3UXCEeiBGOE4xaXYOaUDpiCzA4ZSh8vMmIbRTFLof8egPIQ=</ds:X509Certificate>
</ds:X509Data>
</ds:KeyInfo>
</ds:Signature>
</SgntrSt>
</Envlp>
</SplmtryData>
</CstmrCdtTrfInitn>
</Document>
After POST request execution the bank synchronously returns response with the message receipt status.
Response codes
| Rest code | Message receipt status | Reason description ENG | Reason description RUS |
|---|---|---|---|
| 200 | Created | The message successfully is accepted by the bank | Cообщение успешно принято банком |
| 400 | Bad request | XML validation error | Ошибка валидации XML |
| 401 | Unauthorized | Authorization error | Ошибка авторизации |
| 403 | Forbidden | An access is denied | Доступ к запрошенному ресурсу запрещен |
| 413 | Payload too large | Size of the file exceeds the limit | Размер файла превышает допустимый |
| 500 | Internal Server Error | An unexpected error has occurred (server unavailablity, etc.) | Произошла непредвиденная ошибка (недоступность сервера и т.д.) |
The message receipt status in Pain.002.001 format is returned by the bank additionally to the standard REST codes. It’s published in the body of the response message as well as an additional text description of the error.
In Pain.002.001 format response there are two possible statuses:
- PDNG - message has received by the bank
- RJCT - message has rejected by the bank
Example of a response when the message is successfully accepted by the bank (code 200+ISO PDNG )
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Document xmlns="urn:iso:std:iso:20022:tech:xsd:pain.002.001.12">
<CstmrPmtStsRpt>
<GrpHdr>
<MsgId>087845946c5f490bad0d8ec19059357c</MsgId>
<CreDtTm>2023-02-28T16:24:34.966268+03:00</CreDtTm>
<InitgPty>
<Nm>АО Райффайзенбанк</Nm>
<PstlAdr>
<Ctry>RU</Ctry>
</PstlAdr>
</InitgPty>
</GrpHdr>
<OrgnlGrpInfAndSts>
<OrgnlMsgId>77700000000000h000000f0011fa57</OrgnlMsgId>
<OrgnlMsgNmId>pain.001.001.raif</OrgnlMsgNmId>
<OrgnlCreDtTm>2022-11-17T15:46:15Z</OrgnlCreDtTm>
<OrgnlNbOfTxs>1</OrgnlNbOfTxs>
<OrgnlCtrlSum>30.23</OrgnlCtrlSum>
<GrpSts>PDNG</GrpSts>
</OrgnlGrpInfAndSts>
</CstmrPmtStsRpt>
</Document>
The message may not be accepted (code ISO=RJCT) in the following cases:
- an authentication on the API Portal was not successful
- an authorization in the CIB Ruble payments service was not successful:
- the user who initiates the request is not a user of the company on behalf of which the message is initiated
- the user who initiates the request does not have enough rights and permissions to execute this request
- the company does not have contracts that allow the use of this service
- the xml file in the body of request does not match to the xsd scheme
Example of a response when the message is rejected by the bank (code 400+ ISO code RJCT)
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Document xmlns="urn:iso:std:iso:20022:tech:xsd:pain.002.001.12">
<CstmrPmtStsRpt>
<GrpHdr>
<MsgId>e61f35da3d2e41889f3ebbecf8dc7ffe</MsgId>
<CreDtTm>2023-06-19T07:55:23.147Z</CreDtTm>
<InitgPty>
<Nm>АО Райффайзенбанк</Nm>
<PstlAdr>
<Ctry>RU</Ctry>
</PstlAdr>
</InitgPty>
</GrpHdr>
<OrgnlGrpInfAndSts>
<OrgnlMsgNmId>pain.001.001.raif</OrgnlMsgNmId>
<GrpSts>RJCT</GrpSts>
<StsRsnInf>
<AddtlInf>Schema validation error</AddtlInf>
<AddtlInf>FATAL_ERROR: cvc-complex-type.2.4.a: Invalid content was found starting with element '{"urn:iso:std:iso:20022:tech:xsd:pain.001.001.raif":Sc</AddtlInf>
<AddtlInf>hmeNm}'. One of '{"urn:iso:std:iso:20022:tech:xsd:pain.001.001.raif":Id}' is expected.</AddtlInf>
<AddtlInf>line: 14; column: 8; </AddtlInf>
</StsRsnInf>
</OrgnlGrpInfAndSts>
</CstmrPmtStsRpt>
</Document>
Detailed information about an error is sent in the AddtLInf tag of the response message by the following way:
<AddtlInf> Schema validation error </AddtlInf>- a general reason of message reject by the bank<AddtlInf>FATAL_ERROR: cvc-complex-type.2.4.a: Invalid content was found starting with element '{"urn:iso:std:iso:20022:tech:xsd:pain.001.001.raif":Sc</AddtlInf><AddtlInf>hmeNm}'. One of '{"urn:iso:std:iso:20022:tech:xsd:pain.001.001.raif":Id}' is expected.</AddtlInf>- detailed text description of an error<AddtlInf> line: 1; column: 808; </AddtlInf>- the closing tag location within a file, where the error presented
The Schema validation error returns on the first error was found, thus only this error details will be reflected in the response message.
Example of a response when the message is rejected by the bank (code 401+ ISO code RJCT)
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Document xmlns="urn:iso:std:iso:20022:tech:xsd:pain.002.001.12">
<CstmrPmtStsRpt>
<GrpHdr>
<MsgId>1b9b021c6e7c48d6abff17b5757f58eb</MsgId>
<CreDtTm>2023-02-28T18:44:17.532542+03:00</CreDtTm>
<InitgPty>
<Nm>АО Райффайзенбанк</Nm>
<PstlAdr>
<Ctry>RU</Ctry>
</PstlAdr>
</InitgPty>
</GrpHdr>
<OrgnlGrpInfAndSts>
<OrgnlMsgNmId>pain.001.001.raif</OrgnlMsgNmId>
<GrpSts>RJCT</GrpSts>
<StsRsnInf>
<AddtlInf>Authorization error</AddtlInf>
</StsRsnInf>
</OrgnlGrpInfAndSts>
</CstmrPmtStsRpt>
</Document>
If the service is unavailable, only the code = 500 will be sent in the response
Mass payment status and payment status request
You can request the following payment processing statuses:
- The Mass payment status
- The Mass payment status and statuses of all payments within the Mass Payment
- The status of a certain payment sent within the Mass payment
Mass payment status request
To request the Mass payment processing status you need to:
- get AccessToken
- send a GET request to the address
/iso20022/message/{msgId}/status, where msgId is the message ID from original message you send to the bank - receive a synchronous response with the message receipt status
Mass payment statuses:
| ISO CODE | STATUS | COMMENTS |
|---|---|---|
| RJCT | REJECTED | All payments within Mass payment were rejected by the bank |
| PDNG | PENDING | In queue for business validation |
| FSGN | READY FOR SENDING | Ready to sending for processing |
| ACSP | PROCESSING | Payments within the Mass payment are processing by the bank |
| ATTN | NEEDS ATTENTION | Payment or some payments within the Mass payment need an attention (for example a lack of funds on an account to process the payment) |
| PART | PARTIALLY DONE | Not all payments within the Mass payment were executed |
| ACSC | DONE | All payments within the Mass payments were executed |
| NPMT | PAYMENT ID NOT FOUND | Mass payment with this ID was not found, please check the ID |
| DBLC | DUPLICATE | Mass payment was not created because it is a duplicate |
Format of the pain002.001 message containing the Mass payment status
You can learn more about the message format in the section Import format in the file Raiffeisen_pain002001_payments_status. In the response we provide both Mass payment status and current state of the Mass payment:
- the number of payments within the Mass payment at the time of the status request;
- the total amount of payments within the Mass payment at the time of the status request.
Examples of message with Mass payment status
ISO Code - ACSP, Status - PROCESSING
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Document xmlns="urn:iso:std:iso:20022:tech:xsd:pain.002.001.12">
<CstmrPmtStsRpt>
<GrpHdr>
<MsgId>2f01d4ea45fa4864a33722e7d4ed74f7</MsgId>
<CreDtTm>2023-07-14T08:21:48.263Z</CreDtTm>
<InitgPty>
<Nm>АО Райффайзенбанк</Nm>
<PstlAdr>
<Ctry>RU</Ctry>
</PstlAdr>
</InitgPty>
</GrpHdr>
<OrgnlGrpInfAndSts>
<OrgnlMsgId>1233924782</OrgnlMsgId>
<OrgnlMsgNmId>pain.001.001.raif</OrgnlMsgNmId>
<OrgnlCreDtTm>2023-07-13T12:28:09.000Z</OrgnlCreDtTm>
<GrpSts>PDNG</GrpSts>
<NbOfTxsPerSts>
<DtldNbOfTxs>2</DtldNbOfTxs>
<DtldSts>ACSP</DtldSts>
<DtldCtrlSum>320.28</DtldCtrlSum>
</NbOfTxsPerSts>
</OrgnlGrpInfAndSts>
<OrgnlPmtInfAndSts>
<TxInfAndSts>
<StsRsnInf>
<AddtlInf>PROCESSING</AddtlInf>
</StsRsnInf>
</TxInfAndSts>
</OrgnlPmtInfAndSts>
</CstmrPmtStsRpt>
</Document>
ISO Code - ACSC, Status - DONE
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Document xmlns="urn:iso:std:iso:20022:tech:xsd:pain.002.001.12">
<CstmrPmtStsRpt>
<GrpHdr>
<MsgId>2f01d4ea45fa4864a33722e7d4ed74f7</MsgId>
<CreDtTm>2023-07-14T08:52:38.263Z</CreDtTm>
<InitgPty>
<Nm>АО Райффайзенбанк</Nm>
<PstlAdr>
<Ctry>RU</Ctry>
</PstlAdr>
</InitgPty>
</GrpHdr>
<OrgnlGrpInfAndSts>
<OrgnlMsgId>1233924782</OrgnlMsgId>
<OrgnlMsgNmId>pain.001.001.raif</OrgnlMsgNmId>
<OrgnlCreDtTm>2023-07-13T12:28:09.000Z</OrgnlCreDtTm>
<GrpSts>PDNG</GrpSts>
<NbOfTxsPerSts>
<DtldNbOfTxs>2</DtldNbOfTxs>
<DtldSts>ACSC</DtldSts>
<DtldCtrlSum>320.28</DtldCtrlSum>
</NbOfTxsPerSts>
</OrgnlGrpInfAndSts>
<OrgnlPmtInfAndSts>
<TxInfAndSts>
<StsRsnInf>
<AddtlInf>DONE</AddtlInf>
</StsRsnInf>
</TxInfAndSts>
</OrgnlPmtInfAndSts>
</CstmrPmtStsRpt>
</Document>
ISO Code - NPMT, Status -PAYMENT ID NOT FOUND
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Document xmlns="urn:iso:std:iso:20022:tech:xsd:pain.002.001.12">
<CstmrPmtStsRpt>
<GrpHdr>
<MsgId>7d534186414d45d7a8bc56d1343f8eda</MsgId>
<CreDtTm>2024-07-03T12:21:33.846Z</CreDtTm>
<InitgPty>
<Nm>АО Райффайзенбанк</Nm>
<PstlAdr>
<Ctry>RU</Ctry>
</PstlAdr>
</InitgPty>
</GrpHdr>
<OrgnlGrpInfAndSts>
<OrgnlMsgId>8ffebe938878454fa549aeef980f7af2</OrgnlMsgId>
<OrgnlMsgNmId>pain.001.001.raif</OrgnlMsgNmId>
<GrpSts>NPMT</GrpSts>
<StsRsnInf>
<AddtlInf>PAYMENT ID NOT FOUND</AddtlInf>
<AddtlInf>Mass payment with MsgId 8ffebe938878454fa549aeef980f7af2 was not found</AddtlInf>
</StsRsnInf>
</OrgnlGrpInfAndSts>
</CstmrPmtStsRpt>
</Document>
Request the status of a Mass Payment, including the statuses of each payment within the Mass Payment
To request the processing status of the Mass payment and each payment within it you need to:
- get AccessToken
- send a GET request to the address
/iso20022/message/{msgId}/status/full, where msgId is the message ID from original message you send to the bank - receive a synchronous response with the message receipt status
We provide the Mass payment status, current state of the Mass payment and each payment processing status in the response:
- the number of payments within the Mass payment at the time of the status request
- the total amount of payments within the Mass payment at the time of the status request
- the current processing status of each payment in the Mass Payment
Mass payment statuses:
| ISO CODE | STATUS | COMMENTS |
|---|---|---|
| RJCT | REJECTED | All payments within Mass payment were rejected by the bank |
| PDNG | PENDING | In queue for business validation |
| FSGN | READY FOR SENDING | Ready to sending for processing |
| ACSP | PROCESSING | Payments within the Mass payment are processing by the bank |
| ATTN | NEEDS ATTENTION | Payment or some payments within the Mass payment need an attention (for example a lack of funds on an account to process the payment) |
| PART | PARTIALLY DONE | Not all payments within the Mass payment were executed |
| ACSC | DONE | All payments within the Mass payments were executed |
| NPMT | PAYMENT ID NOT FOUND | Mass payment with this ID was not found, please check the ID |
| DBLC | DUPLICATE | Mass payment was not created because it is a duplicate |
Payment statuses:
| ISO CODE | STATUS | COMMENTS |
|---|---|---|
| RJCT | REJECTED | Payment was rejected by the bank |
| PDNG | PENDING | In queue for business validation |
| FSGN | READY FOR SENDING | Ready to sending for processing |
| ACSP | PROCESSING | Payment is processing by the bank |
| ATTN | NEEDS ATTENTION | Payment needs an attention (for example a lack of funds on an account to process the payment) |
| CANC | REVOKED | Payment was revoked by the client |
| ACSC | DONE | Payment was executed |
| NPMT | PAYMENT ID NOT FOUND | Payment with ID was not found, please check the ID |
| DBLC | DUPLICATE | Payment was not created because it is a duplicate |
Format of the pain002.001 message contains the Mass payment status
You can learn more about the message format in the section Import format in the file Raiffeisen_pain002001_payments_status.
Examples of message with Mass payment status
ISO Code - PART, Status - PARTIALLY DONE due to in the Mass Payment three payments of five were executed, the rest were rejected
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Document xmlns="urn:iso:std:iso:20022:tech:xsd:pain.002.001.12">
<CstmrPmtStsRpt>
<GrpHdr>
<MsgId>7500032fd7fd4cc09867798f38fd70e4</MsgId>
<CreDtTm>2024-06-24T09:28:15.110Z</CreDtTm>
<InitgPty>
<Nm>АО Райффайзенбанк</Nm>
<PstlAdr>
<Ctry>RU</Ctry>
</PstlAdr>
</InitgPty>
</GrpHdr>
<OrgnlGrpInfAndSts>
<OrgnlMsgId>1184946705</OrgnlMsgId>
<OrgnlMsgNmId>pain.001.001.raif</OrgnlMsgNmId>
<OrgnlCreDtTm>2024-03-07T13:28:49.000Z</OrgnlCreDtTm>
<OrgnlNbOfTxs>5</OrgnlNbOfTxs>
<OrgnlCtrlSum>9000.99</OrgnlCtrlSum>
<GrpSts>PDNG</GrpSts>
<NbOfTxsPerSts>
<DtldNbOfTxs>5</DtldNbOfTxs>
<DtldSts>PART</DtldSts>
<DtldCtrlSum>9000.99</DtldCtrlSum>
</NbOfTxsPerSts>
</OrgnlGrpInfAndSts>
<OrgnlPmtInfAndSts>
<OrgnlPmtInfId>1154694812</OrgnlPmtInfId>
<PmtInfSts>ACSC</PmtInfSts>
</OrgnlPmtInfAndSts>
<OrgnlPmtInfAndSts>
<OrgnlPmtInfId>1163926138</OrgnlPmtInfId>
<PmtInfSts>ACSC</PmtInfSts>
</OrgnlPmtInfAndSts>
<OrgnlPmtInfAndSts>
<OrgnlPmtInfId>1054259923</OrgnlPmtInfId>
<PmtInfSts>ACSC</PmtInfSts>
</OrgnlPmtInfAndSts>
<OrgnlPmtInfAndSts>
<OrgnlPmtInfId>1162364846</OrgnlPmtInfId>
<PmtInfSts>RJCT</PmtInfSts>
</OrgnlPmtInfAndSts>
<OrgnlPmtInfAndSts>
<OrgnlPmtInfId>1108107023</OrgnlPmtInfId>
<PmtInfSts>RJCT</PmtInfSts>
</OrgnlPmtInfAndSts>
</CstmrPmtStsRpt>
</Document>
Status Request for payment sent within the Mass payment
To request the payment processing status you need to:
- get AccessToken
- send a GET request message to the
/iso20022/message/{msgId}/payment/{PmtInfId}/statusaddress, where msgId is the message ID from original message you send to the bank, and PmtInfId is payment ID - receive a synchronous response with message receipt status
Payment statuses:
| ISO CODE | STATUS | COMMENTS |
|---|---|---|
| RJCT | REJECTED | Payment was rejected by the bank |
| PDNG | PENDING | In queue for business validation |
| FSGN | READY FOR SENDING | Ready to sending for processing |
| ACSP | PROCESSING | Payment is processing by the bank |
| ATTN | NEEDS ATTENTION | Payment needs an attention (for example a lack of funds on an account to process the payment) |
| CANC | REVOKED | Payment was revoked by the client |
| ACSC | DONE | Payment was executed |
| NPMT | PAYMENT ID NOT FOUND | Payment with ID was not found, please check the ID |
| DBLC | DUPLICATE | Payment was not created because it is a duplicate |
Format of the pain002.001 message containing the Payment status
You can learn more about the message format in the section Import format in the file Raiffeisen_pain002001_payments_status.
Examples of message with payment status
ISO Code - RJCT, Status - REJECTED
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Document xmlns="urn:iso:std:iso:20022:tech:xsd:pain.002.001.12">
<CstmrPmtStsRpt>
<GrpHdr>
<MsgId>2e90f47d07424c20b0ec6c7dbe20f219</MsgId>
<CreDtTm>2024-07-09T14:23:52.878Z</CreDtTm>
<InitgPty>
<Nm>АО Райффайзенбанк</Nm>
<PstlAdr>
<Ctry>RU</Ctry>
</PstlAdr>
</InitgPty>
</GrpHdr>
<OrgnlGrpInfAndSts>
<OrgnlMsgId>1224505675</OrgnlMsgId>
<OrgnlMsgNmId>pain.001.001.raif</OrgnlMsgNmId>
<OrgnlCreDtTm>2024-07-09T17:09:14.000Z</OrgnlCreDtTm>
</OrgnlGrpInfAndSts>
<OrgnlPmtInfAndSts>
<OrgnlPmtInfId>1234822979</OrgnlPmtInfId>
<PmtInfSts>RJCT</PmtInfSts>
<TxInfAndSts>
<OrgnlInstrId>55C3667d5cf54fb4b19d29443b91b389</OrgnlInstrId>
<OrgnlEndToEndId>477206</OrgnlEndToEndId>
<TxSts>RJCT</TxSts>
<StsRsnInf>
<AddtlInf>REJECTED</AddtlInf>
<AddtlInf>3.13 Реквизит "(9) Счет плательщика" не найден в справочнике клиентов банка.</AddtlInf>
</StsRsnInf>
</TxInfAndSts>
</OrgnlPmtInfAndSts>
</CstmrPmtStsRpt>
</Document>
ISO Code - ATTN, Status - NEEDS ATTENTION
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Document xmlns="urn:iso:std:iso:20022:tech:xsd:pain.002.001.12">
<CstmrPmtStsRpt>
<GrpHdr>
<MsgId>9968b942b9dc4a72abf1b36e683e4a65</MsgId>
<CreDtTm>2024-07-09T12:09:27.839Z</CreDtTm>
<InitgPty>
<Nm>АО Райффайзенбанк</Nm>
<PstlAdr>
<Ctry>RU</Ctry>
</PstlAdr>
</InitgPty>
</GrpHdr>
<OrgnlGrpInfAndSts>
<OrgnlMsgId>ORCR111UWIRE032012317717602</OrgnlMsgId>
<OrgnlMsgNmId>pain.001.001.raif</OrgnlMsgNmId>
<OrgnlCreDtTm>2024-07-03T05:54:55.000Z</OrgnlCreDtTm>
</OrgnlGrpInfAndSts>
<OrgnlPmtInfAndSts>
<OrgnlPmtInfId>ORCRUWIRE0220202317717605</OrgnlPmtInfId>
<PmtInfSts>ATTN</PmtInfSts>
<TxInfAndSts>
<OrgnlInstrId>HMSRUEFT7841922</OrgnlInstrId>
<OrgnlEndToEndId>4</OrgnlEndToEndId>
<TxSts>ATTN</TxSts>
<StsRsnInf>
<AddtlInf>NEEDS ATTENTION</AddtlInf>
</StsRsnInf>
</TxInfAndSts>
</OrgnlPmtInfAndSts>
</CstmrPmtStsRpt>
</Document>
ISO Code - ACSC, Status -DONE
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Document xmlns="urn:iso:std:iso:20022:tech:xsd:pain.002.001.12">
<CstmrPmtStsRpt>
<GrpHdr>
<MsgId>9968b942b9dc4a72abf1b36e683e4a65</MsgId>
<CreDtTm>2024-07-09T12:09:27.839Z</CreDtTm>
<InitgPty>
<Nm>АО Райффайзенбанк</Nm>
<PstlAdr>
<Ctry>RU</Ctry>
</PstlAdr>
</InitgPty>
</GrpHdr>
<OrgnlGrpInfAndSts>
<OrgnlMsgId>ORCR111UWIRE032012317717602</OrgnlMsgId>
<OrgnlMsgNmId>pain.001.001.raif</OrgnlMsgNmId>
<OrgnlCreDtTm>2024-07-03T05:54:55.000Z</OrgnlCreDtTm>
</OrgnlGrpInfAndSts>
<OrgnlPmtInfAndSts>
<OrgnlPmtInfId>ORCRUWIRE0220202317717608</OrgnlPmtInfId>
<PmtInfSts>ACSC</PmtInfSts>
<TxInfAndSts>
<OrgnlInstrId>HMSRUEFT7847913</OrgnlInstrId>
<OrgnlEndToEndId>4</OrgnlEndToEndId>
<TxSts>ACSC</TxSts>
<StsRsnInf>
<AddtlInf>DONE</AddtlInf>
</StsRsnInf>
</TxInfAndSts>
</OrgnlPmtInfAndSts>
</CstmrPmtStsRpt>
</Document>