Guides

Webhook setup

Add your store's webhook URL at your payment provider, so orders get marked as paid.

A webhook is how your payment provider tells your store that a payment arrived. Orders are only marked as paid this way. It matters most for Multibanco and MB WAY, where the customer can pay long after they leave checkout, and it's the safety net for cards if a customer closes the browser.

Find your webhook URL

Go to Integrations, under Connections in the dashboard, and open your provider. The page shows your store's webhook URL, ready to copy. Each store has its own.

Stripe

  1. In the Stripe dashboard, open Developers, then Webhooks, and add a destination. Choose Snapshot, then paste your URL.

  2. Select these events:

    • checkout.session.completed
    • checkout.session.async_payment_succeeded
    • checkout.session.async_payment_failed
    • checkout.session.expired
    • charge.refunded
  3. Copy the signing secret, which starts with whsec_, and paste it into Signing secret in Prood.

Test mode and live mode have separate destinations and signing secrets, so repeat this when you go live.

Easypay

In your Easypay account, open Developers, then Configuration API 2.0, then Notifications. Paste this address as the Generic URL.

Easypay doesn't sign its notifications, so Prood treats each one as a prompt and reads the payment back from Easypay before changing the order.

Ifthenpay

Send your URL to Ifthenpay as your callback URL, exactly as the dashboard shows it, with your anti-phishing key. It includes placeholders that Ifthenpay fills in on each call:

?key=[ANTI_PHISHING_KEY]&orderId=[ORDER_ID]&amount=[AMOUNT]&requestId=[REQUEST_ID]

Ifthenpay doesn't report refunds, so you record those by hand.

Troubleshooting

IssueWhat to check
Orders stay UnpaidYour provider's delivery log, then that the URL matches the dashboard exactly
Stripe says the signature failedThe signing secret in Prood matches this endpoint, in the same mode
Nothing arrivesThe events you subscribed to, for Stripe
A refund made at your provider doesn't showStripe and Easypay report refunds. Ifthenpay doesn't, so record it on the order

Developers can read how webhooks are handled in Checkout webhooks.