Skip to main content
If you refund a payment from inside your Khalti, eSewa or Fonepay merchant panel instead of from PayBridgeNP, the customer gets their money back but PayBridgeNP does not know about it. The payment still shows Succeeded, your reports overstate revenue, and systems listening for 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.
It is also useful when you want a fresh confirmation from the provider before a high-value delivery, or when a customer questions a payment.

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.
Sync is a button you press for one payment at a time. It does not run on its own.

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 standard payment.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.
See Create a refund for the exact statuses.

Errors