# Dispute resolution timeline

How long do disputes take? Here is what the system does and when.

## What happens, in order

| Step                                                                         | Time                                       |
| ---------------------------------------------------------------------------- | ------------------------------------------ |
| Debtor submits dispute → placement moves to `disputed`, outreach pauses      | Immediate (within the same DB transaction) |
| Evidence packet assembled (invoice, proof of service, SOL check, audit tail) | Synchronously after the dispute is filed   |
| Auto-response email sent (if matrix routes to auto-respond)                  | Same flow                                  |
| Dispute routed to human reviewer (if matrix says escalate)                   | Same flow                                  |

The platform does not run a creditor-response SLA clock today; auto-close on creditor non-response is planned but not yet available.

## Related SLA for data-subject requests

If you submit a Data Subject Access Request (CPRA/DSAR), the platform's response SLA is **45 days** (`dsar_response_sla_days`). That's separate from dispute handling.

## What slows things down

* **Missing evidence.** If proof of service isn't on file, the dispute is routed to a human reviewer instead of being auto-responded.
* **Ambiguous reason.** If the dispute reason doesn't match any of the known buckets (`no_invoice`, `already_paid`, `wrong_amount`, `service_not_rendered`, `wrong_party`), it falls through to `unknown` and goes to a human.
* **`already_paid` and `wrong_party` disputes.** These are always escalated to a human, regardless of evidence.

## What about disputes during a payment plan

The current platform does not have an automated dispute-pauses-payment-plan flow. This is planned but not yet available.

## Timeline transparency

The dispute status (`open`, `reviewing`, `upheld`, `denied`, `withdrawn`, `auto_responded`, `awaiting_human`) is visible in the portal. Audit events for each state change are written to the append-only audit log.

***

Last reviewed: 2026-05-12 by Compliance Lead.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://help.moderncollections.io/for-debtors/disputes/dispute-resolution-timeline.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
