API confirmPreauthorized

Conferma di un checkout preautorizzato (Server dell'esercente > Tinaba). Deve essere utilizzata durante il flusso "Tinaba Pay and Check".

Spiegazione degli attributi

Nome campoTipoMandatorioDescrizione
merchantIdStringYesIdentificativo dell'esercente assegnato da TINABA.
externalIdStringYesIdentificativo del pagamento pendente sul server dell'esercente. Deve essere univoco per ogni chiamata.
amountStringYesImporto da confermare in centesimi.






Per annullare il pagamento impostare amount = 0.
signatureStringYesFirma di autenticazione e integrità dei dati.

La firma d’integrità dei dati, scambiata nel campo “signature”, è basata su un segreto condiviso, scambiato offline, e generata utilizzando il protocollo SHA256.

signature = base64(SHA256(<merchantId><externalId><amount><secret>))

Per maggiori informazioni su come generare la firma d’integrità consultare:

Integrità dei dati >

Richiesta


{  
   "data":{  
      "request":{  
         "confirmP2PtransferByCaptureRequest":{  
            "confirmPreauthorizedCheckoutRequest":{  
               "merchantId":"12",
               "externalId":"TR_1",
               "amount":"100",
               "signature":"AAIR12345"
            }
         }
      }
   }
}

Risposte

200 Success


{  
   " response":{  
      "confirmP2PtransferByCaptureResponse":{  
         "confirmPreauthorizedCheckoutResponse":{  
            "status":"000"
         }
      }
   }
}

400 Errore Validazione


{  
   " response":{  
      "confirmP2PtransferByCaptureResponse":{  
         "confirmPreauthorizedCheckoutResponse":{  
            "status":"001",
            "errorCode":"XXX",
         }
      }
   }
}

$request = new ConfirmPreauthorizedCheckoutRequest();

$request->setExternalId('TR_01')
    ->setAmount('100'); // Amount expressed in cents

$response = $client->confirmPreauthorizedCheckout($request);

Per l'SDK PHP completo visitare questo link


from sdk.objects import ConfirmP2PtransferByCaptureRequest
action = factory.make('confirm.preauthorized.checkout')
action.body_params = ConfirmP2PtransferByCaptureRequest(externalId='TR_01',
                                                        amount='100')  # expressed in cents
response = action.run()

Per l'SDK PHP completo visitare questo link