Python Telegram Bot paymentbot.py对接Stripe测试支付后台无记录问题咨询
问题解答
你不需要在官方示例基础上额外编写自定义API、HTTP请求代码,该示例本身的支付逻辑是完整的,你遇到的问题属于配置错漏,按以下顺序排查即可:
- 核对@BotFather的Stripe凭证配置:执行
/setstripecredentials时,必须填写Stripe测试模式的Secret Key,不要填成生产模式密钥,也不要和Publishable Key填反。这一步出错时Telegram不会返回明确错误,只会显示支付成功但不会将请求转发到Stripe。 - 核对代码中的金额单位配置:Stripe要求货币金额按最小单位传参,比如欧元需要按欧分传值,如果你在
sendInvoice方法的prices参数中直接填了欧元数值没有乘以100,会触发Telegram的静默校验失败,不会向Stripe发起支付请求。 - 核对Stripe后台权限配置:测试模式下暂时关闭webhook签名校验、IP白名单限制,Telegram向Stripe推送的支付请求如果被你的权限规则拦截,不会产生支付相关日志,仅会保留授权记录。
- 更换Telegram渠道专用的Stripe测试卡:Stripe单独渠道可用的测试卡不一定适配Telegram支付流程,使用卡号
4242 4242 4242 4242、任意未来有效期、任意3位CVV发起测试即可。
内容的提问来源于stack exchange,提问作者Ziur Olpa
相关产品推荐
相关产品推荐

