Refund
L’autorizzazione riserva un importo sullo strumento di pagamento del buyer, riducendone temporaneamente la disponibilità. L’importo autorizzato può essere catturato, avviando il processo che porterà all’accredito del merchant, oppure liberato tramite cancellazione e reso nuovamente disponibile al buyer secondo le tempistiche dell’Issuer o del provider del metodo di pagamento.
A differenza della cancel, che libera un importo autorizzato ma non ancora catturato, la refund consente di richiedere lo storno totale o parziale di un importo già catturato. Lo storno avvia il processo per addebitare al merchant l’importo richiesto e restituirlo al buyer, secondo le tempistiche dell’Issuer o del provider del metodo di pagamento. La valuta dello storno è la stessa della transazione originaria.
Maggiori dettagli su stato ed eventi di una transazione sulla pagina di Transaction state .
Payload
POST payment/refund
Capture payload > POST payment/capture.
Request
POST /api/v1/payment/refund
Host (sandbox): sandbox.gestpay.net
Host (produzione): ecomms2s.sella.it
Authorization: apikey ****************
{
"shopLogin":"GESPAY12345",
"amount":"0.01",
"currency":"EUR",
"bankTransactionID":"",
"shopTransactionID":"",
"settlementID":"",
"paymentID":"1234567891234"
}
Response
{
"error": {
"code": "0",
"description": "request correctly processed"
},
"payload": {
"transactionType": "refund",
"transactionResult": "OK",
"shopTransactionID": "OrderID001",
"bankTransactionID": "123",
"paymentID": "1234567891234"
}
}
POST Refund payload with settlementID
Capture payload with settlementID > POST payment/capture with settlementID.
Request
POST /api/v1/payment/refund
Host (sandbox): sandbox.gestpay.net
Host (produzione): ecomms2s.sella.it
Authorization: apikey ****************
Content-Type: application/json
{
"shopLogin":"GESPAY12345",
"amount":"18.50",
"currency":"EUR",
"paymentID":"1234567891234",
"settlementID":"Capture_02"
}
Response
{
"error": {
"code": "0",
"description": "request correctly processed"
},
"payload": {
"transactionType": "refund",
"transactionResult": "OK",
"shopTransactionID": "OrderID001",
"bankTransactionID": "123",
"paymentID": "1234567891234"
}
}
Scenari di errore
Error code 2018
- Se viene richiesto di stornare un importo superiore a quanto catturato.
- Se viene richiesto di stornare usando un settlementID non presente tra quelli usati nelle catture della transazione per cui lo si sta chiedendo.
- Se viene richiesto di stornare una transazione già cancellata. Maggiori dettagli nella pagina dedicata alla cancel.
si ottiene quanto segue:
Response
{
"error": {
"code": "2018",
"description": "Transazione non stornabile"
},
"payload": {}
}
Error code 2011
- Se viene richiesto di stornare una transazione non esistente, si ottiene quanto segue:
Response
{
"error": {
"code": "2011",
"description": "Transaction not found"
},
"payload": {}
}
Error code 1144
- Se viene richiesto di stornare una transazione senza indicare l'identificativo della transazione (paymentID), si ottiene quanto segue:
Response
{
"error": {
"code": "1144",
"description": "Campo obbligatorio non valorizzato"
},
"payload": {}
}
Assistenza
Fabrick
- Status page: https://status.fabrick.com/
- Support: https://landing.fabrick.com/fabrick-dashboard-support