Tpay
API

Zwroty

Zlecenie zwrotu rozpoczyna się w momencie, kiedy chcesz zwrócić płatnikowi środki pieniężne za transakcję, którą wcześniej wykonał. Rozpoczęcie procesu zwrotu jest możliwe pod warunkiem, że na Twoim koncie znajdują się środki wystarczające do pokrycia całej kwoty zwrotu oraz prowizji za dokonanie zwrotu. Środki te zostaną odjęte z konta w chwili złożenia zlecenia zwrotu.

Zanim zaczniesz

Upewnij się, że:

Kanały płatności, które nie obsługują zwrotów

  • PayPal.

Realizacja zwrotu całkowitego

Aby zrealizować zwrot całkowity, wyślij żądanie POST na endpoint:

https://api.tpay.com/transactions/{transactionId}/refunds

Zastąp {transactionId} identyfikatorem transakcji, którą chcesz zwrócić:

https://api.tpay.com/transactions/ta_jrkNGj5L29pnlbqw/refunds

Sprawdź szczegóły w dokumentacji API Reference: POST /transactions/{transactionId}/refunds

Body żądania powinno być puste:

{}

Przykład:

curl --location --request POST 'http://api.tpay.com/transactions/ta_jrkNGj5L29pnlbqw/refunds' \
--header 'Authorization: Bearer <access_token>' \
--header 'Content-Type: application/json'
Uwaga

Transakcja, dla której został zrealizowany zwrot całkowity zmieni status na refund.

Realizacja zwrotu częściowego

Aby zrealizować zwrot częściowy, wyślij żądanie POST na endpoint:

https://api.tpay.com/transactions/{transactionId}/refunds

Zastąp {transactionId} identyfikatorem transakcji, którą chcesz zwrócić:

https://api.tpay.com/transactions/ta_jrkNGj5L29pnlbqw/refunds

Sprawdź szczegóły w dokumentacji API Reference: POST /transactions/{transactionId}/refunds

W zapytaniu określ następujące parametry:

amount
Kwota zwrotu (w złotówkach).

Podstawowe body żądania powinno wyglądać następująco:

{
  "amount": 100.15
}

Przykład:

curl --location --request POST 'http://api.tpay.com/transactions/ta_jrkNGj5L29pnlbqw/refunds' \
--header 'Authorization: Bearer <access_token>' \
--header 'Content-Type: application/json'
--data '{
"amount": 100.15
}'
Uwaga

Transakcja, dla której został zrealizowany częściowy zwrot, nie zmieni statusu. Nawet gdy suma zwróconych częściowych zwrotów osiągnie 100% kwoty transakcji, status transakcji nie zostanie zmieniony na refund.

Pobranie zwrotów dla danej transakcji

Aby pobrać zwroty dla danej transakcji, wyślij żądanie GET na endpoint:

https://api.tpay.com/transactions/{transactionId}/refunds

Zastąp {transactionId} identyfikatorem transakcji, dla której chcesz uzyskać listę zwrotów:

https://api.tpay.com/transactions/ta_jrkNGj5L29pnlbqw/refunds

Sprawdź szczegóły w dokumentacji API Reference: GET /transactions/{transactionId}/refunds

W zapytaniu możesz określić następujące parametry (queryParam) w celu filtrowania zwrotów:

from
Data i czas w formacie yyyy-mm-dd hh:mm:ss.
to
Data i czas w formacie yyyy-mm-dd hh:mm:ss.
page
Numer strony.
limit
Liczba wyników na stronę.

Przykład:

curl --location 'https://api.tpay.com/transactions/ta_jrkNGj5L29pnlbqw/refunds?from=2023-03-01%2013%3A44%3A55&to=2023-03-01%2014%3A44%3A55&page=1&limit=35' \
--header 'Authorization: Bearer <access_token> '\

Po wysłaniu żądania otrzymasz w odpowiedzi schemat GET /transactions/{transactionId}/refunds

Pobranie listy zwrotów

Aby pobrać listę ostatnich zwrotów, wyślij żądanie GET na endpoint:

https://api.tpay.com/refunds

Sprawdź szczegóły w dokumentacji API Reference: GET /refunds

W zapytaniu możesz określić następujące parametry (queryParam) w celu filtrowania zwrotów:

payerEmail
E-mail płatnika.
transactionTitle
Tytuł transakcji.
context
Typ zwrotu (transactional, card).
token
Token płatniczy (Możliwy tylko, gdy context: card).
from
Data i czas w formacie yyyy-mm-dd hh:mm:ss.
to
Data i czas w formacie yyyy-mm-dd hh:mm:ss.
page
Numer strony.
limit
Liczba wyników na stronę.

Przykład:

curl --location 'https://api.tpay.com/refunds?payerEmail=Jan%20Nowak&transactionTitle=TR-123&context=transactional&from=2024-03-01%2013%3A44%3A55&to=2024-06-01%2014%3A44%3A55&page=1&limit=35' \
--header 'Authorization: Bearer <access_token> '\

Pobranie informacji o pojedynczym zwrocie

Aby pobrać informacje o pojedynczym zwrocie, wyślij żądanie GET na endpoint:

https://api.tpay.com/refunds/{refundId}

Zastąp {refundId} identyfikatorem zwrotu:

https://api.tpay.com/refunds/ta_jrkNGj5L29pnlbqw

Sprawdź szczegóły w dokumentacji API Reference: GET /refunds/{refundId}

Przykład:

curl --location 'https://api.tpay.com/refunds/123' \
--header 'Authorization: Bearer <access_token> '\

Po wysłaniu żądania otrzymasz w odpowiedzi schemat GET /refunds/{refundId}.

Statusy zwrotów

StatusOpis
New (nowy)Środki zostały zlecone do zwrotu przez Akceptanta.
Pending (oczekujący)Zwrot ma status oczekujący.
Cancel (anulowany)Zwrot został anulowany.
Hold (wstrzymany)Zwrot został wstrzymany przez pracownika Biura Obsługi Klienta, zgodnie z dyspozycją e-mailową bądź telefoniczną Akceptanta.
Done (zrealizowany)Zwrot został zrealizowany, a środki zostały przekazane na rachunek bankowy płatnika.
Processed (przeprocesowany)Zwrot został poprawnie przeprocesowany, oczekujemy na potwierdzenie banku.
BLIK_pendingZwrot oczekuje na realizację.
BLIK_processedZwrot został poprawnie przeprocesowany, środki znajdują się na rachunku bankowym płatnika.
BLIK_incorrectZwrot został poprawnie przeprocesowany, środki znajdują się na rachunku bankowym płatnika.