Determine the refundable amount before submitting

Start with the captured amount and include prior completed and pending refund requests. Lock or reserve the remaining amount in the system that approves refunds, so two staff members cannot each refund the same balance. Apply the provider’s limits for the referenced transaction.

Store the reason and the allocation separately

A payment refund amount might cover one item, shipping, tax, or another adjustment. Preserve the allocation against the order as well as the refund’s amount, currency, and provider reference. Keep remaining items and their fulfillment state independent from a refund for one line.

Handle an uncertain response without duplicating money movement

Keep the refund pending until the provider reports a final result. If the response is lost, resolve that refund attempt using the provider record or supported duplicate-protection flow. A staff member should be able to see that a refund is already under review before opening another request.

Verify the math and final status

  • Exercise two partial refunds against one capture.
  • Confirm that an attempt exceeding the remaining amount is rejected before it reaches the gateway.
  • Match the refund reference and net amount to the payout or adjustment report.

Sources and further reading

Ready to share your business details?

Start an application or contact Lunar Payments about your setup.

Start application Contact us