首页 > 解决方案 > PayPal WebHooks - Paypal-cert-url

问题描述

我在使用 PayPal webhook 时遇到问题,我将收到所有 webhook,但处理激活购买的 webhook 除外BILLING.SUBSCRIPTION.ACTIVATED

我认为这与我的代码有关:

$signatureVerification = new VerifyWebhookSignature();
$signatureVerification->setAuthAlgo($headers['PAYPAL-AUTH-ALGO']);
$signatureVerification->setTransmissionId($headers['PAYPAL-TRANSMISSION-ID']);
//$signatureVerification->setCertUrl($headers['PAYPAL-CERT-URL']);
$signatureVerification->setWebhookId("###########"); 
$signatureVerification->setTransmissionSig($headers['PAYPAL-TRANSMISSION-SIG']);
$signatureVerification->setTransmissionTime($headers['PAYPAL-TRANSMISSION-TIME']);

我确定这与 cert-url 被注释掉有关,但是当我取消注释它时,它会导致 500 错误,如果我打电话给 paypal,他们的技术支持有“不知道什么是 webhook”,所以我坐在这里摸不着头脑,想知道如何获得付款激活通知,我收到了关于订阅被取消或暂停等的通知,但激活、重新激活等没有通过.

编辑:paypal webbook 文档

编辑 2:Webhook 事件详细信息

{
"id": "##########",
"create_time": "2021-07-16T17:09:06.604Z",
"resource_type": "subscription",
"event_type": "BILLING.SUBSCRIPTION.ACTIVATED",
"summary": "Subscription activated",
"resource": {
    "quantity": "1",
    "subscriber": {
        "email_address": "#####",
        "payer_id": "#####",
        "name": {
            "given_name": "####",
            "surname": "###"
        },
        "shipping_address": {
            "name": {
                "full_name": "### ###"
            },
            "address": {
                "address_line_1": "####",
                "admin_area_2": "######",
                "admin_area_1": "##",
                "postal_code": "#####",
                "country_code": "##"
            }
        }
    },
    "create_time": "2021-07-16T15:46:02Z",
    "plan_overridden": false,
    "shipping_amount": {
        "currency_code": "USD",
        "value": "0.0"
    },
    "start_time": "2021-07-16T15:45:34Z",
    "update_time": "2021-07-16T17:08:52Z",
    "billing_info": {
        "outstanding_balance": {
            "currency_code": "USD",
            "value": "0.0"
        },
        "cycle_executions": [
            {
                "tenure_type": "REGULAR",
                "sequence": 1,
                "cycles_completed": 1,
                "cycles_remaining": 0,
                "current_pricing_scheme_version": 5,
                "total_cycles": 0
            }
        ],
        "last_payment": {
            "amount": {
                "currency_code": "USD",
                "value": "1.0"
            },
            "time": "2021-07-16T15:46:03Z"
        },
        "next_billing_time": "2021-08-16T10:00:00Z",
        "failed_payments_count": 0
    },
    "links": [
        {
            "href": "https://api.paypal.com/v1/billing/subscriptions/#####/cancel",
            "rel": "cancel",
            "method": "POST",
            "encType": "application/json"
        },
        {
            "href": "https://api.paypal.com/v1/billing/subscriptions/#####",
            "rel": "edit",
            "method": "PATCH",
            "encType": "application/json"
        },
        {
            "href": "https://api.paypal.com/v1/billing/subscriptions/######",
            "rel": "self",
            "method": "GET",
            "encType": "application/json"
        },
        {
            "href": "https://api.paypal.com/v1/billing/subscriptions/#####/suspend",
            "rel": "suspend",
            "method": "POST",
            "encType": "application/json"
        },
        {
            "href": "https://api.paypal.com/v1/billing/subscriptions/###/capture",
            "rel": "capture",
            "method": "POST",
            "encType": "application/json"
        }
    ],
    "id": "#######",
    "plan_id": "#####",
    "status": "ACTIVE",
    "status_update_time": "2021-07-16T17:08:52Z"
},
"status": "PENDING",
"transmissions": [
    {
        "webhook_url": "https://####.com/#####/agreementmade.php",
        "http_status": 500,
        "reason_phrase": "HTTP/1.1 200 Connection established",
        "response_headers": {
            "Server": "Apache",
            "content-Security-Policy": "upgrade-insecure-requests",
            "Connection": "Upgrade, close",
            "Content-Length": "0",
            "Upgrade": "h2,h2c",
            "Date": "Fri, 16 Jul 2021 18:37:56 GMT",
            "Content-Type": "text/html; charset=UTF-8"
        },
        "transmission_id": "######",
        "status": "PENDING",
        "timestamp": "2021-07-16T18:20:34Z"
    }
],
"links": [
    {
        "href": "https://api.paypal.com/v1/notifications/webhooks-events/WH-7XU19530D58819401-6WM79832N6059693G",
        "rel": "self",
        "method": "GET",
        "encType": "application/json"
    },
    {
        "href": "https://api.paypal.com/v1/notifications/webhooks-events/WH-7XU19530D58819401-6WM79832N6059693G/resend",
        "rel": "resend",
        "method": "POST",
        "encType": "application/json"
    }
],
"event_version": "1.0",
"resource_version": "2.0"
 }

编辑 3:SSL 日志

173.0.81.65 - - [16/Jul/2021:13:21:29 -0500] "POST /skivecare/agreementmade.php HTTP/1.1" 500 - "-" "PayPal/AUHR-214.0-55756836" skivecore.com 192.185.36.129
173.0.81.65 - - [16/Jul/2021:13:21:42 -0500] "POST /skivecare/agreementmade.php HTTP/1.1" 500 - "-" "PayPal/AUHR-214.0-55756836" skivecore.com 192.185.36.129
173.0.81.65 - - [16/Jul/2021:13:22:05 -0500] "POST /skivecare/agreementmade.php HTTP/1.1" 500 - "-" "PayPal/AUHR-214.0-55756836" skivecore.com 192.185.36.129
173.0.81.65 - - [16/Jul/2021:13:22:37 -0500] "POST /skivecare/agreementmade.php HTTP/1.1" 500 - "-" "PayPal/AUHR-214.0-55756836" skivecore.com 192.185.36.129
173.0.81.65 - - [16/Jul/2021:13:22:48 -0500] "POST /skivecare/agreementmade.php HTTP/1.1" 200 - "-" "PayPal/AUHD-214.0-55756836" skivecore.com 192.185.36.129
173.0.81.65 - - [16/Jul/2021:13:23:15 -0500] "POST /skivecare/agreementmade.php HTTP/1.1" 500 - "-" "PayPal/AUHR-214.0-55756836" skivecore.com 192.185.36.129
114.119.132.34 - - [16/Jul/2021:13:23:35 -0500] "GET /profile.php?id=868&area=videos HTTP/1.1" 406 226 "-" "Mozilla/5.0 (Linux; Android 7.0;) AppleWebKit/537.36 (KHTML, like Gecko) Mobile Safari/537.36 (compatible; PetalBot;+https://webmaster.petalsearch.com/site/petalbot)" skivecore.com 192.185.36.129
173.0.81.65 - - [16/Jul/2021:13:23:47 -0500] "POST /skivecare/agreementmade.php HTTP/1.1" 500 - "-" "PayPal/AUHR-214.0-55756836" skivecore.com 192.185.36.129
173.0.81.65 - - [16/Jul/2021:13:24:01 -0500] "POST /skivecare/agreementmade.php HTTP/1.1" 500 - "-" "PayPal/AUHR-214.0-55756836" skivecore.com 192.185.36.129
173.0.81.65 - - [16/Jul/2021:13:24:33 -0500] "POST /skivecare/agreementmade.php HTTP/1.1" 500 - "-" "PayPal/AUHR-214.0-55756836" skivecore.com 192.185.36.129
173.0.81.65 - - [16/Jul/2021:13:24:35 -0500] "POST /skivecare/agreementmade.php HTTP/1.1" 500 - "-" "PayPal/AUHR-214.0-55756836" skivecore.com 192.185.36.129
173.0.81.65 - - [16/Jul/2021:13:25:14 -0500] "POST /skivecare/agreementmade.php HTTP/1.1" 500 - "-" "PayPal/AUHR-214.0-55756836" skivecore.com 192.185.36.129
173.0.81.65 - - [16/Jul/2021:13:25:39 -0500] "POST /skivecare/agreementmade.php HTTP/1.1" 500 - "-" "PayPal/AUHR-214.0-55756836" skivecore.com 192.185.36.129
173.0.81.65 - - [16/Jul/2021:13:26:00 -0500] "POST /skivecare/agreementmade.php HTTP/1.1" 500 - "-" "PayPal/AUHR-214.0-55756836" skivecore.com 192.185.36.129
173.0.81.65 - - [16/Jul/2021:13:26:48 -0500] "POST /skivecare/agreementmade.php HTTP/1.1" 500 - "-" "PayPal/AUHR-214.0-55756836" skivecore.com 192.185.36.129
173.0.81.65 - - [16/Jul/2021:13:27:29 -0500] "POST /skivecare/agreementmade.php HTTP/1.1" 500 - "-" "PayPal/AUHR-214.0-55756836" skivecore.com 192.185.36.129
173.0.81.65 - - [16/Jul/2021:13:28:10 -0500] "POST /skivecare/agreementmade.php HTTP/1.1" 500 - "-" "PayPal/AUHR-214.0-55756836" skivecore.com 192.185.36.129
173.0.81.65 - - [16/Jul/2021:13:28:55 -0500] "POST /skivecare/agreementmade.php HTTP/1.1" 500 - "-" "PayPal/AUHR-214.0-55756836" skivecore.com 192.185.36.129
173.0.81.65 - - [16/Jul/2021:13:29:22 -0500] "POST /skivecare/agreementmade.php HTTP/1.1" 500 - "-" "PayPal/AUHR-214.0-55756836" skivecore.com 192.185.36.129
114.119.151.170 - - [16/Jul/2021:13:29:38 -0500] "GET /blog.php?id=1163 HTTP/1.1" 406 226 "-" "Mozilla/5.0 (Linux; Android 7.0;) AppleWebKit/537.36 (KHTML, like Gecko) Mobile Safari/537.36 (compatible; PetalBot;+https://webmaster.petalsearch.com/site/petalbot)" skivecore.com 192.185.36.129
173.0.81.65 - - [16/Jul/2021:13:30:10 -0500] "POST /skivecare/agreementmade.php HTTP/1.1" 500 - "-" "PayPal/AUHR-214.0-55756836" skivecore.com 192.185.36.129
173.0.81.65 - - [16/Jul/2021:13:31:14 -0500] "POST /skivecare/agreementmade.php HTTP/1.1" 500 - "-" "PayPal/AUHR-214.0-55756836" skivecore.com 192.185.36.129

标签: phppaypalpaypal-webhooks

解决方案


推荐阅读