POS refunds & returns

Markdown

View as Markdown

A clean refund is two events at once: money goes back to the customer, and stock comes back into your warehouse. LaunchMyStore POS keeps both halves honest, recording the cash movement and the stock movement together.

What counts as a refund

Any time a customer returns goods and you give value back. Where the value goes (you pick one per refund):

  • Original tender — sends the money back to the card or account that paid. Available when the order was paid through Stripe: online cards, Stripe Auto Pay subscriptions, or Stripe Terminal at the till.
  • Cash — cash leaves the drawer.
  • Store credit — issues a gift card for the amount instead of cash.
  • Refunded elsewhere — records a refund you already made outside LaunchMyStore, for example in your payment provider’s dashboard or by bank transfer. No money moves and the cash drawer is not touched.

Each refund is tied to an original order. You cannot refund more than the order’s remaining refundable amount.

Which orders can go back to the original tender

Paid withOriginal tenderWhat to do instead
Stripe (online card), Stripe Auto Pay, Stripe TerminalYes — full or partial amounts, sent to Stripe automatically—
Any other gateway (Razorpay, PayPal, PayU, Mollie and others)No — LaunchMyStore can’t send refunds to these gatewaysRefund the customer in that gateway’s dashboard, then record it here with Refunded elsewhere
Cash on delivery, cash, UPI at the till, manual payment methodsNo — there is no card or account to send the money back toCash, store credit, or Refunded elsewhere

The refund dialog picks the right default for how the order was paid and, when Original tender isn’t available, says why. An order that was never paid (still pending, or cancelled before payment) can’t be refunded. To see how each of your gateways handles refunds, open Store Settings → Payments — every gateway shows a refund line.

How to process a refund

  1. Open POS → Orders.
  2. Find the order. Tap it.
  3. Tap Refund (only visible to staff with the Refund permission).
  4. Choose where the money goes — Original tender, Cash, Store credit or Refunded elsewhere.
  5. Enter the amount to refund — it starts at what is still refundable.
  6. Tick Restock items if the goods are coming back into inventory (default: on), and set how many of each line came back.
  7. Confirm.

If the original tender was cash and your refund destination is cash, the drawer pops open so you can hand the money back.

Restocking returned items

When you tick Restock returned items, the returned quantity is added back to your on-hand stock and logged as a stock movement so there’s a permanent trail of what came back.

Stock returns to the same warehouse the shift was opened against. If the shift wasn’t tied to a specific warehouse, the product’s overall stock count is increased instead.

Leave the “Restock” checkbox unticked for damaged goods. The refund still posts, but no stock is added back — the goods are now in your shrinkage column, not on the shelf.

Cash impact on the shift

If the refund destination is cash, the payout is recorded against the open shift and pulls down your expected cash for the day, so the drawer balances at close. Card refunds don’t affect cash — they touch the card processor and reduce the day’s card-tender total instead.

Partial refunds

Refund any subset of the original order — one out of three items, half a quantity, or a custom amount.

The order’s refunded total increases on each partial refund. When it reaches the order total, the order is fully refunded. You can’t refund more than what’s remaining.

Card refund flow

For orders paid through Stripe (an online card, Stripe Auto Pay or Stripe Terminal):

  1. The refund is sent to Stripe — the account that took the payment.
  2. The processor reverses the charge.
  3. POS marks the order as refunded or partially refunded.
  4. If you ticked restock, the stock is still added back.

Card refunds typically take 5–10 business days to land back on the customer’s statement — that’s the bank’s clock, not ours.

Permissions per staff role

RoleCan refund?Max discountOpen drawer
MerchantYesNo capYes
AdminYesNo capYes
ManagerYes50%Yes
Staff (cashier)No10%Yes

A cashier returning goods needs to call a manager over — the Refund button is hidden for the cashier role. This is enforced both in the app (the button is absent) and on the server (the refund request is rejected for a cashier).

Issuing store credit instead

If your store offers store credit / gift cards, set the refund destination to Store credit. The system issues a new gift-card code for the refund amount and emails / SMSes it to the customer. No cash leaves the drawer, no card charge is reversed.

Exchanges

An exchange is a refund + a new sale in one motion. POS handles it via the Exchange button on the order — pick the returning items, then add the replacement items to the cart. The price difference is the new cash/card/credit transaction.

Common issues

  • Refund button missing — your role lacks the Refund permission. Have a manager process it, or have the merchant promote your role.
  • Original tender is greyed out — the order was paid through a gateway LaunchMyStore can’t refund to, or offline. Refund it in the gateway’s dashboard (or in cash) and record it with Refunded elsewhere.
  • Inventory not coming back — the “Restock returned items” box was unticked. You can fire a manual inventory adjustment to fix it.
  • Card refund “pending” for days — that’s the processor’s clearing window. Check the order’s payment provider log.
  • Variance shows positive after a refund — you marked the refund as cash in POS but didn’t actually take cash out of the drawer. Reverse it with a cash pay-out.

FAQ

Does refunding a POS order also restock inventory?

Yes, when you tick the “Restock returned items” checkbox (default on). The returned quantity is added back to stock at the shift’s warehouse and logged as a stock movement.

Can I refund an order from the admin instead of the register?

Cancelling an order on the admin order page refunds a prepaid order with it: if it was paid through Stripe, the cancel prompt offers to send the whole remaining amount back to the customer’s card (ticked by default); if it was paid through another gateway, it reminds you to refund it in that gateway’s dashboard and lets you record that refund. For anything else — part of the amount, cash, store credit, or restocking specific lines — use Refund in POS → Orders, which lists online orders too (set Sale type to Online). Note the cash side too: if no shift is open at the register, a cash refund can’t debit a drawer that isn’t open — reconcile with a cash pay-out on the next shift.

What if the customer paid with split tenders?

Each refund goes to a single destination — cash, card, or store credit — chosen when you process it. You can’t split one refund across two tenders in a single motion (for example, part to cash and part to card at once). If a customer paid partly by cash and partly by card and you want the money returned the same way, process two separate refunds: one to cash for the cash portion, and one to card for the card portion.

Can a cashier override the refund block?

No. The no-refund rule is enforced on the server, not just in the app, so a cashier can’t work around the hidden button.

Where do I see the day’s refund total?

Cash refunded from the drawer is on the shift's X- and Z-report under Refunds. In More > Reports, the summary shows refunds on the sales in the period you choose, and the Staff section shows refunds per person. See POS reports: day-end sales, payments, items, staff and tax.

Can I refund without selecting an original order?

No. Every refund must point at an order — that’s how the ledger stays balanced. If a customer brings something back without a receipt, take down the SKU and issue store credit via an admin-side adjustment instead of routing it through refunds.

Was this article helpful?