payment.refunded webhooks are never told.
Sync with provider fixes that. It asks the provider for the payment’s current status and updates your PayBridgeNP record only when the answer is clear.
Sync is careful by design. It records a refund and sends a webhook only when the provider clearly reports a full refund. Anything less clear is shown to you to review; a successful payment is never reversed automatically.
When to use it
The most common reason is a refund issued outside PayBridgeNP:- You pressed Refund in your Khalti, eSewa or Fonepay merchant panel.
- The provider’s support team reversed a transaction for you.
- Another system on your side refunded through its own connection to the provider.
Where to find it
Open a payment in your dashboard (Payments, then select the payment). Sync with provider sits next to Issue refund and Resend receipt when:- the provider is Khalti, eSewa or Fonepay, and
- the payment status is Succeeded or Refunded.
What can happen
“Shown for review” appears as a yellow message in the dashboard. It never deletes or reverses a payment.
Webhooks
When Sync records a full refund, PayBridgeNP sends the standardpayment.refunded webhook to every endpoint on the project. The payload includes "source": "provider_sync", so your systems can tell these refunds apart from ones issued through the API or dashboard (for example, to skip a customer email the provider already sent).
No webhook is sent for outcomes shown for review, because nothing changed.
Activity
A completed check with Sync with provider is recorded in Activity (Settings), whether or not anything changed, as “Checked a payment with the provider”: who pressed it, when, and for which payment.Limitations
- Partial refunds need manual entry. Providers report that a partial refund happened but not the amount.
- Fonepay refunds are confirmed, not recorded, by Sync. Fonepay can tell us a payment was refunded, but you confirm it in the Fonepay panel before recording it.
- Older payments may not sync. Sync needs the provider’s reference for the payment. A few payments created before Sync existed do not have it; record any refund on those manually.
- One payment at a time. For many out-of-band refunds, contact support.
Best practice
Refund from PayBridgeNP rather than the provider’s panel wherever you can, so your records and webhooks stay correct without needing Sync. How a refund completes depends on the provider:- Khalti refunds are sent to Khalti for you. If Khalti does not answer in time, the refund is held for you to confirm, so it is never sent twice.
- eSewa refunds are recorded in PayBridgeNP and completed by you in the eSewa merchant portal.
- Fonepay refunds are full-amount only and are issued from the PayBridgeNP dashboard.