I simplified the data structure received from paypal callback, why event_type is PAYMENT.CAPTURE.COMPLETED but resource.status is PENDING
{
"id": "xxxx",
"event_version": "1.0",
"create_time": "2022-05-30T06:17:22.994Z",
"resource_type": "capture",
"resource_version": "2.0",
"event_type": "PAYMENT.CAPTURE.COMPLETED",
// ...
"resource": {
"id": "xxxx",
"status": "PENDING",
"status_details": {
"reason": "PENDING_REVIEW"
}
// ...
},
}
Captured PayPal payments can be under review for many reasons. If the webhook's details aren't enough for you, examine the payment in www.paypal.com and/or have one of the account owners contact PayPal's support.