用于Webpay网关API的Python包。
webpay-bahamta的Python项目详细描述
安装
从PyPI安装:
pip install webpay-bahamta
对于异步支持:
^{pr2}$使用
简单示例:
fromwebpayimportWebpayAPIAPI_KEY="webpay:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx:zzzzzzzz-zzzz-zzzz-zzzz-zzzzzzzzzzzz"webpay=WebpayAPI(API_KEY)# Make a paymentpayment_url=webpay.payment(reference='payment#1',amount_irr=100000,callback_url='https://example.com',payer_mobile='+989111111111',# Optionaltrusted_pan=None# Optional)# Verify paymenttry:payment_data=webpay.verify(reference='payment#1',amount_irr=100000)ifpayment_data.get("status")=="paid":print("Payment confirmed")else:print("Payment not confirmed")exceptExceptionasexc:ifexc.error_key=='NOT_CONFIRMED':print("Payment not confirmed")else:raiseexc
异步示例:
importasynciofromwebpayimportAsyncWebpayAPIAPI_KEY="webpay:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx:zzzzzzzz-zzzz-zzzz-zzzz-zzzzzzzzzzzz"webpay=AsyncWebpayAPI(API_KEY)asyncdefmain():# Make a paymentpayment_url=awaitwebpay.payment(reference='payment#1',amount_irr=100000,callback_url='https://example.com',payer_mobile='+989111111111',# Optionaltrusted_pan=None# Optional)# Verify paymenttry:payment_data=awaitwebpay.verify(reference='payment#1',amount_irr=100000)ifpayment_data.get("status")=="paid":print("Payment confirmed")else:print("Payment not confirmed")exceptExceptionasexc:ifexc.error_key=='NOT_CONFIRMED':print("Payment not confirmed")else:raiseexcloop=asyncio.get_event_loop()loop.run_until_complete(main())
付款网址如下:
https://webpay.bahamta.com/api/…
付款数据如下:
{"state":"paid","total":1000000,"wage":5000,"gateway":"sep","terminal":"11223344","pay_ref":"GmshtyjwKSu5lKOLquYrzO9BqjUMb/TPUK0qak/iVs","pay_trace":"935041","pay_pan":"123456******1234","pay_cid":"77CB1B455FB5F60415A7A02E4502134CFD72DBF6D1EC8FA2B48467DFB124AA75A","pay_time":"2019-11-12T16:39:57.686436+03:30"}
- 项目
标签: