How to Upload Invoice Document for Cross-Border Orders
PUT
/api/pay/v1/orders/{orderId}/invoice/{invoiceId}/uploadUploads the actual invoice file (PDF/image) for a previously created invoice record.
Prerequisites:
- Invoice must be created first via the Capture Invoice API (Step 1).
- Use the
invoiceIdfrom Step 1 response.
Constraints:
- Maximum file size: 5 MB
- Allowed file types: PDF (.pdf), JPEG (.jpeg, .jpg), PNG (.png)
- File upload is one-time. Re-uploading returns 409 Conflict.
Requires
Bearer token. Get token →Path Parameters
| Field | Details |
|---|---|
orderIdstringrequired | Order ID. |
invoiceIdstringrequired | Invoice ID returned from the Capture Invoice API. |
Header Parameters
| Field | Details |
|---|---|
Request-Timestampstringdate-time | ISO 8601 UTC timestamp of the request. Used for idempotency and audit. |
Request-IDstring | Use a global unique identifier [GUID] for the request. Constraints Minimum length: 1 characterMaximum length: 50 characters |
Request Bodyrequired
| Field | Details |
|---|---|
filestringrequiredbinary | The invoice file to upload. Max 5 MB. Allowed types - PDF, JPEG, PNG. |
Response
| Field | Details |
|---|---|
invoiceIdstring | Invoice identifier. |
orderIdstring | Order ID. |
invoiceNumberstring | Invoice number. |
invoiceDatestring | Invoice date. |
supplierNamestringnullable | Supplier name (if provided during creation). |
statusstring | Updated to INVOICE_UPLOADED on success. |
Status Codes
200 | Invoice file uploaded successfully. |
400 | Validation error. |
401 | Authentication failed — missing, expired, or invalid Bearer token. |
409 | Invoice file already uploaded. |
422 | Invoice not found. |
500 | An unexpected error occurred on the server. |
Request
curl --request PUT \
--url https://pluraluat.v2.pinepg.in/api/pay/v1/orders/v1-260520225359-aa-LHy288/invoice/inv-260520225359-ab-XyZ123/upload \
--header 'Authorization: Bearer YOUR_ACCESS_TOKEN' \
--header 'Content-Type: multipart/form-data' \
--header 'Request-ID: a1b2c3d4-e5f6-7890-abcd-ef1234567890' \
--header 'Request-Timestamp: 2024-10-01T10:30:00Z'{
"invoiceId": "inv-260520225359-ab-XyZ123",
"orderId": "v1-260520225359-aa-LHy288",
"invoiceNumber": "v1-260520225359-aa-LHy288-IN",
"invoiceDate": "2026-05-20",
"supplierName": null,
"status": "INVOICE_UPLOADED"
}