Returns & Refunds
Customers request returns through the Customer Mini App. You handle them from the Admin Mini App or the LNbits admin panel.
How customers request a return
- Open order history in the Mini App
- Select items to return
- Write a reason and submit
The customer sees a confirmation with items and estimated refund amount.
Guardrails
- One return per order — if one is already pending, approved, or refunded, no second request
- Return window — blocked after the configured time (default: 30 days)
- Paid orders only — pending orders can't be returned
- Reason required — the form asks for specifics: what's wrong, how it differs from expectations
How you handle it
The Returns tab shows all requests with: order, items, reason, refund amount, and status.
Approve
Pick a refund method:
| Method | What happens |
|---|---|
| Store credit | Added to the customer's account immediately. Usable on future orders. |
| Lightning | Customer is notified to provide a Lightning address or invoice via the Messages tab. |
You can lower the refund amount for partial refunds or restocking fees. The amount cannot exceed the original order total.
Deny
Write a note explaining why. The customer sees the notification in Telegram with a link to their orders.
Safety
Approvals are atomic. Two people clicking approve on the same return at the same time? Only one goes through. The other gets a 409 Conflict. No duplicate credits, no double refunds.
Store credit lifecycle
- You approve a return with store credit
- Credit appears on the customer's account
- At next checkout, it's subtracted from the total automatically (oldest credit first)
- Customer checks balance in the Mini App's Credits tab
Credit doesn't expire.
