Paypal 自适应支付和 Webhook 事件未注册

Posted

技术标签:

【中文标题】Paypal 自适应支付和 Webhook 事件未注册【英文标题】:Paypal Adaptive Payments and Webhook Events Not Registering 【发布时间】:2017-08-20 21:59:13 【问题描述】:

Hello SO PayPal 社区。​​p>

即使我已注册所有事件类型,我也无法让 PayPal 从使用自适应支付的嵌入式支付流向我发送“Webhook 事件”通知。

首先,当我使用 PayPal 的 webhook 模拟器向我的 ngrok.io url 发送模拟通知时,我能够很好地接收传入的 POST 请求和随后的 JSON。

其次,当我使用 PayPal 的 Express Checkout 网页时,PayPal 会在销售完成时通知我。可以在 PayPal 开发者仪表板上的交易和 webhook 事件部分进行验证。

当我在下面嵌入自适应付款表单时,用户可以很好地完成 PayPal 流程。一切都按预期工作 - 从用户登录到付款成功页面。但是,没有发送通知。通知、事务或 webhook 事件部分的开发人员仪表板中没有任何内容。代码如下:

<html>
<head>
    <meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate" />
    <meta http-equiv="Pragma" content="no-cache" />
    <meta http-equiv="Expires" content="0" />
    <script src="https://www.paypalobjects.com/js/external/dg.js" type="text/javascript"></script>
    <style>
        #submitBtn
            position:relative;
            top:200px;
            left:40%;
            height:50px;
            width: 200px;
            font-size: 22px;
            border:3px solid #666;
        
    </style>
</head>
<body>
<form action="https://www.sandbox.paypal.com/webapps/adaptivepayment/flow/pay" target="PPDGFrame" class="standard">
<input type="image" id="submitBtn" value="Pay with PayPal"> 
<input id="type" type="hidden" name="expType" value="light">
<input id="paykey" type="hidden" name="paykey" value="AP-XXXXXXXXXX">
</form>
<script type="text/javascript" charset="utf-8">
var embeddedPPFlow = new PAYPAL.apps.DGFlow(trigger: 'submitBtn');
</script>
</body>
</html>

真诚感谢任何帮助。我要疯了。

K

【问题讨论】:

【参考方案1】:

刚刚在 PayPal 技术网站上收到来自 PayPal 全球技术支持团队的 Jennifer 的消息。显然,自适应支付不会触发 REST API 通知,只会触发 IPN 通知。

以下是 Jen 的完整信息:

感谢您联系 PayPal 商家技术支持。

Webhooks 仅适用于 Rest API 事件。 Rest API 不会与 Adaptive Payments 通信。

Adaptive Payments 使用的是经典 API。为了接收事件通知,您需要集成即时付款通知。

关于 IPN 的信息:

https://developer.paypal.com/docs/classic/products/instant-payment-notification/

“收到的付款,包括快速结帐和自适应付款。”

集成指南:

https://developer.paypal.com/docs/classic/ipn/integration-guide/IPNIntro/

IPN 变量: https://developer.paypal.com/docs/classic/ipn/integration-guide/IPNandPDTVariables/

IPN 模拟器: https://developer.paypal.com/docs/classic/lifecycle/sb_ipn/

【讨论】:

以上是关于Paypal 自适应支付和 Webhook 事件未注册的主要内容,如果未能解决你的问题,请参考以下文章

Paypal 自适应支付 IPN 回调:如何返回完整未更改的 ipn 消息

自适应支付 IPN 交易 ID 未出现

沙盒中未触发 Paypal webhook 事件

沙盒模式下未触发 PayPal Webhook 事件

PayPal 自适应支付与 Braintree 商家

PayPal自适应支付链式支付错误