Step 1: Create New Order (REST API) 🔗

Use the below url to create an order in your (backend) server.

UAT URL: https://uatapi.payg.in/payment/api/order

Production URL: https://paygapi.payg.in/payment/api/order

/create


Authorization: basic authentication with base64encoded

PayGAuthentication –
<MerchantAuthenticationKey>:<MerchantAuthenticationToken>:M:<MerchantKeyId>
  
                  
                        
{
  "Merchantkeyid": "7963",
  "UniqueRequestId":  "f3f5b5c13f",
  "UserDefinedData": {
    "UserDefined1":  ""
  },
  "RequestDateTime":  "06232021",
  "RedirectUrl":  "https://payg.in",
  "TransactionData": {
    "AcceptedPaymentTypes":  "",
    "PaymentType":  "",
    "SurchargeType":  "",
    "SurchargeValue":  "",
    "RefTransactionId":  "",
    "IndustrySpecificationCode":  "",
    "PartialPaymentOption":  ""
  },
  "OrderAmount":  "100",
  "OrderType":  "",
  "OrderAmountData": {
    "AmountTypeDesc":  "3",
    "Amount":  "2"
  },
  "CustomerData": {
    "CustomerId":  "152433",
    "CustomerNotes":  "amway product",
    "FirstName":  "kanhaiya",
    "LastName":  "dhaked",
    "MobileNo":  "08619083450",
    "Email":  "demo@gmail.com",
    "EmailReceipt":  "true",
    "BillingAddress":  "44 bhawar nagar semal",
    "BillingCity":  "semla",
    "BillingState":  "Rajasthan",
    "BillingCountry":  "India",
    "BillingZipCode":  "30202020",
    "ShippingFirstName":  "yagyang",
    "ShippingLastName":  "dhaked",
    "ShippingAddress":  "44 bhawar nagar semal",
    "ShippingCity":  "semla",
    "ShippingState":  "Rajasthan",
    "ShippingCountry":  "India",
    "ShippingZipCode":  "30202020",
    "ShippingMobileNo":  "08619083450"
  },
  "IntegrationData": {
    "UserName":  "ranjith",
    "Source":  "3213",
    "IntegrationType":  "11",
    "HashData": "",
    "PlatformId": "1"
  },
 
}
  
 
         
 def orderCreate(self,post_data):
        #now = datetime.datetime.now()
        
        myfamily = {
            'Merchantkeyid':self.MerchantKeyId,
            'UniqueRequestId':PayGIntegration.get_random_string(10),
            'OrderAmount':post_data.get('OrderAmount'),
            'OrderType':post_data.get('OrderType'),
            "UserDefinedData" : {
                "UserDefined1" : ""    
            },
            "RequestDateTime":"",
            "RedirectUrl":"https://a2zfame.com",
            "TransactionData" : {
                "AcceptedPaymentTypes" : "Linus",
                "PaymentType" : 2011,
                "SurchargeType":"",
                "SurchargeValue":"",
                "RefTransactionId":"",
                "IndustrySpecificationCode":"",
                "PartialPaymentOption":""
            },
            'OrderAmountData':{
               "AmountTypeDesc":post_data.get('AmountTypeDesc'),
                "Amount":post_data.get('Amount')
            },
            "CustomerData":{
               "CustomerId":post_data.get('CustomerId'),
                "CustomerNotes":post_data.get('CustomerNotes'),
               "FirstName":post_data.get('FirstName'),
               "LastName":post_data.get('LastName'),
               "MobileNo":post_data.get('MobileNo'),
               "Email":post_data.get('Email'),
               "EmailReceipt":post_data.get('EmailReceipt'),
               "BillingAddress":post_data.get('BillingAddress'),
               "BillingCity":post_data.get('BillingCity'),
               "BillingState":post_data.get('BillingState'),
               "BillingCountry":post_data.get('BillingCountry'),
               "BillingZipCode":post_data.get('BillingZipCode'),
               "ShippingFirstName":post_data.get('ShippingFirstName'),
               "ShippingLastName":post_data.get('ShippingLastName'),
               "ShippingAddress":post_data.get('ShippingAddress'),
               "ShippingCity":post_data.get('ShippingCity'),
               "ShippingState":post_data.get('ShippingState'),
               "ShippingCountry":post_data.get('ShippingCountry'),
               "ShippingZipCode":post_data.get('ShippingZipCode'),
               "ShippingMobileNo":post_data.get('ShippingMobileNo'),
            },
            "IntegrationData":{
                "UserName":post_data.get("UserName"),
                "Source":post_data.get("Source"),
                "IntegrationType":post_data.get("IntegrationType"),
                "HashData":post_data.get("HashData"),
                "PlatformId":post_data.get("PlatformId"),
            }
        }

        message = self.AuthenticationKey+":"+self.AuthenticationToken+":M:"+self.MerchantKeyId
        message_bytes = message.encode('ascii')
        base64_bytes = base64.b64encode(message_bytes)
        base64_message = base64_bytes.decode('ascii')
        
        url = self.paymentURL+"/create"      
        payload = json.JSONEncoder().encode(myfamily);
        headers = {
        'content-type': "application/json",
        'authorization': "Basic "+base64_message,
        'cache-control': "no-cache",
        'postman-token': "d755d76a-eee0-437a-48f6-cd08297493f8"
        }

        response = requests.request("POST", url, data=payload, headers=headers)
        pprint.pprint("yagyang start")
        pprint.pprint(response.text)
        pprint.pprint("yagyang end")
        
        return json.loads(response.text)
        


      
{"OrderKeyId":"210619M11172U6f463b05b1",
"MerchantKeyId":11172,
"UniqueRequestId":"6f463b05b1",
"OrderType":"PAYMENT",
"OrderAmount":45,
"OrderId":77,
"OrderStatus":'',
"OrderPaymentStatus":0,
"OrderPaymentStatusText":'',
"PaymentStatus":0,
"PaymentTransactionId":'',
"PaymentResponseCode":0,
"PaymentApprovalCode":'',
"PaymentTransactionRefNo":'',
"PaymentResponseText":'',
"PaymentMethod":'',
"PaymentAccount":'',
"OrderNotes":'',
"PaymentDateTime":'',
"UpdatedDateTime":'',
"PaymentProcessUrl":"https:\/\/payg.in\/payment\/payment?orderid=210619M11172U6f463b05b1",
"OrderPaymentCustomerData":{
   "FirstName":"kanhaiya",
   "LastName":'dhaked',
   "Address":'jaipur',
   "City":'jaipur',
   "State":'RJ',
   "ZipCode":'302020',
   "Country":'IN',
   "MobileNo":"8619083450",
   "Email":"kl.nagar7@gmail.com",
   "UserId":'34',
   "IpAddress":'127.0.0.1'
   },
"UpiLink":"upi:\/\/pay?pa=A2zfame@yesbank&pn=A2zfame&mc=8999&am=0&mam=null&cu=INR&mode=01&orgid=00000&mid=YES0000001558758&sign=YzYxYzhmOWI5MjY1MjM3ZDEzMzQ0NDhkYWQ3NTNlZGE5OTcwMDE2MjEyODQ2ZDFiZjdlNTU4YmM3OThkOTY0NGIxYzk3OGIxNGZjM2VkMWRhYjA2MDA4MDhhZDY2M2Q2Y2I5MWQ4ZmExMTAzMjU0YzJhNTk4MDRjMzhlZmVkNGI="
}
  
 

Step 2: Payment process url for checkout 🔗

This payment url is used to redirect to actual payment screen.

Developer can redirect either by using javascript or other programming language.

This is a javascript example like window.location="Payment process url"

Step 3: Order Details (API request Parameters) 🔗

      
Authorization: basic authentication with base64encoded
PayGAuthentication –
<MerchantAuthenticationKey>:<MerchantAuthenticationToken>:M:<MerchantKeyId>
      
      

      
{
  "OrderKeyId": "210624M7963Ubd259588d4",
  "MerchantKeyId": "7963",
  "PaymentType": ''
};
 
      
      

      
def orderDetail(self,post_data):
        url = self.paymentURL+"/Detail"      
        message = self.AuthenticationKey+":"+self.AuthenticationToken+":M:"+self.MerchantKeyId
        message_bytes = message.encode('ascii')
        base64_bytes = base64.b64encode(message_bytes)
        base64_message = base64_bytes.decode('ascii')
        
        myfamily = {
            "OrderKeyId":post_data.get('OrderKeyId'),
            "MerchantKeyId":self.MerchantKeyId,
        }
        
        payload = json.JSONEncoder().encode(myfamily);
        headers = {
        'content-type':  "application/json",
        'authorization': "Basic "+base64_message,
        'cache-control': "no-cache",
        'postman-token': "d755d76a-eee0-437a-48f6-cd08297493f8"
        }

        response = requests.request("POST", url, data=payload, headers=headers)
        pprint.pprint("yagyang start")
        pprint.pprint(response.text)
        pprint.pprint("yagyang end")
        
         return json.loads(response.text)
    

    
      
      

      
{
"OrderKeyId": "210624M7963Ubd259588d4",
"MerchantKeyId": 7963,
"UniqueRequestId": "bd259588d4",
"OrderType": "213",
"OrderAmount": 1.00,
"OrderId": null,
"OrderStatus": "0",
"OrderPaymentStatus": 0,
"OrderPaymentStatusText": null,
"PaymentStatus": 0,
"PaymentTransactionId": null,
"PaymentResponseCode": 0,
"PaymentApprovalCode": null,
"PaymentTransactionRefNo": null,
"PaymentResponseText": null,
"PaymentMethod": null,
"PaymentAccount": null,
"OrderNotes": null,
"PaymentDateTime": null,
"UpdatedDateTime": "6/24/2021 6:12:43 PM",
"PaymentProcessUrl": null,
"OrderPaymentCustomerData": null,
"UpiLink": null
}
      
      

Note: Please check the payment status codes from this URL Payment Response codes Note: Please check the error codes from this URL Error codes