Dispute evidence on payments
What's new
Payments carry a dispute evidence record that you build before a chargeback is contested. Three endpoints handle it: get_dispute_evidence reads the current record, upsert_dispute_evidence creates or updates it, and upload_dispute_evidence_file attaches supporting files. All three are keyed by payment_number.
The evidence record answers whether the purchase was consumed — purchase_used, used_at, and a partner-side usage_id naming the match, session, or quest where it happened — plus a free-form comment for support. Files are posted as base64 with a file_name and file_type, and their identifiers come back in file_ids.
Evidence about the player lives on the player profile rather than on the payment: registered_at, first_login_ip, and is_verified. These are writable through the nested player_attributes object on the upsert and, independently, as player attributes on update_player. Reads add last_active_at alongside them.
Impact
A dispute can be answered with game-side proof that the platform doesn't otherwise hold. registered_at may predate the platform account, and is_verified refers to verification on the game side, unrelated to company account verification during onboarding.
The upsert is a partial update: send only the fields you have, and call it again as more become known. get_dispute_evidence and upload_dispute_evidence_file both return the full DisputeEvidenceRead record, so you can confirm state after every write.
Changes
| Resource | Change |
|---|---|
| get_dispute_evidence | Added endpoint returning the dispute evidence for a payment, including player fields |
| upsert_dispute_evidence | Added endpoint creating or updating dispute evidence for a payment |
| upload_dispute_evidence_file | Added endpoint uploading a base64 evidence file, returning the updated record |
| update_player | Added optional registered_at, first_login_ip, and is_verified to player attributes |
| Components | Added the DisputeEvidenceRead, DisputeEvidenceUpsert, DisputeEvidenceFileCreate, DisputeEvidencePlayerRead, and DisputeEvidencePlayerUpdate schemas |
Upgrade
- No action required. Payments without an evidence record are unaffected, and the new player attributes are optional.
- To record usage,
PUTto upsert_dispute_evidence withpurchase_used,used_at, and ausage_idyour support team can trace back to the event. - Send game-side player facts either in the
player_attributesobject of the upsert or through update_player — both write to the same player profile. - Files cap at roughly 14 MB of base64 content per request,
file_nameat 255 characters,usage_idat 512, andcommentat 4096.file_typedefaults toapplication/octet-stream, so set it explicitly for PDFs and images.
Need help?
Contact our integration team at [email protected]