Forwarding PayPal Instant Payment Notifications (IPN)
PayPal IPN forwarding lets you send Instant Payment Notifications (IPNs — real-time payment events from PayPal) to ChartMogul when your PayPal account already sends IPNs elsewhere.
PayPal only allows one IPN endpoint per account. If you're already using your PayPal IPN — for example, as part of your own checkout system — you'll need a webhook relay to forward the same IPN to ChartMogul. A webhook relay lets you deliver one PayPal IPN to multiple destinations.
To forward the PayPal IPN, you'll send PayPal payloads to your ChartMogul webhook URL using an HTTP POST request.
What a Webhook Is
A webhook is an automatic HTTP request that sends data from one service to another the moment an event happens — in this case, PayPal sends payment data to ChartMogul in real time.
- Go to :settings~gray: Settings > Sources.
- Find your PayPal source and click the :settings~gray: Settings icon.
- Copy your webhook URL from the Enable Instant Payment Notifications in PayPal section.
How to Forward PayPal Data to ChartMogul
- Choose a relay service: Pick a service that can forward your PayPal IPN payload from your server to ChartMogul.
- Save your PayPal Client ID first: Before you start forwarding, save your PayPal Client ID in ChartMogul. ChartMogul uses it to pull additional customer details from your PayPal account. The IPN must match the Client ID you've saved.
- Match accounts: The IPN must come from the same PayPal account tied to the Client ID in ChartMogul. If you saved a Production Client ID, send webhooks from your Production PayPal account — not the Sandbox account.
- Send the payload unchanged: ChartMogul requires the original PayPal payload delivered via HTTP POST. Forward it exactly as PayPal sent it to your server, encoded in UTF-8.
- Alternative: You can also use an IPN redirect plugin to forward the payload.
How do I check that it's working?
To confirm your PayPal IPN is working, use either of these checks: