controller_paypal_webhook

Handle PayPal checkout callbacks.

Accept POST events at /paypal/webhook. Decode JSON and verify the signature through PayPal using the configured webhook ID before processing supported events. Verified updates enter the shared payment receive logic. Unknown-payment imports depend on mod_payment configuration. Missing payments return 404 and processing failures return 500.

Generate the endpoint through its dispatch rule, for example:

{% url paypal_payment_webhook %}

This provider-facing endpoint uses the verification described above rather than an administrator login.