5. Інтерфейс відшкодування
Цей XML-інтерфейс дозволяє Продавцю анулювати проведену транзакцію та повернути кошти клієнту. Подібне відшкодування транзакції можливе лише до 01:00 години наступного після платежу дня. Цей інтерфейс також використовується для проведення повернень за рахунок наступних надходжень, якщо передбачено договором.
Action - https://api.paysoft.solutions/merchants/refund
Method - POST
Формат XML-запиту:
<Command>
<LMI_MERCHANT_ID></LMI_MERCHANT_ID>
<LMI_SYS_PAYMENT_ID></LMI_SYS_PAYMENT_ID>
<RefundId></RefundId>
<ActionAmount></ActionAmount>
<RefundAmount></RefundAmount>
<LMI_HASH></LMI_HASH>
</Command>
Назва | Поле в XML | Опис |
---|---|---|
Ідентифікатор Продавця | LMI_MERCHANT_ID | Ідентифікатор торгової точки Продавця, на яку Продавець мав прийняти платіж. |
Внутрішній номер платежу в системі PaySoft | LMI_SYS_PAYMENT_ID | |
Унікальний номер заявки на відшкодування | RefundId | Ідентифікатор заявки на відшкодування, унікальний в рамках LMIMERCHANT_ID. Може містити букви латинського алфавіту, цифри, знаки "-" та "" (без лапок; знаки не можуть бути на початку рядка). Максимальна довжина ідентифікатору - 20 символів. |
Повна сума платежу | ActionAmount | |
Сума анулювання | RefundAmount | Сума відшкодування повинна бути меншою або рівною повній сумі платежу. Деякі платіжні системи підтримують часткові повернення коштів. |
Контрольний підпис | LMI_HASH | Контрольний підпис запиту, що формується шляхом шифрування вихідного тексту XML-запиту із порожнім значенням LMI_HASH та секретного ключа SecretKey за допомогою алгоритму, зазначеного у Кабінеті Продавця. Отриманий підпис передається у тегу LMI_HASH. Рекомендованим алгоритмом шифрування є SHA256. |
Формат XML-відповіді:
<?xml version="1.0" encoding="UTF-8"?>
<Response>
<Retval></Retval>
<Retdesc></Retdesc>
<Retdata>
<ResultCode></ResultCode>
<ResultMsg></ResultMsg>
</Retdata>
</Response>
Назва | Поле в XML | Опис |
---|---|---|
Код виконання запиту | Retval | 1 (одиниця) - успішне виконання команди |
Опис коду виконання | Retdesc | |
Код виконання відшкодування | Retdata/ResultCode | |
Опис коду виконання | Retdata/ResultMsg |
УВАГА! На відміну від решти інтерфейсів та форм, інтерфейс відшкодування має два статуси (коди виконання). Код виконання запиту (Retval) вказує на успішність або неуспішність запиту створення заявки на відшкодування, а код виконання відшкодування (Retdata/ResultCode) вказує на успішність виконання відшкодування у платіжній системі.
В разі отримання неостаточної відповіді у полі Retdata/ResultCode, можна повторити запит із тими ж параметрами (обов’язково з тим же RefundId) для отримання статусу поточної заявки.
Коди виконання відшкодування
Код | Пояснення | Остаточність |
---|---|---|
600 | Відшкодування проведено успішно | Остаточна |
601 | Транзакцію не знайдено | Остаточна |
602 | Відшкодування можливе лише для успішних транзакцій | Остаточна |
603 | Вичерпано час відшкодування | Остаточна |
604 | Не коректна сума платежу | Остаточна |
605 | Не коректна сума відшкодування | Остаточна |
606 | Сума відшкодування не може перевищувати повну суму платежу | Остаточна |
607 | Операція відшкодування наразі виконується | Не остаточна |
608 | Транзакцію вже повністю відшкодовано | Остаточна |
609 | Платіжна система не підтримує відшкодувань | Остаточна |
610 | Платіжна система не підтримує часткових відшкодувань | Остаточна |
618 | Невірно вказано ідентифікатор відшкодування | Остаточна |