3.1.4. Vrátenie objednávok#
Táto stránka obsahuje všetku dokumentáciu k videonávodu, v ktorom je vysvetlený proces vrátenia peňazí za objednávky a rôzne termíny súvisiace s vrátením peňazí.
3.1.4.1. Video#
3.1.4.2. Informácie#
Ak nie ste oboznámení s procesom vytvárania objednávok, môžete si pozrieť Taler merchant creating orders tutorial.
3.1.4.3. Požiadavky#
Potrebné pre túto sériu výukových programov:
- Backend obchodníka TalerAk potrebujete pomoc pri prvom použití backendu obchodníka, môžete si pozrieť Taler merchant introduction tutoriál.
- Príklad peňaženky TalerPokyny na nastavenie sú k dispozícii na stránke https://wallet.taler.net.
- Softvér na správu rozhrania API REST alebo príslušné programátorské zručnostiV tejto sérii videí budeme používať bezplatný softvér Insomnia, ktorý je k dispozícii na stiahnutie na adrese https://insomnia.rest.
3.1.4.4. Ukážka backendu#
Na tento návod môžete použiť vlastnú obchodnú backendovú službu alebo online demonštračnú službu na adrese https://backend.demo.taler.net/instances/sandbox/.
3.1.4.5. Ďalšie poznámky k náhradám za objednávky obchodníkov#
Vrátenie peňazí v programe GNU Taler je spôsob, ako „vrátiť“ platbu. Musí ju autorizovať obchodník. Vrátenie môže byť za ľubovoľný zlomok pôvodne zaplatenej sumy, ale nemôže presiahnuť pôvodnú platbu. Vrátenie peňazí je časovo obmedzené a môže sa uskutočniť len počas doby, keď burza drží prostriedky za konkrétnu platbu v úschove. Čas, počas ktorého je možné vrátenie peňazí, možno kontrolovať nastavením parametra refund_deadline v príkaze. Predvolená hodnota tohto termínu vrátenia je uvedená v konfigurácii backendu obchodníka.
Frontend môže dať pokyn backendu obchodníka, aby autorizoval vrátenie peňazí prostredníctvom POST na koncový bod /private/orders/$ORDER_ID/refund.
Objekt JSON žiadosti o refundáciu má len dve polia:
refund: Suma, ktorá sa má vrátiť. Ak bola pre tú istú objednávku schválená predchádzajúca refundácia, nová suma musí byť vyššia, inak operácia nemá žiadny účinok. Hodnota udáva celkovú sumu, ktorá sa má vrátiť, nie zvýšenie náhrady.dôvod: Ľudsky čitateľné zdôvodnenie vrátenia peňazí. Tento dôvod používa len Back Office a zákazník ho nemá k dispozícii.
Ak je požiadavka úspešná (indikovaná stavovým kódom HTTP 200), odpoveď obsahuje taler_refund_uri. Frontend musí presmerovať prehliadač zákazníka na túto adresu URL, aby peňaženka mohla spracovať vrátenie peňazí.
Tento vystrihnutý kód ilustruje vrátenie peňazí:
>>> import requests
>>> refund_req = dict(refund="KUDOS:10",
... reason="Customer did not like the product")
>>> requests.post("https://backend.demo.taler.net/instances/sandbox/private/orders/"
... + order_id + "/refund", json=refund_req,
... headers={"Authorization": "Bearer secret-token:sandbox"})
<Response [200]>
Poznámka
Po udelení refundácie verejný koncový bod https://example.com/orders/$ORDER_ID zmení svoju interakciu s peňaženkou zo žiadosti o platbu na ponuku refundácie. Frontendy tak môžu prehliadače opäť presmerovať na tento koncový bod. Na tento účel je však potrebné doplniť pole h_contract (?h_contract=$H_CONTRACT), pretože verejný koncový bod ho vyžaduje na overenie klienta. Požadovaná hodnota $H_CONTRACT sa vráti v odpovedi na vrátenie peňazí pod poľom h_contract.
3.1.4.6. Ďalšie výukové programy#
Ak si chcete pozrieť ďalšie návody, môžete si prezrieť túto stránku alebo navštíviť stránku https://docs.taler.net, kde nájdete najnovšiu dokumentáciu o službách Taler.