Incrementing an existing authorized invoice
It is possible to increment the amount authorized on a payment by submitting incremental authorizations. On the authorization request the value of the incremental property has to be true and the status of the transaction has to be authorized. (Note: Must also be supported by the PSP. Please contact our support to know more!)
Use the details below to set up your request.
Backend SDK
// authorize
curl -X POST https://api.processout.com/invoices/iv_MgeLS2Rr3ZGwjqOvDvYSuWx7ce88luXl/authorize \
-u test-proj_gAO1Uu0ysZJvDuUpOGPkUBeE3pGalk3x:key_sandbox_mah31RDFqcDxmaS7MvhDbJfDJvjtsFTB
-d incremental=true
-d source={customer or token}
// increment authorization
curl -X POST https://api.processout.com/invoices/iv_MgeLS2Rr3ZGwjqOvDvYSuWx7ce88luXl/increment_authorization \
-u test-proj_gAO1Uu0ysZJvDuUpOGPkUBeE3pGalk3x:key_sandbox_mah31RDFqcDxmaS7MvhDbJfDJvjtsFTB
-d amount="10.00"
// TODO create invoice
// authorize
invoice.authorize("source",{"incremental" : true}).then(
function(transaction) {
// The invoice was authorized and returned a transaction
}, function(err) {
// The invoice could not be authorized
});
// increment authorization
invoice.incrementAuthorization("iv_MgeLS2Rr3ZGwjqOvDvYSuWx7ce88luXl","10.00").then(
function(transaction) {
// The authorization amount was incremented and returned a transaction
}, function(err) {
// The The authorization amount could not be incremented
});
// TODO create invoice
// authorize
transaction = invoice.authorize("source",{"incremental" : true})
// increment authorization
transaction = invoice.increment_authorization("iv_MgeLS2Rr3ZGwjqOvDvYSuWx7ce88luXl","10.00")
// TODO create invoice
// authorize
transaction = invoice.authorize("source",{"incremental" => true})
// increment authorization
transaction = invoice.increment_authorization("iv_MgeLS2Rr3ZGwjqOvDvYSuWx7ce88luXl","10.00")
// TODO create invoice
// authorize
$transaction = $invoice->authorize("source",array("incremental"=>true);
// increment authorization
$transaction = $invoice->incrementAuthorization("10.00");
// TODO create invoice
// authorize
opt := InvoiceAuthorizeParameters{
Invoice: &Invoice{
Incremental: true,
},
}
tr, _ := iv.Authorize("source",opt)
// increment authorization
tr, _ := iv.IncrementAuthorization("10.00")
Mobile
ProcessOut.incrementAuthorizationAmount(invoiceId: "iv_MgeLS2Rr3ZGwjqOvDvYSuWx7ce88luXl", amount: 1, handler: handler)
p.incrementAuthorizationAmount("iv_MgeLS2Rr3ZGwjqOvDvYSuWx7ce88luXl", 1, handler);
Web
incrementAuthorizationAmount("iv_MgeLS2Rr3ZGwjqOvDvYSuWx7ce88luXl",1,success,error)