Запрос cancel

Если по транзакции не удалось списать денежные средства, например, по причине отказа провайдера, или нехватки средств, или излишней подозрительности плательщика, мерчант получит оповещение, чтобы предпринять определённые меры в своей системе. Это может быть заморозка транзакции или регистрация события в системе аналитики и статистики, и многое другое.

Как и в случае запроса на подтверждение платежа, отмена происходит по идентификатору транзакции, полученному на первом этапе.

Запрос следующего вида:


    {
        "action": "cancel",
        "platbox_tx_id": "42",
        "platbox_tx_created_at": "2014-10-12T00:13:37Z",
        "platbox_tx_canceled_at": "2014-10-12T00:13:44Z",
        "merchant_tx_id": "1001",
        "merchant_tx_extra": {
            "pin_code": "17RT42"
        },
        "product": "legend_of_zelda",
        "payment" : {
            "amount": 10000,
            "currency": "RUB",
            "exponent": 2
        },
        "account": {
            "id": "player31337",
            "location": 4,
            "additional": "Jane Doe"
        },
        "order": "314542341",
        "merchant_extra": {
            "proc_code": 564
        },
        "payer": {
            "id": "**********"
        },
        "reason": {
            "code": "provider_limit_exceeded",
            "description": "Exceeds payment limit"
        }
    }

Этот запрос отличается от запроса «pay» только лишь наличием параметров platbox_tx_canceled_at и reason.

Поле в сообщении Комментарий
platbox_tx_canceled_at Время перехода транзакции в статус неуспешной, в формате ISO 8601, UTC.
reason Информация по причине отмены.
> code Код отмены.
> description Описание причины отмены.

В ответ ожидается JSON объект следующего вида:


    {
        "status": "ok",
        "merchant_tx_timestamp": "2014-10-12T04:13:45+04:00",
        "merchant_tx_extra": {
            "pin_code": "17RT42",
            "claim_code": "UNIHORNY"
        }
    }

Возможны следующие ошибки:

Код ошибки Описание
400 Неверный формат сообщения.
401 Некорректная подпись запроса.
406 Неверные данные запроса.
409 Значения полей запроса не соответствуют данным в системе мерчанта.
1000 Общая техническая ошибка.
2001 Платёж с указанным идентификатором уже зарегистрирован.