支付宝开放平台“电脑网站支付”适配器(RSA2),使用 Grok 编写,适用于 FOSSBilling。
社区非官方扩展,与支付宝、FOSSBilling 官方无关。请先在测试环境验证再用于真实收款。
在 FOSSBilling 0.8.7(示例站点)上,使用国内个人支付宝“电脑网站支付”应用完成以下测试:
- 填写开放平台 App ID、应用私钥、支付宝公钥后可正常发起支付
- 客户选择支付宝可跳转收银台并完成付款
- 异步通知验签通过后,发票会更新为已支付并激活订单
- 币种:仅支持人民币 CNY
国内个人/商家电脑网站支付通常只结算人民币。请将相关产品与发票币种设为CNY,不要使用 USD 等外币标价(本适配器不做汇率转换)。 - 需已开通支付宝开放平台应用,并开通“电脑网站支付”
- 加签方式必须为 RSA2
- 单笔/单日限额以你在开放平台申请到的额度为准(未提交营业执照应用的额度较低,单笔不超过50元,单日不超过1000元)
- 将 AliPay 保存到:
library/Payment/Adapter/AliPay.php - 后台 → 支付网关 → 新建 → 选择 AliPay。
- 填写:
- App ID
- 应用私钥(PKCS8,去掉头尾与换行)
- 支付宝公钥(开放平台里的“支付宝公钥”,不要填应用公钥)
- 开放平台应用需先开通“电脑网站支付”,并上传与私钥匹配的应用公钥,加签方式选 RSA2。
notify_url由 FOSSBilling 自动生成,无需手动配置。
| 配置项 | 来源 |
|---|---|
| 应用私钥 | 本地生成,仅保存在 FOSSBilling |
| 应用公钥 | 上传到支付宝开放平台 |
| 支付宝公钥 | 开放平台生成后,填入 FOSSBilling |
把“应用公钥”误填为“支付宝公钥”时,往往能跳转并付款,但回调验签失败,账单不会自动变成已支付。
- 不要将应用私钥提交到 Git 仓库、聊天工具或公开页面
- 上线前用小额真实订单走通:支付 → 回跳 → 后台发票/交易状态 → 订单是否开通
- 定期在 FOSSBilling 与支付宝商户订单中核对账
MIT License(或你实际采用的许可证)。
本软件按“现状”提供。作者不对使用本扩展导致的资金损失、漏单、错账或业务中断承担责任。真实收款前请充分自测。