Payments
Payment Issues and Refunds
Payment issues track refunds, reversals, forfeits, store credit, and Stripe disputes from one review trail across web and mobile.
Last updated 30 August 2026
Payment issues let you review and record money movement after a payment has gone wrong or needs adjustment. Use them for refunds, manual reversals, forfeits, store credit, and Stripe disputes that need an auditable trail.
TL;DR
- Web and mobile provide Needs attention, Pending, and History views.
- Start from a booking, order, transaction, or customer. Search is available when you do not have that context; operators do not need to enter raw IDs.
- Owners and Managers can prepare a case. Only the exact venue Owner can execute a Stripe refund; authorised support needs recorded venue approval.
- A submitted Stripe request remains pending until Stripe confirms success. Failed, cancelled, or uncertain requests stay open for reconciliation.
What is a payment issue?
A payment issue is a venue-scoped record that stores the source payment, requested amount, reason, allocation outcome, status, and timeline. The web Payment issues panel describes the surface as "Refunds, manual reversals, forfeits, store credit, and Stripe disputes."
Each issue has:
| Field | What it records |
|---|---|
| Status | Draft, needs approval, approved, processing, manual reconciliation needed, recorded, credited, forfeited, disputed, won, lost, closed, or cancelled |
| Type | Refund, deposit refund, manual reversal, dispute, or void review |
| Amount | The requested amount in the venue currency |
| Reason | Client request, service issue, booking cancelled, duplicate charge, wrong amount, payment error, fraud or dispute, goodwill, policy forfeit, staff error, or other |
| Allocations | The outcome, tender, status, and amount for each money movement |
| Timeline | Created, approved, refund, credit, forfeit, dispute, reconciliation, and closed events |
How to create a payment issue
Owners and Managers can create a payment issue on web or mobile. The safest path is Report payment issue from the related booking, order, transaction, customer, or payment timeline.
- Go to Payments.
- Find Payment issues.
- Click New issue.
- Choose the contextual source, or search by customer, appointment, payment, or reference.
- Review the customer, appointment, service, original payment, provider/card, refundable amount, prior refunds and credits.
- Select the original tender and intended destination.
- Choose a Reason.
- Choose an Outcome.
- Enter the Amount.
- Add an External reference when recording an external card refund.
- Add a Note if the approval trail needs more context.
- Click Create issue. Managers can then request Owner approval.
The amount must be greater than zero. For paid orders and booking deposits, the amount cannot exceed the remaining refundable amount for the selected tender or deposit.
Outcomes
Payment issue outcomes define what OpenChair does when the issue is approved.
| Outcome | What happens |
|---|---|
| Refund through Stripe | OpenChair creates a Stripe refund against the original Stripe PaymentIntent when the venue has a connected Stripe account and the source payment can be refunded by OpenChair. |
| External card refund recorded | OpenChair records that the refund was handled by another card provider. It does not move money through Stripe. |
| Cash returned | OpenChair records a cash refund in the ledger. |
| Store credit issued | OpenChair creates store credit for the linked customer. Store credit needs a customer email, phone, or customer record. |
| Forfeit/write-off | OpenChair records that the amount was kept or written off without a refund. |
Note
Gift card refund recorded, Order void, Dispute lost, Dispute won, and No money movement exist as payment issue outcomes, but the web create dialog only offers Stripe refund, external card refund, cash returned, store credit, and forfeit/write-off.
Approving and executing
Approving a payment issue runs the selected allocation outcome and updates the timeline.
Before approval, web and mobile show the customer, appointment, service, original and refundable amounts, prior refunds or credits, provider state, destination, consequence, evidence, and named actors. The action describes the exact outcome, for example Refund A$12.50 to Visa •••• 1234 or Issue A$12.50 store credit. The operator must acknowledge that consequence.
Only the exact venue Owner can execute an eligible Stripe refund. Managers can prepare the case and request approval. Store credit is not a card refund: the customer remains charged and receives value to use later.
Owners can confirm their own payment issues; another approver is not required. Review the amount and destination, acknowledge the consequence, then select the refund or recording action. For external card payments, recording a refund does not send money through the external provider.
A Stripe submission may return Pending or Requires action. OpenChair does not finalise the refund ledger, booking refund amount, or issue until Stripe reports Succeeded.
If automatic processing fails, OpenChair marks the issue as manual reconciliation needed and sends a Refund needs reconciliation Activity alert. Review the original provider, Stripe, and ledger rows before retrying or closing the case.
Stripe disputes
Stripe disputes are recorded as payment issues when Stripe sends dispute webhooks for a connected venue account. OpenChair stores the Stripe dispute ID, charge ID, PaymentIntent ID, status, reason, amount, and evidence deadline when those fields are available.
Dispute alerts are operational review records. OpenChair sends Dispute opened and dispute outcome alerts, links them to the payment issue, and updates the issue when Stripe reports won or lost. OpenChair does not submit chargeback evidence automatically.
Accounting exports
Payment issue outcomes are included in the accounting export. The export contains refunds_voids_forfeits.csv, and Stripe settlement evidence can include charges, refunds, adjustments, disputes, fees, and payout movement where Stripe exposes that data.
Use the accounting export when your accountant needs a period-level record of refunds, voids, forfeits, dispute movement, and payment clearing.
Who can use this
| Role | Access |
|---|---|
| Owner | Can view, create, edit, cancel, correct, approve, and execute eligible outcomes on web and mobile. |
| Manager | Can view, create, edit, cancel, and request approval on web and mobile, but cannot execute irreversible money movement. |
| Team | Cannot approve or execute payment issues. May report an issue where an authorised venue flow exposes that action. |
| Authorised support | Can execute an exact eligible case only after fresh preflight and recorded venue approval; support is shown as the actor. |
Platform differences
| Feature | Web | Mobile |
|---|---|---|
| View issue list | Needs attention, Pending, History | Needs attention, Pending, History |
| Create from paid order | Yes | Yes |
| Create from booking deposit | Yes | Yes |
| Create customer/manual reversal | Yes | Yes |
| Execute Stripe refund | Exact Owner | Exact Owner |
| Record cash or external refund | Yes | Yes, where eligible |
| Issue store credit | Yes | Yes, where eligible |
| Inspect Stripe disputes | Yes | Review-only |
Common mistakes
Payment issues fail most often when the source or outcome does not match the payment that was originally taken.
| Mistake | What to do instead |
|---|---|
| Trying to refund more than the remaining tender amount | Load the order tenders and use the amount shown as remaining for that original tender. |
| Choosing Refund through Stripe for a payment OpenChair cannot refund | Use External card refund recorded if the refund is handled outside OpenChair. |
| Creating store credit without a linked customer | Link the issue to a booking, order, or customer record with an email, phone, or customer ID. |
| Trying to handle a Stripe dispute on mobile | Open the payment issue on web and review the related Stripe dispute details there. |
Troubleshooting
| Issue | Solution |
|---|---|
| Create issue is disabled | Enter an amount greater than zero and load the required paid order tender or booking deposit first. |
| Stripe refund cannot be selected or submitted | Confirm the original payment was taken through OpenChair Stripe payments and the venue still has an active connected Stripe account. |
| Issue says manual reconciliation is needed | Review Stripe and the ledger before retrying. The automatic refund path failed and OpenChair has preserved the issue for operator review. |
| Mobile says an update is required | Install the coordinated v2 mobile release. Older clients may view cases but cannot perform unsafe financial mutations. |
Related Articles
Common questions
- What is a payment issue?
- A payment issue is a review record for a refund, reversal, forfeit, store credit outcome, or Stripe dispute. It keeps the reason, amount, allocation outcome, ledger movement, and timeline together.
- Who can approve a payment issue?
- Owners and Managers can view, create, and prepare payment issues. Only an exact venue Owner can execute irreversible money movement. Authorised OpenChair financial support can execute only after recording venue approval for the exact case.
- Can I process Stripe refunds on mobile?
- Yes. Exact venue Owners can execute the same eligible Stripe refund on web or mobile through the same provider-aware backend.
- What happens when a Stripe dispute opens?
- OpenChair records the dispute as a payment issue, sends owner and manager Activity alerts, and stores the Stripe dispute status, reason, amount, and evidence deadline when Stripe provides them.