收藏
回答

使用微信云开发调用微信支付没有收到回调通知?

按照微信支付的云开发文档提供的代码:

// 云函数代码
const cloud = require('wx-server-sdk')
cloud.init({
  env: cloud.DYNAMIC_CURRENT_ENV
})

exports.main = async (event, context) => {
  const res = await cloud.cloudPay.unifiedOrder({
    "body" : "小秋TIT店-超市", // 商品描述
    "outTradeNo" : "1217752501201407033233368018", // 商户订单号
    "spbillCreateIp" : "请传入终端 ip 地址,支持 ipv6", // 终端 IP
    "subMchId" : "1900009231", // 商户号
    "totalFee" : 1, // 总金额
    "envId": "test-f0b102", // 云函数环境名称
    "functionName": "payNotify" // 支付结果通知回调云函数名
  })
  return res
}

// 小程序代码
wx.cloud.callFunction({
  name: '函数名',
  data: {
    // ...
  },
  success: res => {
    const payment = res.result.payment
    wx.requestPayment({
      ...payment,
      success (res) {
        console.log('pay success', res)
      },
      fail (err) {
        console.error('pay fail', err)
      }
    })
  },
  fail: console.error,
})

写了functionName为payNotify,也添加并上传了payNotify云函数,但是支付成功后没有调用payNotify云函数,请问什么原因?
回答关注问题邀请回答
收藏

2 个回答

  • Felix
    Felix
    2023-11-10
    payNotify的代码呢
    


    2023-11-10
    有用
    回复
  • CRMEB
    CRMEB
    2023-10-30
    1. 请确保payNotify云函数已经正确部署并绑定到了正确的环境。你可以在云函数控制台查看云函数的部署状态和环境信息。
    2. 检查小程序代码中的name属性是否与payNotify云函数的名称一致。
    3. 确保小程序代码中的data对象包含了支付所需的所有参数,如商品描述、商户订单号等。
    4. 检查小程序代码中的wx.requestPayment方法是否正确调用。如果调用过程中出现错误,可以在控制台查看详细的错误信息。
    5. 如果以上都没有问题,可以尝试在云函数控制台中手动触发一次支付流程,看看是否能成功调用payNotify云函数。


    2023-10-30
    有用
    回复 7
    • Eason
      Eason
      2023-10-30
      前4点都没问题,第五点我也做了测试云函数payNotify能够调用到哈
      2023-10-30
      回复
    • CRMEB
      CRMEB
      2023-10-30回复Eason
      这......
      2023-10-30
      回复
    • Eason
      Eason
      2023-10-30回复CRMEB
      因为支付都成功了,没有回调到,我以为回调函数有问题 就手动触发了payNotify云函数,发现可以调到。。。
      2023-10-30
      回复
    • 林洪亮
      林洪亮
      01-15
      我也是这个情况
      01-15
      回复
    • 林洪亮
      林洪亮
      01-15
      楼主解决了吗
      01-15
      回复
    查看更多(2)
登录 后发表内容