Gravv docs
Docs Agent Sign in Get API keys

Upload a supporting document

Uploads a document, such as an invoice, for a payout that needs one. Pass the returned id in supporting_document_ids on POST /v1/transfer or on resume. A document can be used by one transfer only, and an unused one is deleted after 7 days. The file must be PDF, PNG or JPEG, at most 700 KB.

POSThttps://api.gravv.xyz/v1/transfer/documents

Headers

1 to 255 printable ASCII characters. A retry with the same key within 24 hours returns the first response, including a 400. After you correct a request, send a new key.

Request Body

Possible values: invoice, proforma_invoice, purchase_order, contract, receipt, bill_of_lading, customs_declaration, bank_statement, proof_of_income, tax_document, other

Required when document_type is other

Must match the file itself

Possible values: application/pdf, image/png, image/jpeg

The file as standard base64, at most 700 KB decoded

Request Examples

{
"customer_id": "bb6c6022-f1d8-492f-80f0-7547134bb42f",
"document_type": "invoice",
"file_name": "inv-2026-114.pdf",
"content_type": "application/pdf",
"content": "<base64>"
}

Responses

Status Description
200 The stored document
400 A field or the file is invalid
404 The customer is not one of yours
413 The request or file is too large
503 Storage is unavailable. Retry.

200 response

{
"data": {
"id": "5b0d8f3e-2a71-4c4f-9e0b-7d6c1a2b3c4d",
"document_type": "invoice",
"file_name": "inv-2026-114.pdf",
"content_type": "application/pdf",
"size_bytes": 184233,
"created_at": "2026-10-13T09:10:02Z"
},
"error": null
}

400 response

Such as ERROR_CODE_DUPLICATE_TRANSACTION

{
"data": null,
"error": "content: the file is not a application/pdf",
"code": "ERROR_CODE_SUPPORTING_DOCUMENT_INVALID"
}

404 response

What went wrong

413 response

503 response

What went wrong

{
"data": null,
"error": "document storage is unavailable; retry shortly"
}

Authorization

  • ApiKeyAuth
Was this page helpful?
ESC