> ## Documentation Index
> Fetch the complete documentation index at: https://docs.decisionly.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Testing

> Use test mode overrides to pass or fail evidence review

When you create a case with a [test mode API key](/authentication#api-key-prefixes) (prefix `test_`), Decisionly recognizes special values for the issuer explanation and file category that bypass AI analysis and return mock [Evidence Review](/evidence-review) results. Use these to exercise both the pass and fail branches of your [workflow rules](/workflow-rules) without crafting realistic evidence and documents.

<Info>
  These overrides only take effect on accounts using a `test_` API key. In live mode they're treated as regular values.
</Info>

## Evidence Review and Fraud Liability overrides

Include one of the values below anywhere in [`issuer_explanation`](/api-reference/v2-cases/create-a-case#body-issuer-evidence-issuer-explanation-one-of-0) on the case's [`issuer_evidence`](/api-reference/v2-cases/create-a-case#body-issuer-evidence) to replace the AI [Evidence Review](/evidence-review) result and/or [Fraud Liability](/fraud-liability) result for the case.

For all dispute reasons:

| `issuer_explanation` contains | Evidence Review result                                   |
| ----------------------------- | -------------------------------------------------------- |
| `valid_evidence`              | All conditions for the dispute reason marked **met**     |
| `invalid_evidence`            | All conditions for the dispute reason marked **not met** |

For fraud disputes, you can additionally control [Fraud Liability](/fraud-liability):

| `issuer_explanation` contains | Fraud Liability result                                       |
| ----------------------------- | ------------------------------------------------------------ |
| `merchant_liable`             | Liability assigned to the merchant (chargeback rights exist) |
| `issuer_liable`               | Liability assigned to the issuer (no chargeback rights)      |

## Documentation Review overrides

Set a file's `category` to one of the values below when [uploading the file](/api-reference/v2-files/upload-a-file) to replace the AI [Documentation Review](/evidence-review) result for that file. The relevance check is skipped entirely.

| File `category` value | Documentation Review result       |
| --------------------- | --------------------------------- |
| `valid_document`      | File marked as valid and relevant |
| `invalid_document`    | File marked as invalid            |

This is a per-file override — you can mix `valid_document` and `invalid_document` files in the same case.

## Example

Upload a file with the `valid_document` category, then create a case that references it and uses `invalid_evidence` to force conditions review to fail:

<CodeGroup>
  ```bash cURL theme={null}
  # 1. Upload a file with the valid_document test category
  curl https://api.decisionly.com/v2/issuer/files \
    -u test_d0019b48d05849a6: \
    -F "category=valid_document" \
    -F "file=@receipt.pdf"

  # Response: { "id": "file_abc123", "category": "valid_document", ... }

  # 2. Create a case that forces the conditions check to fail
  curl https://api.decisionly.com/v2/issuer/cases \
    -u test_d0019b48d05849a6: \
    -H "Content-Type: application/json" \
    -d '{
      "dispute": { "reason": "product_not_received" },
      "issuer_evidence": {
        "issuer_explanation": "invalid_evidence",
        "documentation": ["file_abc123"]
      }
    }'
  ```
</CodeGroup>

<CardGroup cols={2}>
  <Card title="Evidence Review" icon="magnifying-glass" href="/evidence-review">
    How Documentation Review and Conditions Review work in production
  </Card>

  <Card title="Workflow Rules" icon="diagram-project" href="/workflow-rules">
    Configure how cases are handled based on evidence review results
  </Card>
</CardGroup>
