success |
Позиция была успешно обработана расчетным центром |
unspecifiedFailure |
Причина неудачи не специфицирована |
duplicateRequest |
Запрос отзыва платежа или кредита для данной транзакции был уже обработан (XID и AuthRRPID) |
originalProcessed |
Запрос платежа для данной позиции был уже обработан |
originalNotFound |
Специфицированная позиция расчетным центром не обнаружена |
capPurged |
Информация о платеже была удалена из памяти транзакций расчетного центра |
missingCapData |
Информация о платеже отсутствует в запросе отзыва платежа или кредита |
missingCapToken |
Необходимый для обработки данной позиции маркер CapToken отсутствует в запросе отзыва платежа или кредита |
invalidCapToken |
Маркер CapToken некорректен |
batchUnknown |
Платежная линия для данной позиции расчетному центру неизвестна |
batchClosed |
Платежная линия для данной позиции уже закрыта |
Обработка продавцом CapRevOrCredResData осуществляется следующим образом.
Шаг |
Действие |
1 |
Обработать CRvRsExtensions. Если какое-то нераспознанное расширение помечено как критическое, сообщение отбрасывается и посылается отклик Error = unrecognizedExtension. |
2 |
Обработать CapRevOrCredTags |
3 |
Извлечь запомненную запись транзакции и обработать TransIDs следующим образом:
- Проверить, что XID согласуется с данными из записи транзакции. Если согласия нет, сообщение отбрасывается, а в журнал операций записывается Error = unknownXID
- Проверить, что LID-C и LID-M согласуются с данными записи транзакции. Если согласия нет, сообщение отбрасывается, а в журнал операций записывается Error = unknownLID.
|
4 |
Если в сообщение включен BrandCRLIdentifier, запомнить CRL. |
5 |
Проверить, что GKThumb согласуется с существующим сертификатом шифрования расчетного центра, если GKThumb присутствует. Если соответствия нет, актуализовать кэш сертификата с использованием текущего сертификата. |
6 |
Для каждого BatchStatus в batchStatusSeq обработать BatchStatus и запомнить результат |
7 |
Обработать каждый CapRevOrCredResItem в CapRevOrCredResItems следующим образом
- Обработать CRvRsPayExtensions. Если какое-либо не узнанное расширение помечено как критическое, сообщение отвергается и посылается отклик Error = unrecognizedExtension
- Извлечь записи транзакции, используя TransIDs. Если не удается найти транзакцию с подходящим TransIDs, отвергнуть сообщение и записать в журнал операций Error = unknownXID
- Сравнить LID-C и LID-M с данными в сообщении. Если согласия нет, сообщение отбрасывается, а в журнал операций записывается Error = unknownLID.
- Обработать CapRevOrCredPayload следующим образом:
- Обработать CapRevOrCredCode для получения результата
- Если предоставление кредита или отзыв платежа прошел успешно, записать CapCode и CapAmt
- Обработать BatchID и BatchSequenceNum, если таковые имеются
|