Lightning refunds at Retail: an update from MoneyBadger
The Lightning Network does not support refunds natively. Unlike card payments or bank transfers, where a merchant can push funds back to the original payment instrument, Lightning is a sender-initiated protocol. A refund requires the original payer to initiate a new payment back to themselves, which means MoneyBadger needs the payer's Lightning Address before we can issue one.
Returns, cancellations and partial refunds are standard retail operations. Moneybadger has been unable to process Lightning refunds as smoothly as desired, due to not having a user's refund address when needed. For MoneyBadger's ScanToPay integration with EFTCorp, live at 650,000 merchant locations nationwide across South Africa, this has become an operational issue.
We've now built a way to capture that address at the point of payment, store it with the transaction, and use it to push refunds when required. Three integration paths are supported:
Scanner API. For wallets integrated via the Scanner API, the Scan object now has an optional refund_address field where the user's Lightning Address can be supplied.
LUD-18 payerData. For wallets integrated via our LNURL endpoint, the standard approach uses LUD-18. We use the identifier field, which LUD-18 defines as an internet identifier and which a Lightning Address satisfies, to collect the refund address.
X-REFUND-LIGHTNING-ADDRESS header. For wallets that don't implement LUD-18, the refund address can be passed as an HTTP header on any LNURL request: X-REFUND-LIGHTNING-ADDRESS: user@wallet.domain
Fallback: Users whose wallets support neither method can install the MoneyBadger app, register their Lightning Address in their profile, and have it supplied automatically during payment.
Timeline: We notified integrated wallet partners directly by 1st of June, 2026. We are currently in a grace period: refund addresses are collected where provided but not yet required. From 1 September 2026, a valid refund address will be required for ScanToPay Lightning transactions, and payments without a resolvable refund address will be rejected. Wallets that have not been integrated by then will need to direct users through the MoneyBadger app for those transactions.
For the full technical integration guide, go here or email info@moneybadger.co.za with any questions.