Php Paypal RestAPI没有启动Webhook
我正在开发一个使用贝宝RESTAPI的支付系统。 到目前为止还不错,我可以在沙箱模式下进行支付,没有任何问题 现在我需要paypal通知我某些事件。。。这就是我想使用Webhook的原因 我创建了一个小脚本,它只是将接收到的主体写入一个文本文件来进行一些调试。然后我在paypal的开发网站上创建了webhook。Webhook模拟器工作正常,来自paypal的json字符串工作正常。然而,当我只是通过我的网站进行支付时,没有webhook。它们似乎没有被调用,因为developer.paypal.com中没有显示任何webhook事件Php Paypal RestAPI没有启动Webhook,php,paypal,paypal-sandbox,webhooks,paypal-rest-sdk,Php,Paypal,Paypal Sandbox,Webhooks,Paypal Rest Sdk,我正在开发一个使用贝宝RESTAPI的支付系统。 到目前为止还不错,我可以在沙箱模式下进行支付,没有任何问题 现在我需要paypal通知我某些事件。。。这就是我想使用Webhook的原因 我创建了一个小脚本,它只是将接收到的主体写入一个文本文件来进行一些调试。然后我在paypal的开发网站上创建了webhook。Webhook模拟器工作正常,来自paypal的json字符串工作正常。然而,当我只是通过我的网站进行支付时,没有webhook。它们似乎没有被调用,因为developer.paypal
$payer = new Payer();
$payer->setPaymentMethod("paypal");
$payment = new PPayment();
$payment->setIntent("sale")
->setPayer($payer)
->setRedirectUrls($redirectUrls)
->setTransactions(array($transaction));
我使用的付款方式“贝宝”和“销售”的意图。这在理论上应该是可行的
有人知道吗?我做了一些研究,发现沙箱不时被窃听。。。但这是我需要测试的一个关键特性
希望你们能帮忙
问候语因此我发现了问题: 基本上,你必须在收到通知之前批准付款
在你的返回站点上,你只需要发送一个批准,你的webhook就会被触发 所以我发现了问题: 基本上,你必须在收到通知之前批准付款
在你的返回站点上,你只需要发送一个批准,你的webhook就会被触发 正如@MollocH所指出的,为了触发PayPal的网络挂钩,你必须在重定向到你的网站后批准付款
$payerId = // 'PayerID' from the GET query;
$paymentId = // 'paymentId' from the GET query;
$apiContext = // you know where to get this from
$payment = Payment::get($paymentId, $apiContext);
$execution = new PaymentExecution();
$execution->setPayerId($payerId);
try
{
$payment = $payment->execute($execution, $context);
// redirect user to success message or so
}
catch(\Exception $error)
{
}
正如@MollocH所指出的,为了触发PayPal的网络钩子,你必须在重定向到你的网站后批准付款
$payerId = // 'PayerID' from the GET query;
$paymentId = // 'paymentId' from the GET query;
$apiContext = // you know where to get this from
$payment = Payment::get($paymentId, $apiContext);
$execution = new PaymentExecution();
$execution->setPayerId($payerId);
try
{
$payment = $payment->execute($execution, $context);
// redirect user to success message or so
}
catch(\Exception $error)
{
}
这个答案非常罕见,应该在关于paypal Webhook的每一个主题中都加以说明。它确实需要发送支付执行器才能触发PayPal webhook。我也会用一点代码来回答。这个答案非常罕见,应该在关于paypal webhooks的每一个主题中说明。它确实需要发送支付执行器才能触发PayPal webhook。我也会用一点代码来回答。