Wenprise Alipay Gateway For WooCommerce 支付宝支付网关插件设置教程

阅读时间: 30 minutes.

在这个插件中,我们使用的是「蚂蚁金服开放平台」中的「开放平台密钥」,而不是其他类型的密钥,请注意区分。如果您现有的 「mapi 网关密钥」,需要升级或重新申请开放平台密钥后才可以使用本插件。

  1. 打开支付宝 PID 和公钥管理页面

    打开页面:https://openhome.alipay.com/platform/keyManage.htm、用你的支付宝账户登录。

  2. 获取 APPID、开始设置应用公钥

    下图中的 「APPID」就是我们插件中需要的 APPID,把他复制下来,粘贴到插件的「APPID」处。然后,依次点击下图中的「开放平台密钥」、「设置应用公钥」

  3. 在弹出的窗口中点击「设置应用公钥」

    设置应用公钥,供支付宝验证我们使用私钥加密的签名使用。

  4. 使用手机验证码或支付密码进行验证

    设置公钥需要手机验证,填写手机接收到的验证码即可。

  5. 点击「支付宝密钥生成器」下载支付宝密钥生成工具

    下图为 Mac 版的,Windows 版的类似。

  6. 打开下载的支付宝密钥生成工具、点击「生成密钥」

    生成后,「生成 RSA 密钥」按钮变成了「重新生成」,位置是一样的。

  7. 支付宝新版密钥生成工具的界面。

    我们只使用其中的「生成密钥」功能,密钥生成后,把其中的「应用私钥」复制到 WooCommerce 设置中,「应用公钥」复制到支付宝中,然后从支付宝中复制「支付宝公钥」到 WooCommerce 设置。

  8. 复制「步骤 6」生成的公钥、填写到「步骤 5」的文本框中、点击保存。

    保存成功后,出现如下界面,点击「查看支付宝公钥」,看到的支付宝公钥就是我们插件中需要的支付宝公钥,复制粘贴到插件的「支付宝公钥」处。

  9. 点击「步骤 6 」中的「打开文件位置」按钮。

    在出现的文件夹中找到「rsa_private_key.pem」或「应用私钥2048」这个文件,这个文件里面的内容就是我们需要的应用私钥,用记事本打开这个文件,复制里面的内容到插件的「应用私钥」处。

  10. 设置授权回调地址

    点击下图中的「设置」链接,在弹出的窗口中输入插件设置页面的授权回调地址,格式如下:http://你的域名/wc-api/wprs-wc-alipay-notify/

  11. 最后,在插件页面点击「保存更改」按钮。

    插件到这里就设置成功了,可以随便买个商品测试一下,如果没有意外,就可以使用支付宝进行支付了。

签名错误问题一般都是设置错误,请仔细对照此进行设置,如果实在解设置不好,可以购买「WooCommerce支付宝插件设置服务」,然后联系我协助设置。

时间精力有限,恕不能提供免费服务。

本站提供 WordPress 主题定制开发服务

本站长期承接 WordPress 主题、插件、基于 WooCommerce 的商店商城开发业务。 我们有 8 年 WordPress 开发经验,如果你想 用 WordPress 开发网站, 请联系 QQ: 470266798,或邮箱: 4626395@gmail.com 咨询。

44 thoughts on “Wenprise Alipay Gateway For WooCommerce 支付宝支付网关插件设置教程

  1. 一直遇到 “ 错误代码 insufficient-isv-permissions 错误原因: ISV权限不足,建议在开发者中心检查签约是否已经生效”
    支付宝是申请的线下店铺当面付,且已成功上线,不知何故?
    是要申请 手机网站支付 吗?如果是,则又会遇到icp证申请问题,我域名是godaddy申请的、空间是hostgater,是不是这些都不满足插件使用条件呢?谢谢

    1. 是需要申请「电脑网站支付」和「手机网站支付」这两个产品的,「当面付」产品目前无法使用。

    2. 申请支付宝是需要备案的否者你网站无法使用电脑网站或者手机网站支付的.,个人也是无法申请的。
      支持申请的是个体工商户和企业……
      线下支付跟线上支付是两种不同业务……

  2. 楼主辛苦!请问可不可以加入一段防止浏览器自动检测弹窗拦截支付的代码啊?找了半天代码也没找到在哪里。这个在支付的时候太重要了。我是想在点击支付的时候先打开一个空白的新窗口,这种浏览器也会认为是用户点击行为而不会拦截。网上很多例子是直接给新窗口的location.href设置为新url,但是在需要表单form提交的情况下不行。那么我的思路就是获取新窗口,然后给空白的新窗口innerHTML设置为支付宝返回的表单内容,然后在空白新窗口自身打开新页面,这样也可以解决此问题。因为支付宝三方接口返回的form表单默认就是从自身页面打开的,所以该方法应该可行的。

    1. 正在想办法解决这个问题,你说的思路应该是可以的,不过在 WooCommerce 是实现起来有点复杂。最终肯定会找到一个合适的方法的,敬请期待。

        1. 目前没有太好的解决方案,可能的解决方案是加一个手动到支付宝支付的按钮,这样会多一步操作。如果你有好的建议,欢迎提出来。

  3. 哈哈哈,期待期待!还可以顺便修复下在手机上打开网站进行支付的时候,那个用户选择支付成功或支付失败的窗口超出手机屏幕的问题,只能关闭网站重新输入网址。

  4. 遇到个奇怪的问题求助,我把wordpress从一台Linux迁移到windows server上之后这个插件就不工作了,迁移的方式是直接复制整个wordpress目录到新服务器,数据库直接从原来的数据库导入的,请问大概会是什么原因导致这个插件无法正常工作了呢

  5. 请问不能用沙箱环境测试吗,我把代码量的网关都改成了沙箱网关,测试不通,问题非常多

    1. 这个应该是支付宝沙箱模式的问题,根据支付宝的文档,正式模式和沙箱模式的区别就是换了个网关 URL。建议直接使用正式模式测试。

      1. 这几天一直在测试这个插件,好多问题跟您反馈一下:
        1. 手机端支付,某些浏览器比如UC,支付弹窗会完全不显示,也不提示被拦截,进后台看订单竟然是支付成功的状态;
        2. 支付弹窗被拦截;
        3. 有时支付成功后,从支付宝返回网站会出现“此站点正遇到技术问题”,有时又会正常怀疑跟订单号格式有关;
        涉及到支付,可能一点bug也会很致命,希望再优化一下

        1. 1、会有弹窗的问题,未支付显示支付成功的问题应该已经解决过了,我有空再测试一下。
          3、“此站点正遇到技术问题” 是 WordPress 的致命错误提示,可以把调试模式打开,看一下具体是什么错误。

          最近在做项目,可能没有太多精力来测试这个插件,如果你能找到具体的错误,可以把错误信息发出来,我来针对性的进行测试。

  6. 支付完毕,跳转到/wc-api/wprs-wc-alipay-return/?charset=UTF-8&out_trade_no=8878&method=alipay.trade.page.pay.return&total_amount=0.10&sign=Jc%2BftvEhzF5qV3d6qFaPy3XWVXlqYaLTHr6%2FHNgZgYNz%2BwDipZLtE%2FjSntLfoyHqFzIZCbgU%2BORtx6xS7wXupJN3qdfr46o5gyAnI9mIciExDH%2Fe%2B7SqiRsXBWjsGoQsP2%2BXuPPiP8nvIyq5zaqNJYd8WDrJz8SqgZumm6X7xCsHWEK00KYhFNZmp3r%2B8mL3VOXnb34%2Blhl75fjywVz4HKG%2FVBFDOOHHiNawz2iIkxGeYu8uGZDnFGkksaXDpihYMhnUjOJ6JqPaHo06UNM2lfJMDxux025Y%2F1lDU%2FdpENrKjZe7hF%2FkPjimLZA6V9PS5G8hOfo2bEQUV0r%2FS4GNVA%3D%3D&trade_no=2019101722001482010568913515&auth_app_id=2019101268301743&version=1.0&app_id=2019101268301743&sign_type=RSA2&seller_id=2088002464307367&timestamp=2019-10-17+18%3A26%3A58
    最后提示The signature is not match

  7. 点击到支付宝付款,错误代码 invalid-signature 错误原因: 验签出错,sign值与sign_type参数指定的签名类型不一致:sign_type参数值为RSA2,您实际用的签名类型可能是RSA

  8. 正确设置了各项参数,点击结账按钮转到页面,出现了支付宝的图案,可是页面上面一直有个圈⭕在运行,点击不了下一步,这是什么原因?

  9. 你好,请问在点付款的时候,跳转到支付宝页面(正在跳转到支付宝,请在跳转后继续支付。),需要等待很长时间,这是什么原因?是主题慢么?

      1. 我的接口加签方式,不小心选了证书了,没法选择公钥,这样发现调用接口失败,请问有没有解决方案,谢谢

  10. 手机支付完成,出现,The signature is not match,是什么问题?

  11. 提交订单一直卡在提交页面,另外/wc-api/wprs-wc-alipay-return/这个回调地址没在网站根目录下发现这个文件夹呢。

  12. 为什么ios端网页无法跳转,Android端网页可以跳转但会提示拦截,电脑网页第一次可以正常跳转,但若未支付返回再继续提交就无法再次跳转支付,从订单中再点击付款也是无法跳转支付。?

  13. 作者你好,更新了最新版本之后,手机支付弹窗被国内浏览器拦截,不会被拉起的问题已经解决了,幸苦了。但是还是有个问题,试了手机网页支付和电脑网页支付,都提示The signature is not match。看了前面说是可能密钥配置错误,我问了支付宝的客服,说是支付宝公钥是不变的,而应用公钥也是按照上面教程生成的,重新配置了几次加签方式还是行不通,想问下可能是哪个密钥导致的问题呢。

  14. 你的教程和目前的支付宝平台的应用界面有出入,上传证书并获得支付宝公钥后,在后台设置完参数,前台提交订单,提示 如下,试过无数次都这样:调试错误,请回到请求来源地,重新发起请求。
    ——————————–
    错误代码 invalid-signature 错误原因: 验签出错,建议检查签名字符串或签名私钥与应用公钥是否匹配,网关生成的验签字符串为:alipay_sdk=lokielse/omnipay-alipay&app_id=。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。;version=1.0
    —————————————————
    说明:如果您不是因为本接口集成调试而看见该错误提醒,请联系本次请求来源网站,本错误属于网站集成接口的错误。

发表评论

电子邮件地址不会被公开。 必填项已用*标注

*