Vytvoření refundace
Refundaci zpracujete požadavkem na endpoint /refunds. Volání používá id checkoutu, které vám Twisto vrátilo v API volání /checkouts.
Refundace je možná až po tom, co byla platba zachycena (captured). Checkouty v jiných stavech rušte pomocí požadavku CheckoutCancel. Popis stavů a toků plateb najdete v článku Volání API a platební toky.
Požadavek obsahuje mimo jiné:
- Reference (volitelné) — povinné jen při ručním vypořádání refundací jako identifikátor bankovního převodu
- Checkout_id
- Reason
- Amount
Odpověď API obsahuje mimo jiné:
- Id — jedinečný identifikátor refundace
- Checkout_Id — původní checkout refundované objednávky
- Reason
- Vrácená částka
- Datum a čas vytvoření
Volání /refunds musí proběhnout z vašeho serveru (obvykle z systému správy objednávek).
Checkout Id
Twisto vyžaduje původní checkout_id objednávky. Identifikátor pochází z prvního checkout API volání.
Příklad:
{
"checkout_id": "string"
}Hromadné vs 1:1 platby
Dva režimy refundací: hromadné (batch) a ruční (1:1).
U hromadných plateb se částka refundace automaticky odečte z denní dávky výplaty.
U ručních refundací musíte prostředky poslat k nám ručně. Do variabilního symbolu / poznámky převodu uveďte přesně hodnotu pole reference z API refundace.
Částečné a plné refundace
Lze zpracovat plnou i částečnou refundaci vůči původní objednávce.
Refundace je plná, pokud se částka refundace rovná částce objednávky.
Podporujeme částečné refundace, kdy je částka nižší než zbývající část k refundaci, např. vrácení jedné z více položek — předejte hodnotu vracené položky.
Pokud checkout už obsahuje refundaci (např. částka 100 Kč, vráceno 20 Kč) a zákazník vrací zbytek, částka v požadavku má odpovídat zbývající části (80 Kč); jinak API vrátí chybu.
Důvod refundace
Pole reason slouží pro vaši dokumentaci při pozdějším prohlížení dat refundace v Twisto.
Příklad:
{
"reason": "Unwanted item",
"amount": 5
}Celý požadavek
{
"reference": "string",
"reason": "Unwanted item",
"amount": 5,
"checkout_id": "string"
}