Upload receipt
Upload a supplier invoice or receipt file for bookkeeping. It lands in "Zu prüfen".
POST https://cotlet.dev/api/v1/lexware-office/receipts
write
Uploads one file as a receipt. Lexware Office runs its automatic recognition and saves it with the status Zu prüfen; it is not booked until someone clicks Beleg erfassen. It reaches no one and can be deleted in the app, so it does not ask for your OK. Returns the fields the recognition filled in.
Parameters
| Name | Type | Description |
|---|---|---|
| file_name string required | string | File name with extension, e.g. invoice.pdf. |
| file_url string required | string | HTTPS URL of the PDF or image to upload. |
Request
curl -X POST https://cotlet.dev/api/v1/lexware-office/receipts \
-H "Authorization: Bearer $COTLET_API_KEY" \
-H "Content-Type: application/json" \
-d '{"file_name":"Hetzner-2026-10.pdf","file_url":"https://files.example.com/inbox/Hetzner-2026-10.pdf"}' result = client.call("lexware-office", "upload_receipt", {"file_name":"Hetzner-2026-10.pdf","file_url":"https://files.example.com/inbox/Hetzner-2026-10.pdf"}) const result = await cotlet.call('lexware-office', 'upload_receipt', {"file_name":"Hetzner-2026-10.pdf","file_url":"https://files.example.com/inbox/Hetzner-2026-10.pdf"}); cotlet call lexware-office upload_receipt --data '{"file_name":"Hetzner-2026-10.pdf","file_url":"https://files.example.com/inbox/Hetzner-2026-10.pdf"}' Example response
{
"receipt_id": "r_21b8c0",
"file_name": "Hetzner-2026-10.pdf",
"status": "to_check",
"contact": "Hetzner Online GmbH",
"receipt_number": "R0023981",
"date": "2026-10-01",
"amount_gross": 24.99,
"currency": "EUR"
}