Server to server notification V2(call back request)

FawryPay system will send http request to your system once the order created, paid, canceled, expired and delivered. You can optionally implement a service to receive this request so that you can avail the service to the customer or update your stock automatically.

You will send POST request to the Merchant Notification URL configured when creating the Merchant.

Sample Request:

{ "requestId":"c72827d084ea4b88949d91dd2db4996e", "fawryRefNumber":"970177", "merchantRefNumber":"9708f1cea8b5426cb57922df51b7f790", "customerMobile":"01004545545", "customerMail":"fawry@fawry.com", "paymentAmount":152.00, "orderAmount":150.00, "fawryFees":2.00, "shippingFees":null, "orderStatus":"NEW", "paymentMethod":"PAYATFAWRY", "messageSignature":"56bca514b2cc6822bf972a869a008f03cacebb14d19829368daa647dbc212aa5", "orderExpiryDate":1533554719314, "orderItems":[ { "itemCode":"e6aacbd5a498487ab1a10ae71061535d", "price":150.0, "quantity":1 } ] }

Request Parameters:

requestId: UUID generated Request id
fawryRefNumber: The reference number of this order in atFawry system which is displayed to the customer and used during the payment
merchantRefNumber: The reference number of this order at merchant's system.
customerName: The Customer Name
customerMobile: The Customer Mobile Number
customerMail: The Customer Email
customerMerchantId: The Profile id for the customer in the merchant system
paymentAmount: The amount value received from merchant to be paid by the customer, merchant can use it to verify that the customer pay the required amount to enable the service to the customer
orderAmount: The payment Amount without the fees
fawryFees: The fees added by fawry for the order amount
shippingFees: Shipping fees amount if present
orderStatus: New, PAID, CANCELED, DELIVERED, REFUNDED, EXPIRED
paymentMethod: The configured payment method for the merchant
paymentTime: The actual time for the payment if the Order Status is PAID
authNumber: The transaction number in the bank
paymentRefrenceNumber: Unique number registered in FawryPay system to keep track of the payment
orderExpiryDate: The order expiry in hours for this order if the merchant need to set specific expiry for this order if not set we will use the configured expiry hour per merchant
orderItems: A list of order items associated to the order
messageSignature: The SHA-256 digested for the following concatenated string fawryRefNumber + merchantRefNum + Payment amount(in two decimal format 10.00)+Order amount(in two decimal format 10.00)+Order Status + Payment method + Payment reference number ( if exist as in case of notification for order creation this element will be empty) + secureKey
Response Body:

FawryPay check on the http response status so return empty response and in case of http response status 200 the call back will marked as delivered else FawryPay will keep send for configured number of retries