def Payme(amount,number,order_id): requestData1 = '{"request":{"requestType": null,"merchantGuid":"eb88a61c-2fce-48f1-91df-89fd002694bb","merchantOrderId":'+order_id+',"salesWalletName":"PayTM","salesWalletGuid":"cefc9ead-1f79-4ba1-a308-423d1fe04264","payeeEmailId":null,"payeePhoneNumber":'+number+',"payeeSsoId":null,"appliedToNewUsers":"N","amount":'+amount+',"currencyCode":"INR","pendingDaysLimit":"0","callbackURL":"https://paytm.com/market/salesToUserCredit","cashbackPPIType":"0"},"metadata":"TestingData","ipAddress":"127.0.0.0:81","platformName":"PayTM","operationType":"SALES_TO_USER_CREDIT"}' checksum = Checksum.generate_checksum_by_str(requestData1, MERCHANT_KEY) headers = { 'Content-Type': 'application/json', 'mid': 'eb88a61c-2fce-48f1-91df-89fd002694bb', 'checksumhash': checksum } r2 = requests.post('https://trust.paytm.in/wallet-web/asyncSalesToUserCredit', data=requestData1, headers=headers) return r2
def CheckStatus(order_id): requestData1 = '{"request":{"requestType": "merchanttxnId","txnType":"SALES_TO_USER_CREDIT","txnId": '+order_id+',"merchantGuid" : "eb88a61c-2fce-48f1-91df-89fd002694bb"},"ipAddress":"127.0.0.0:81","platformName":"PayTM","operationType":"CHECK_TXN_STATUS","channel":"","version":""}' checksum = Checksum.generate_checksum_by_str(requestData1, MERCHANT_KEY) headers = { 'Content-Type': 'application/json', 'mid': 'eb88a61c-2fce-48f1-91df-89fd002694bb', 'checksumhash': checksum } r2 = requests.post('https://trust.paytm.in/wallet-web/txnStatusList', data=requestData1, headers=headers) return r2
def pay(bot, update): chat_id = get_chat_id(update.message) if account_created_or_not(chat_id): amount = update.message.text.split()[1] MERCHANT_MID = "udJWok56803358438193" MERCHANT_KEY = "hp@60IaAF%!vUs0A" endtime = str((datetime.datetime.now() + datetime.timedelta(days = 1)).strftime("%d/%m/%Y")) print(endtime) paythmParams = {} paythmParams['body'] = { "merchantRequestId": "0123681o82uwjsa", "mid": MERCHANT_MID, "linkName": "recharge", "linkDescription": "This link is to recharge", "linkType": "FIXED", "amount": str(amount), "expiryDate": endtime, "isActive": "true", "sendSms": "false", "sendEmail": "false", "customerContact": { "customerName": "Shreyas", "customerEmail": "*****@*****.**", "customerMobile": "8050825266" } } checksum = Checksum.generate_checksum_by_str(json.dumps(paythmParams['body']), MERCHANT_KEY) paythmParams['head'] = { "timestamp": str(int(time.time())), "clientId": "xxx", "version": "v1", "channelId": "WEB", "tokenType": "AES", "signature": checksum } post_data = json.dumps(paythmParams) # print(post_data) url = "https://securegw-stage.paytm.in/link/create" response = requests.post(url = url, data = post_data, headers = {"Content-type": "application/json"}) json_data = json.loads(response.text) link_to_send = json_data.get("body").get("shortUrl") link_id = json_data.get("body").get("linkId") save_to_db(chat_id, "payment_link", link_to_send) save_to_db(chat_id, "payment_link_id", link_id) update.message.reply_text("Please use the link below to pay the amount\n" + link_to_send)
requestData1 = OrderedDict([ ("request", OrderedDict([("requestType", "VERIFY"), ("merchantGuid", "XXXXXXXXXXXXXXXXXXXXXXXXXXX"), ("merchantOrderId", "12121236666"), ("salesWalletName", None), ("salesWalletGuid", "XXXXXXXXXXXXXXXXXXXXXXXXXXX"), ("payeeEmailId", None), ("payeePhoneNumber", "9711139557"), ("payeeSsoId", ""), ("appliedToNewUsers", "Y"), ("amount", "1"), ("currencyCode", "INR")])), ("metadata", "Testing Data"), ("ipAddress", "127.0.0.1"), ("platformName", "PayTM"), ("operationType", "SALES_TO_USER_CREDIT") ]) requestData = json.dumps(requestData1, separators=(',', ':')) checksum = Checksum.generate_checksum_by_str(requestData1, MERCHANT_KEY) hmacHeaders = { 'Content-Type': 'application/json', 'mid': 'XXXXXXXXXXXXXXXXXXXXXXXXXXX', 'checksumhash': checksum } i = 0 headerValue = [] for (key, value) in hmacHeaders.items(): val = str(key) + ':' + str(value) headerValue.insert(i, val) i += 1 print headerValue