Webhook architecture
Upon transaction generation, Merchant provides
hookUrl
.Payze calls back
hookUrlV2
with HTTPPOST
method when any change occurs to the transaction.
Security Recommendation
TODO: Add auth token and security recommendations with your hook url
Expect the following Request body
upon Hook activation
Request body
upon Hook activation{
"PaymentId": "E066159D6D3C416D9F3490258EBC73F4", // Transaction ID
"Type": "JustPay", // Method
"Sandbox": false, // Sandbox(test) transaction identifier
"PaymentStatus": "Draft", // Payment transaction status {Draft,Captured}
"Amount": 0.03, // Transaction Amount
"FinalAmount": null, // Amount after partial refund/commit
"Currency": "GEL", // Currency
"Commission": 2.50, // Transaction Comission
"Preauthorized": false,
"CanBeCaptured": false, // Can be commited status
"CreateDate": 638155893040924688, // Transaction date {data type long}
"CaptureDate": null, // Transaction final capture date
"BlockDate": null, // Transaction Block date
"CardMask": null, // Customer Card Number
"CardBrand": null, // Card Brand {VISA,MASTERCARD,AMEX}
"CardCountry": null, // Card Country idetifier
"CardHolder": null, // Card Owner Info
"ExpirationDate": null, // Card expiration data
"RejectionReason": null, // Transaction rejected reason (If rejected)
"Refund": {
"Refundable": false, // Refundable {true/false}
"Amount": null, // Amount refunded
"RequestedAmount": null, // Refund Requested
"RefundDate": null, // Refund request data
"Revisions": [] // Refund requests info
},
"Splits": [
{
"Amount": 0.01, // Split Amount
"Iban": "GE33TB0000000000000000", // Split Iban
"PayIn": 0.0, // PayIn data
"Status": null, // Split cashout status
"Description": null, // Split description
"CashOutOrder": [] // Split cashout logs
}
]
}
Refer to understand more about how transaction statuses are used.
Transaction Status | Description |
---|---|
Draft | When the transaction is created and waiting for card details for the next action. |
Blocked | The funds have been successfully blocked on the card. Usually, this means you have used preauthorize : True Transactions with Blocked statuses need to be committed within 30 days, otherwise they will be refunded automatically. |
Captured | The funds have been captured successfully from the cardholder. |
Refunded | The transaction has been refunded fully. |
PartiallyRefunded | The transaction amount has been refunded partially. |
Rejected | The transaction was rejected, because of different reasons. |