Raise a dispute when the customer contests the bill. An open dispute is a formal stop on that invoice: Workflow reminders do not keep sending, and a typed message to that customer is refused until you close the dispute. PayBlah never sends a legal threat or a Firm / Final step by itself.
Prerequisites
- You can open the invoice (or Activity → Disputes after a portal or reply raise).
- That invoice does not already have an open dispute. If it does, the invoice action is Close dispute, not a second raise.
- Portal raises apply to the unpaid invoices that link covers. They do not set Never chase.
From the invoice
- Open the invoice.
- Press Raise a dispute. The panel slides down (it is not a popup).
- Choose a Reason: Amount is wrong, Goods or services not received, Already paid, Invoice not recognised, or Other.
- Add a Note (placeholder: “What did the customer say?”).
- Press Log dispute.
From the customer portal
- On an unpaid portal home the customer taps I dispute this.
- The message form prefills wording that starts with “I dispute…” and notes that a dispute stops reminders while you review.
- They press Send message.
- They see Dispute recorded — the dispute has gone to your business name, and reminders on those invoices have stopped.
That portal path writes a real open dispute (invoice summary: Logged by Customer · Customer portal) and sets each covered unpaid invoice to Disputed. You do not re-raise it on your side for the stop to apply. It is not a stop request: Ask them to stop chasing is a different control and does not mute anything until you Accept it in Activity.
From Activity → Replies
If a customer writes in and you agree it is a dispute, expand the reply and press Disputed. That opens a formal dispute (logged as Reply triage) and stops chasing on the named invoice — or, when the message is not tied to one invoice, on every still-open invoice for that customer. Do not press Nothing needed, resume on a dispute-like reply; the product blocks that resume so a contest is not ignored by accident.
Where it lands
Open Activity → Disputes (also listed on All Activity). Each card shows the customer, invoice, amount, age, the stored wording, when it was raised, and a badge:
- Chasing stopped — the invoice state is Disputed (the normal result of a raise).
- Still chasing — an open dispute row exists but the invoice is not in Disputed. Treat that as a mismatch: open the invoice and do not keep sending.
Use Review to close it, or Open invoice → for the invoice desk.
Expected result
- Flash after a staff log: “Dispute logged — chasing stopped on [invoice].”
- Invoice badge Disputed. Status line: “Chasing is stopped — this invoice is disputed.” There is no Pause / Resume button on a disputed invoice.
- The raise appears on Everything on this invoice as “Dispute raised — chasing stopped”.
- Workflow steps for that invoice are held (EXC-004). A typed Send reply or customer Send Message is refused with “Nothing sent — a dispute is open on this account. Resolve the dispute before messaging.”
- The customer’s inbound portal or email/SMS message still sits in Activity → Replies until you triage it. That is a separate hold from the dispute itself.
If something goes wrong
- Already has an open dispute — use Close dispute on the invoice or Review on Activity. Do not try to log a second one.
- Say what the dispute is about — a reason is required.
- Portal home that is already only disputed invoices shows This account is under review and hides pay / part / promise. That is expected.
- If the invoice still shows a next send after a raise, do not type around the stop. Confirm Activity → Disputes shows the row, then contact Support.