# Submit an invoice file **POST /order/{orderNumber}/invoice/{invoiceNumber}** Upload an invoice PDF (or similar) for an order. If this is the **first** invoice submitted for the order and the shop is configured to send invoices by letter post, this call may also trigger Komfortkasse to send the invoice to the customer as a physical letter. Do not call this multiple times for the same `invoiceNumber` — repeat uploads of an existing invoice file are silently ignored, but you should still treat the call as non-idempotent for triggering side effects. ## Servers - Production: https://ssl.komfortkasse.eu/api/v2 (Production) ## Authentication methods - Api key ## Parameters ### Path parameters - **orderNumber** (string) Order number (unique per shop). - **invoiceNumber** (string) Invoice number. ### Body: multipart/form-data (object) - **file** (string(binary)) Invoice file (PDF). ## Responses ### 200 Invoice file accepted. ### 400 Invalid request — for example missing required fields or wrong format. #### Body: application/json (object) - **error** (string) Error message. ### 401 Authentication failed — API key missing or invalid. #### Body: application/json (object) - **error** (string) Error message. ### 404 Resource not found (e.g. unknown order number). #### Body: application/json (object) - **error** (string) Error message. [Powered by Bump.sh](https://bump.sh)