1. Return: Redirects customer after completing the payment. Basic "payment details" are posted within this request
(note: acquirerRPN, respCode ... will be different on Live profiles because they are sent from the bank side)

  1.  acquirerMessage=
  2.  &acquirerRRN=
  3.  &cartId=cart_11111
  4.  &customerEmail=wajih%40domain.com
  5.  &respCode=G77803
  6.  &respMessage=Authorised
  7.  &respStatus=A
  8.  &token=
  9.  &tranRef=TST2028600008198

 

2. Callback: Posts payment details to this callback URL after completing the payment. More detailed "payment details" is returned. 

  1.    "tran_ref": "TST2028600008198",
  1.    "cart_id": "cart_11111",
  2.    "cart_description": "Description of the items",
  3.    "cart_currency": "SAR", (WHAT EVER THE APPLICABLE CURRENCY) IS
  4.    "cart_amount": "12.3",
  5.    "customer_details": {
  6.      "name": "wajih last",
  7.      "email": "[email protected]",
  8.      "phone": "0522222222",
  9.      "street1": "address street",
  10.      "city": "dubai", (WHAT EVER THE APPLICABLE CITY IS) 
  11.      "state": "DU", (WHAT EVER THE APPLICABLE STATE IS) 
  12.      "country": "AE", (WHAT EVER THE APPLICABLE COUNTRY IS) 
  13.      "ip": "92.98.175.138" (WHAT EVER THE APPLICABLE IP IS) 
  14.    },
  15.    "shipping_details": {
  16.      "name": "wajih last1",
  17.      "email": "[email protected]",
  18.      "phone": "971555555555",
  19.      "street1": "street2",
  20.      "city": "dubai", (WHAT EVER THE APPLICABLE CITY IS) 
  21.      "state": "DU", (WHAT EVER THE APPLICABLE STATE IS) 
  22.      "country": "AE", (WHAT EVER THE APPLICABLE COUNTRY IS) 
  23.      "ip": "92.98.175.138" (WHAT EVER THE APPLICABLE COUNTRY IS) 
  24.    },
  25.    "payment_result": {
  26.      "response_status": "A",
  27.      "response_code": "G77803",
  28.      "response_message": "Authorised",
  29.      "transaction_time": "2020-10-12T04:43:23Z"
  30.    },
  31.    "payment_info": {
  32.      "card_type": "Credit",
  33.      "card_scheme": "Visa",
  34.      "payment_description": "4111 11## #### 1111"
  35.    }

 

3. IPN Notification:  Merchant controls what notification type to receive. Transaction result are sent to IPN listener whenever an event occurs on merchant's account (based on the IPN configuration)

  1.    "tran_ref": "TST2028700008414",
  2.    "merchant_id": 1xxx,
  3.    "profile_id": 47xxx,
  4.    "cart_id": "cart_11111",
  5.    "cart_description": "Description of the items",
  6.    "cart_currency": "AED",
  7.    "cart_total": "12.3",
  8.    "tran_type": "Sale",
  9.    "tran_class": "ECom",
  10.    "customer_name": "wajih last",
  11.    "customer_email": "[email protected]",
  12.    "customer_country": "AE",
  13.    "customer_ip": "86.96.8.45",
  14.    "response_status": "A",
  15.    "response_code": "G70961",
  16.    "response_message": "Authorised",
  17.    "acquirer_message": "",
  18.    "acquirer_rrn": "",
  19.    "card_type": "Credit",
  20.    "payment_description": "4111 11## #### 1111"

 

4. IPN Sendgrid:  

To receive email notifications of transaction status via email

  1. Create free Sendgrid account
  2. Verify sender
  3. Get API key from your Sendgrid account
  4. Go to Merchant dashboard
    1. Create IPN/Sendgrid notification using API key;
    2. Configure Sendgrid email address (as sender);
    3. Configure receiver email address; and
    4. Indicate events that will trigger email notification.
  5. Whitelist the Sender. For Outlook: add Sender to Safe Senders List


5. Query transaction API:  Query transaction result whenever you want, usually after the payment completes and return URL has been called. The response is the same as callback response. https://secure.paytabs.com/payment/query