8. Отзыв платежа

Обратите внимание

После успешного выполнения запроса на отзыв платежа (ответ с HTTP кодом 200) Вы можете выполнить запрос на получение статуса по конкретному платежу.

GET https://alfa-link-int.alfabank.ru/API/v1/ISO20022/Payments/Transactions/<InstrId>

где <InstrId> - идентификатор платежа.

Важно

Может возникнуть ситуация, когда ранее отправленный платеж находится в процессе выполнения проверок.
Вам вернется ответ с кодом HTTP 404.
Если идентификаторы отзываемого платежа заполнены верно - выполните запрос на получение статуса по конкретному платежу.
Если платеж перешел в статус ACSP "На обработке", выполните повторный запрос на отзыв платежа.

URI

PUT: /API/v1/ISO20022/Payments/Recall

XML схема

camt.055.001.06

Описание схемы

R/
O
Описание Путь Комментарий/
Пример

Общий путь Document.CstmrPmtCxlReq.Assgnmt

1

R

Уникальный id сообщения

Id

Указывается идентификатор сообщения присвоенный во внешней системе.

1

R

Наименование организации

Assgnr.Pty.Nm

-

2

R

ИНН организации

Assgnr.Pty.Id.OrgId.Othr.Id

-

3

R

Признак использования ИНН

Assgnr.Pty.Id.OrgId.Othr.SchmeNm.Cd

Константа 'TXID'

4

O

Наименование банка получателя

Assgne.Agt.FinInstnId.Nm

Константа 'АО АЛЬФА-БАНК'

5

R

Дата и Время создания сообщения

CreDtTm

Формат даты YYYY-MM-DDThh:mm:ss[.mmm]TZD (В случае, если часовой пояс не указан или указан отличный от московского, то время будет приведено к UTC +3).

Общий путь Document.CstmrPmtCxlReq.Undrlyg.OrgnlPmtInfAndCxl

6

R

Id исходного пакета платежа

OrgnlPmtInfId

Должно совпадать с полем в Платеже: Document.CstmrCdtTrfInitn.PmtInf.PmtInfId (схема pain.001.01.06)

7

R

Id исходного сообщения платежа

OrgnlGrpInf.OrgnlMsgId

Должно совпадать с полем в Платеже: Document.CstmrCdtTrfInitn.GrpHdr.MsgId (схема pain.001.01.06)

8

R

Тип исходного сообщения

OrgnlGrpInf.OrgnlMsgNmId

Константа 'pain.001.001.06'

9

R

Уникальный id запроса на отзыв

TxInf.CxlId

-

10

R

Id исходного платежа

TxInf.OrgnlInstrId

Должно совпадать с полем в Платеже: Document.CstmrCdtTrfInitn.PmtInf.CdtTrfTxInf.PmtId.InstrId (схема pain.001.01.06)

11

R

Сумма отзываемого платежа

TxInf.OrgnlInstdAmt

Должно совпадать с полем в Платеже: Document.CstmrCdtTrfInitn.PmtInf.CdtTrfTxInf.Amt.InstdAmt (схема pain.001.01.06)

12

R

Код валюты отзываемого платежа

TxInf.OrgnlInstdAmt@Ccy

-

13

R

Номер счета

TxInf.OrgnlTxRef.DbtrAcct.Id.Othr.Id

-

14

R

Признак использования счета

TxInf.OrgnlTxRef.DbtrAcct.Id.Othr.SchmeNm.Cd

Константа 'ACC'

Блок с подписью Document.CstmrPmtCxlReq

15

R

Подпись

SplmtryData.Envlp.SgntrSt[1..n]

-

Ответ

Ответом является XML-документ, соответствующий схеме camt.029.001.06.

R/
O
Описание Путь Комментарий/
Пример

Document.RsltnOfInvstgtn

1

R

Уникальный id сообщения

Assgnmt.Id

-

2

R

SWIFT Альфа-Банка

Assgnmt.Assgne.Pty.Id.OrgId.AnyBIC.AnyBIC

Константа
'ALFARUMM'

3

R

БИК банка

Assgne.Pty.Id.OrgId.Othr.Id

Константа '044525593'

4

R

Дата и время создания сообщения

Assgnmt.CreDtTm

Формат даты YYYY-MM-DDThh:mm:ss[.mmm]TZD

5

R

Статус сообщения запроса на отзыв

Sts.Conf

CNCL - Запрос выполнен;
RJCR - Запрос не выполнен.

Document.RsltnOfInvstgtn.CxlDtls

6

R

Идентификатор исходного сообщения

OrgnlGrpInfAndSts.OrgnlMsgId

Константа 'camt.055.001.06'

7

R

Тип исходного сообщения

OrgnlGrpInfAndSts.OrgnlMsgNmId

Константа
'camt.055.001.06'

8

R

Дата и время создания исходного сообщения

OrgnlPmtInfAndSts.OrgnlCreDtTm

Формат даты YYYY-MM-DDThh:mm:ss[.mmm]TZD

9

R

Статус сообщения
(запроса)

OrgnlGrpInfAndSts.GrpCxlSts

ACCR - Запрос выполнен;
RJCR - Запрос не выполнен.

10

O

Код причины присвоения статуса сообщения

OrgnlGrpInfAndSts.CxlStsRsnInf.Rsn.Cd

NARR - Описание в поле AddtlInf.

11

O

Описание причины присвоения статуса

OrgnlGrpInfAndSts.CxlStsRsnInf.AddtlInf[1…​n]

Таблица с описанием причины присвоения статусов (CNCL, ACCR) и RJCR

12

O

Id исходного пакета

OrgnlPmtInfAndSts.OrgnlPmtInfId

-

13

O

Статус сообщения
(запроса)

OrgnlGrpInfAndSts.PmtInfCxlSts

ACCR - Запрос выполнен;
RJCR - Запрос не выполнен.

14

O

Статус сообщения
(запроса)

OrgnlPmtInfAndSts.TxInfAndSts.OrgnlInstrId

ACCR - Запрос выполнен;
RJCR - Запрос не выполнен.

15

O

Код причины присвоения статуса сообщения

OrgnlPmtInfAndSts.CxlStsRsnInf.Rsn.Cd

NARR - Описание в поле AddtlInf.

16

O

Описание причины присвоения статуса

OrgnlPmtInfAndSts.CxlStsRsnInf.AddtlInf[1…​n]

Таблица с описанием причины присвоения статусов (CNCL, ACCR) и RJCR

Таблица с описанием причины присвоения статусов (CNCL, ACCR) и RJCR

Статусы HTTP код Описание причины присвоения статуса

CNCL
ACCR

200

Запрос на отзыв платежа выполнен: платеж отозван

RJCR

200

Запрос на отзыв платежа не выполнен: платёж не может быть отозван из данного состояния

RJCR

208

Запрос на отзыв платежа не выполнен: платёж ранее был отклонён

RJCR

404

Платёж не найден! Проверьте идентификатор(ы) отзываемого платежа

Таблица кодов ответа

HTTP код Тип Body Описание

200

OK

Запрос на отзыв платежа выполнен: платёж отозван

Платеж отозван

200

OK

Запрос на отзыв платежа не выполнен: платёж не может быть отозван из данного состояния

Платёж не может быть отозван

208

Already Reported

Запрос на отзыв платежа не выполнен: платёж ранее был отклонён

Платёж ранее был отклонён

400

Err

XML does not match schema

Документ не соответствует схеме

401

Err

Wrong username or password

Неверный логин или пароль

401

Err

User was not found

Пользователь не найден

401

Err

Could not find signer by certificate

По сертификату пользователь не найден

403

Err

User is disabled

Пользователь заблокирован

403

Err

Internal error while verifying permissions

Ошибка при проверке полномочий

403

Err

Signer is not allowed to sign this operation type

У подписанта нет полномочий на такой тип операции

403

Err

User does not have permission

Нет прав на выполнение запроса

403

Err

Certificate is not valid

Сертификат подписи невалидный

403

Err

Signer’s warrant is expired

Доверенность подписанта истекла

403

Err

Signer’s warrant is disabled

Доверенность подписанта заблокирована

403

Err

Number of signatures is not enough for this operation type

Недостаточно подписей для типа операции

403

Err

Certificate is disabled

Сертификат заблокирован

404

Not Found

Платёж не найден! Проверьте идентификатор(ы) отзываемого платежа

Платеж по вашим данным не найден. Проверьте идентификатор(ы) исходного сообщения.

406

Err

The signer certificate is not valid (revoked or not active)

Сертификат подписанта отозван или невалидный

406

Err

Signature is missing

Нет подписи

406

Err

Signature value is not valid

Подпись невалидна

406

Err

Internal sign check state error

Внутренняя ошибка сервиса

409

Err

MsgId is not unique

Id запроса неуникальный

500

Err

Internal Error

Внутренняя ошибка приложения

500

Err

Warrant service error

Сервис проверки доверенности не отвечает

502

Err

Bad Gateway

Ошибочный шлюз

503

Err

Service Unavailable

Сервис недоступен

504

Err

Gateway Timeout

Шлюз не отвечает

Пример запроса на отзыв платежа
<?xml version="1.0" encoding="UTF-8"?>
<Document xmlns="urn:iso:std:iso:20022:tech:xsd:camt.055.001.06">
    <CstmrPmtCxlReq>
        <Assgnmt>
            <!-- Уникальный идентификатор сообщения с запросом -->
            <Id>TEST_MSG_2024-03-15-111222333</Id>
            <Assgnr>
                <Pty>
                    <!-- Наименование организации -->
                    <Nm>ООО "Тест Альфа-Линк"</Nm>
                    <Id>
                        <OrgId>
                            <Othr>
                                <!-- Идентификатор ( ИНН ) -->
                                <Id>7013602245</Id>
                                <SchmeNm>
                                    <!-- Код Типа идентификации -->
                                    <Cd>TXID</Cd>
                                </SchmeNm>
                            </Othr>
                        </OrgId>
                    </Id>
                </Pty>
            </Assgnr>
            <Assgne>
                <Agt>
                    <FinInstnId>
                        <!-- Наименование Банка -->
                        <Nm>АО АЛЬФА-БАНК</Nm>
                    </FinInstnId>
                </Agt>
            </Assgne>
            <!-- Дата и время создания документа -->
            <CreDtTm>2024-03-15T16:14:03.105+03:00</CreDtTm>
        </Assgnmt>
        <Undrlyg>
            <OrgnlPmtInfAndCxl>
                <!-- Идентификатор пакета отзываемых документов -->
                <OrgnlPmtInfId>TEST_PCT_2024-03-15-33221132</OrgnlPmtInfId>
                <OrgnlGrpInf>
                    <!-- Уникальный идентификатор сообщения с отзываемым документом -->
                    <OrgnlMsgId>TEST_MSG_2024-03-15-33221132</OrgnlMsgId>
                    <!-- Тип сообщения с отзываемым документом -->
                    <OrgnlMsgNmId>pain.001.001.06</OrgnlMsgNmId>
                </OrgnlGrpInf>
                <TxInf>
                    <!-- Номер документа "Запрос на отзыв" -->
                    <CxlId>TEST_ID_2024-03-15-43434343</CxlId>
                    <!-- Идентификатор отзываемого документа -->
                    <OrgnlInstrId>TEST_PMT_2024-03-15-33221132</OrgnlInstrId>
                    <!-- Сумма по отзываемому документу в валюте документа/Код валюты -->
                    <OrgnlInstdAmt Ccy="RUR">100</OrgnlInstdAmt>
                    <OrgnlTxRef>
                        <DbtrAcct>
                            <Id>
                                <Othr>
                                    <!-- Номер счета -->
                                    <Id>40702978000000000001</Id>
                                    <SchmeNm>
                                        <!-- Код Типа идентификации -->
                                        <Cd>ACC</Cd>
                                    </SchmeNm>
                                </Othr>
                            </Id>
                        </DbtrAcct>
                    </OrgnlTxRef>
                </TxInf>
            </OrgnlPmtInfAndCxl>
        </Undrlyg>
        <SplmtryData>
            <Envlp>
                <!-- Подпись -->
                <SgntrSt>
                </SgntrSt>
            </Envlp>
        </SplmtryData>
    </CstmrPmtCxlReq>
</Document>
Пример ответа при успешном отзыве платежа
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Document xmlns="urn:iso:std:iso:20022:tech:xsd:camt.029.001.06">
        <RsltnOfInvstgtn>
                <Assgnmt>
                        <Id>1a374fad403f4df2bdd6c307cb2512a3</Id>
                        <Assgnr>
                                <Agt>
                                        <FinInstnId>
                                                <BICFI>ALFARUMM</BICFI>
                                        </FinInstnId>
                                </Agt>
                        </Assgnr>
                        <Assgne>
                                <Pty>
                                        <Id>
                                                <OrgId>
                                                        <Othr>
                                                                <Id>044525593</Id>
                                                        </Othr>
                                                </OrgId>
                                        </Id>
                                </Pty>
                        </Assgne>
                        <CreDtTm>2024-03-15T16:20:03.105+03:00</CreDtTm>
                </Assgnmt>
                <Sts>
                        <Conf>CNCL</Conf>
                </Sts>
                <CxlDtls>
                        <OrgnlGrpInfAndSts>
                                <OrgnlMsgId>TEST_MSG_2024-03-15-111222333</OrgnlMsgId>
                                <OrgnlMsgNmId>camt.055.001.06</OrgnlMsgNmId>
                                <OrgnlCreDtTm>2024-03-15T16:14:03.105+03:00</OrgnlCreDtTm>
                                <GrpCxlSts>ACCR</GrpCxlSts>
                        </OrgnlGrpInfAndSts>
                        <OrgnlPmtInfAndSts>
                                <OrgnlPmtInfId>TEST_PCT_2023-08-31-131401784</OrgnlPmtInfId>
                                <PmtInfCxlSts>ACCR</PmtInfCxlSts>
                                <TxInfAndSts>
                                        <OrgnlInstrId>TEST_PMT_2023-08-31-131401784</OrgnlInstrId>
                                        <TxCxlSts>ACCR</TxCxlSts>
                                        <CxlStsRsnInf>
                                                <Rsn>
                                                        <Cd>NARR</Cd>
                                                </Rsn>
                                                <AddtlInf>Запрос на отзыв платежа выполнен: платёж отозван</AddtlInf>
                                        </CxlStsRsnInf>
                                </TxInfAndSts>
                        </OrgnlPmtInfAndSts>
                </CxlDtls>
        </RsltnOfInvstgtn>
</Document>
Пример ответа, когда платеж не найден
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Document
        xmlns="urn:iso:std:iso:20022:tech:xsd:camt.029.001.06">
        <RsltnOfInvstgtn>
                <Assgnmt>
                        <Id>72ae0b7246ae4377a82606b5795a82fb</Id>
                        <Assgnr>
                                <Agt>
                                        <FinInstnId>
                                                <BICFI>ALFARUMM</BICFI>
                                        </FinInstnId>
                                </Agt>
                        </Assgnr>
                        <Assgne>
                                <Pty>
                                        <Id>
                                                <OrgId>
                                                        <Othr>
                                                                <Id>044525593</Id>
                                                        </Othr>
                                                </OrgId>
                                        </Id>
                                </Pty>
                        </Assgne>
                        <CreDtTm>2024-03-15T16:18:03.105+03:00</CreDtTm>
                </Assgnmt>
                <Sts>
                        <Conf>RJCR</Conf>
                </Sts>
                <CxlDtls>
                        <OrgnlGrpInfAndSts>
                                <OrgnlMsgId>time_id:1693476795322</OrgnlMsgId>
                                <OrgnlMsgNmId>camt.055.001.06</OrgnlMsgNmId>
                                <OrgnlCreDtTm>2024-03-15T16:14:03.105+03:00</OrgnlCreDtTm>
                                <GrpCxlSts>RJCR</GrpCxlSts>
                                <CxlStsRsnInf>
                                        <Rsn>
                                                <Cd>NARR</Cd>
                                        </Rsn>
                                        <AddtlInf>Платёж не найден! Проверьте идентификатор(ы) отзываемого платежа</AddtlInf>
                                </CxlStsRsnInf>
                        </OrgnlGrpInfAndSts>
                </CxlDtls>
        </RsltnOfInvstgtn>
</Document>
Пример ответа, когда платеж был отозван ранее
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Document
        xmlns="urn:iso:std:iso:20022:tech:xsd:camt.029.001.06">
        <RsltnOfInvstgtn>
                <Assgnmt>
                        <Id>be55c9080518484bbce931ad438ffbcb</Id>
                        <Assgnr>
                                <Agt>
                                        <FinInstnId>
                                                <BICFI>ALFARUMM</BICFI>
                                        </FinInstnId>
                                </Agt>
                        </Assgnr>
                        <Assgne>
                                <Pty>
                                        <Id>
                                                <OrgId>
                                                        <Othr>
                                                                <Id>044525593</Id>
                                                        </Othr>
                                                </OrgId>
                                        </Id>
                                </Pty>
                        </Assgne>
                        <CreDtTm>2024-03-15T16:16:03.105+03:00</CreDtTm>
                </Assgnmt>
                <Sts>
                        <Conf>RJCR</Conf>
                </Sts>
                <CxlDtls>
                        <OrgnlGrpInfAndSts>
                                <OrgnlMsgId>TEST_MSG_2024-03-15-111222333</OrgnlMsgId>
                                <OrgnlMsgNmId>camt.055.001.06</OrgnlMsgNmId>
                                <OrgnlCreDtTm>2024-03-15T16:14:03.105+03:00</OrgnlCreDtTm>
                                <GrpCxlSts>RJCR</GrpCxlSts>
                        </OrgnlGrpInfAndSts>
                        <OrgnlPmtInfAndSts>
                                <OrgnlPmtInfId>TEST_PCT_2023-08-31-131300012</OrgnlPmtInfId>
                                <PmtInfCxlSts>RJCR</PmtInfCxlSts>
                                <TxInfAndSts>
                                        <OrgnlInstrId>TEST_PMT_2023-08-31-131300012</OrgnlInstrId>
                                        <TxCxlSts>RJCR</TxCxlSts>
                                        <CxlStsRsnInf>
                                                <Rsn>
                                                        <Cd>NARR</Cd>
                                                </Rsn>
                                                <AddtlInf>Запрос на отзыв платежа не выполнен: платёж ранее был отклонён</AddtlInf>
                                        </CxlStsRsnInf>
                                </TxInfAndSts>
                        </OrgnlPmtInfAndSts>
                </CxlDtls>
        </RsltnOfInvstgtn>
</Document>