Upload payment proof
Upload payment proof.
Credential: Customer session
Before you call
- A customer session for the same partner, integration, customer, wallet and chain.
- To change proof, the customer must be the fiat payer on a BUY, and the trade must be CREATED, PAID or DISPUTED.
- Uploads accept PNG or JPEG files up to 3 MiB decoded. Authenticated reads return merchant originals unchanged.
Customer BUY fiat payer only in CREATED, PAID or DISPUTED. One PNG or JPEG image up to 3 MiB. PDFs are rejected for new uploads. Identical POST retry is idempotent; use PATCH for replacement. Stored privately with a small blurred preview; a linked proof message is committed atomically. Does not mark paid.
Storage unavailability can return 502 or 503 UPSTREAM_ERROR. Retry with backoff; contact Sinbad with requestId if it persists.
Confirm with Sinbad that this endpoint is enabled in your environment.
Errors
Authentication
AuthorizationBearer
Bearer authentication of the form Bearer <token>, where token is your auth token.
Path parameters
tradeId
Request
This endpoint expects an object.
contentType
Allowed values:
dataBase64
Base64 encoded file bytes without a data URL prefix.
Response
Saved proof metadata, including identical retries.
proofId
contentType
Original content type; merchant files can use native image formats.
size
uploadedByRole
Allowed values:
uploadedAt
base64
Blurred preview, not original file bytes.
width
height
Errors
400
Bad Request Error
401
Unauthorized Error
403
Forbidden Error
404
Not Found Error
409
Conflict Error
502
Bad Gateway Error
503
Service Unavailable Error