首页 > 解决方案 > 如何将触发交易(前端)的 Paypal 用户与 IPN(后端)匹配?

问题描述

我正在使用 Paypal 托管的按钮来触发付款,然后在像这样的 Google Cloud 功能上接收 IPN。

exports.ipn = functions.https.onRequest((req, res) => {
   var reqBody = req.body;
   let reqPaymentDate = reqBody.payment_date;
   admin.database().ref('transactions/' + reqPaymentDate).set(reqBody);
   res.sendStatus(200);
});

消息正文不允许我知道我的 Firebase 注册用户中的哪一个触发了交易。此函数由 http 触发,因此 firebase 上下文未定义。

有没有办法知道在这种情况下是哪个用户触发了付款?

标签: firebasegoogle-cloud-functionspaypal-ipn

解决方案


在托管按钮类型上

<input name="custom" value="<yourUserId>" type="hidden">

然后,IPN 将包含名为 custom 的字段,其中包含您的用户 ID


推荐阅读