---
title: "Upsert Dispute Evidence"
method: PUT
path: "/v1/payments/{payment_number}/dispute_evidence"
tags: ["Payments' Dispute Evidence"]
---

# Upsert Dispute Evidence

`PUT /v1/payments/{payment_number}/dispute_evidence`

Create or update dispute evidence for a payment.

## Path parameters

- `payment_number` string, required

## Request body

- DisputeEvidenceUpsert
  - `purchase_used` boolean — Whether the purchased goods were consumed.
  - `used_at` integer — Unix timestamp when the purchased goods were consumed.
  - `usage_id` string — Partner-side identifier of the event where the goods were consumed, e.g. a match, session or quest id. Stored as given and passed through to the dispute evidence package.
  - `comment` string — Free-form note for support.
  - `player_attributes` DisputeEvidencePlayerUpdate
    - `registered_at` integer — Unix timestamp when the player registered in the game. May predate the platform account, so it differs from the user's created_at.
    - `first_login_ip` string — IP address of the player's first login in the game, as reported by the game.
    - `is_verified` boolean — Whether the player's account is verified on the game side. Unrelated to the company account verification in onboarding.

## Response `200`

Successful Response

- DisputeEvidenceRead
  - `id` string, required — The ID of the dispute evidence record.
  - `payment_number` string, required — The payment number the evidence belongs to.
  - `purchase_used` boolean — Whether the purchased goods were consumed.
  - `used_at` integer — Unix timestamp when the purchased goods were consumed.
  - `usage_id` string — Partner-side identifier of the event where the goods were consumed, e.g. a match, session or quest id.
  - `file_ids` string[] — IDs of the uploaded evidence files.
  - `comment` string — Free-form note for support.
  - `modified_at` integer — Unix timestamp when the evidence was last modified.
  - `player_attributes` DisputeEvidencePlayerRead, required
    - `registered_at` integer — Unix timestamp when the player registered in the game.
    - `last_active_at` integer — Unix timestamp of the player's last activity on the platform.
    - `first_login_ip` string — IP address of the player's first login in the game.
    - `is_verified` boolean — Whether the player's account is verified on the game side.

## Other responses

- `422` — Validation Error

## Changes

- **2026-08-24** `63f522cab139` — 2 info
  - api tag `Payments' Dispute Evidence` added
  - api tag `Payments` removed
- **2026-08-11** `aad0f133191e` — 1 breaking, 1 warning, 2 info
  - removed the required property `player` from the response with the `200` status
  - removed the request property `player`
  - added the new optional request property `player_attributes`
  - added the required property `player_attributes` to the response with the `200` status
- **2026-08-10** `a0f029ba366f` — 1 breaking, 1 warning, 2 info
  - removed the required property `player_attributes` from the response with the `200` status
  - removed the request property `player_attributes`
  - added the new optional request property `player`
  - added the required property `player` to the response with the `200` status
- **2026-08-09** `f8569ba0d776` — 1 breaking, 1 warning, 2 info
  - removed the required property `player` from the response with the `200` status
  - removed the request property `player`
  - added the new optional request property `player_attributes`
  - added the required property `player_attributes` to the response with the `200` status
- **2026-08-08** `0c1b4ac1865b` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/aghanim/apis/aghanim-server-to-server-api/changes/v1/payments/:payment_number/dispute_evidence/put.md)

---

[API](https://skmtc.dev/aghanim/apis/aghanim-server-to-server-api.md) · [All operations](https://skmtc.dev/aghanim/apis/aghanim-server-to-server-api/llms.txt) · [OpenAPI document](https://skmtc.dev/aghanim/apis/aghanim-server-to-server-api/revisions/26506a4c76a2?raw)
