Receipts
Attach and retrieve a payment-proof PDF receipt for an operation
A receipt is a PDF proof of payment you can attach to an operation. Once uploaded it is
stored securely and (when configured) delivered to the provider — via their Telegram chat
and/or forwarded to the provider backend. Receipts are matched by your own
idTransactionMerchant.
Upload Receipt
POST /operation/{idTransactionMerchant}/receipt
Attach a PDF receipt to one of your operations.
Authentication
Authorization: Bearer YOUR_MERCHANT_TOKENPath Parameters
| Parameter | Type | Description |
|---|---|---|
idTransactionMerchant | string | Your own operation id (the idTransactionMerchant you sent when creating the payin/payout) |
Body
multipart/form-data with a single file field:
| Field | Type | Description |
|---|---|---|
receipt | file | The receipt file. PDF only, up to 10 MB |
Constraints
- The file must be a valid PDF (checked by content, not just extension).
- Max size 10 MB.
- The operation must not be in a final state (
success/failed). - The receipt must be uploaded within the payment window (20 minutes from operation creation).
- Only one active receipt per operation — uploading again replaces the previous one.
Example Request
curl -X POST 'https://api.admin-pixelwave.com/operation/order-12345/receipt' \
-H 'Authorization: Bearer YOUR_MERCHANT_TOKEN' \
-F 'receipt=@/path/to/receipt.pdf;type=application/pdf'Success Response
{
"result": {
"status": "success",
"x-request-id": "uuid",
"codeError": "none",
"codeErrorExt": "none",
"message": ""
},
"data": {
"receiptId": "0318b851-f376-49e3-8e6e-948b156f8884",
"status": "uploaded",
"fileName": "receipt.pdf",
"uploadedAt": "2025-01-15T10:31:00Z"
},
"totalNumberRecords": 0
}Error Response
Errors are returned with HTTP 200 and result.status = "warning" (platform convention).
{
"result": {
"status": "warning",
"x-request-id": "uuid",
"codeError": "none",
"codeErrorExt": "none",
"message": "File is not a valid PDF"
},
"data": null,
"totalNumberRecords": 0
}Common messages: Receipt file is empty, Receipt file exceeds 10 MB limit,
File is not a valid PDF, Operation is in final state: ...,
Payment window for receipt upload has expired,
Not found operation by idTransactionMerchant=....
Get Receipt
GET /operation/{idTransactionMerchant}/receipt
Retrieve the current active receipt for one of your operations, including a temporary download link.
Authentication
Authorization: Bearer YOUR_MERCHANT_TOKENPath Parameters
| Parameter | Type | Description |
|---|---|---|
idTransactionMerchant | string | Your own operation id |
Example Request
curl -X GET 'https://api.admin-pixelwave.com/operation/order-12345/receipt' \
-H 'Authorization: Bearer YOUR_MERCHANT_TOKEN' \
-H 'Accept: application/json'Success Response
{
"result": {
"status": "success",
"x-request-id": "uuid",
"codeError": "none",
"codeErrorExt": "none",
"message": ""
},
"data": {
"receiptId": "0318b851-f376-49e3-8e6e-948b156f8884",
"fileName": "receipt.pdf",
"mime": "application/pdf",
"sizeBytes": 48213,
"status": "uploaded",
"uploadedAt": "2025-01-15T10:31:00Z",
"presignedUrl": "https://ams3.digitaloceanspaces.com/pixelreceipt/receipts/.../....pdf?..."
},
"totalNumberRecords": 0
}presignedUrl is a short-lived link (default TTL 15 minutes) that forces the file to
download as an attachment. If no receipt is attached, data is null.