csob / paymentgateway

English documentation of the ČSOB Payment Gateway that offers an API for credit card payments, Apple Pay, Google Pay, mallpay and ČSOB Payment Button.
https://platbakartou.csob.cz/platebni-brana
GNU General Public License v3.0
121 stars 68 forks source link

Jak integračně otestovat refund #451

Closed pilec closed 5 years ago

pilec commented 5 years ago

Dobrý den,

snažím se ve své aplikaci o test nad branou pískoviště, kde bych zavolal endpoint /payment/refund a aby platba přešla ze stavu 8 (Platba zúčtována) na stav 9 (Zpracování na vrácení).

Platbu pro stav 7 (čekání na zúčtování) jsi jsem schopen vyrobit, ovšem nad ní refund volat nejde. pouze payment/reverse, bohužel ani payment/close mi ji do kýženého stavu v rámci jedné minuty nedostane.

Je možné z mé strany nějak platbu ve stavu 8 vyrobit?

Děkuji

Mspisar commented 5 years ago

Dobrý den, požadavek byl zaevidován a předán k řešení odpovědnému kolegovi. s pozdravem Spisar

mrazekl commented 5 years ago

Dobrý den, z vaší strany nemůžete nijak urychlit změnu stavu ze 7 -> 8. Jedná se o automatický process, kdy v nočních hodinách dojde k zaúčtování transakcí ve stavu 7. Pokud nemáte žádnou úspěšnou transakci z předchozího dne, nezbývá než počkat do půlnoci. Rozdíl mezi /refund a /reverse je ten, že reverse je k vrácení nezaúčtovaných trn(stav 4, 7) a refund na již zaúčtované(stav 8) trn, a refund může být částečný a vícenásobný až do nulové hodnoty.

pilec commented 5 years ago

Myslel jsem si, i tak děkuji. Teoreticky by bylo řeěšením udělat si transakci za řekněmež 1 000 000 Kč, a pak po koruně refundovat, ale to by platba zůstala i tak ve stavu 8, nebo se pletu?

mrazekl commented 5 years ago

Po refundu, ať částečném či celkovém, se mění stav transakce na 10. Stav 9 je pouze dočasný stav, než dojde k potvrzení mezi systémy, že byl požadavek na refund zpracován.

pilec commented 5 years ago

Hmm, takže by stejně můj scénář nefungoval, tedy dalo by se to otestovat pouze jednou a pak assert na stav refunded by byl bezpředmětný, protože by platba už v tom stavu byla. I tak děkuji.