Create invoice draft
Create an invoice as a draft with its positions. Nothing is sent and the invoice number is not final.
MCP tool sevdesk_write → create_invoice_draft
Creates a draft invoice for a contact with one or more positions, like the invoice mask before you finish it. Positions are net or gross as you choose with price_mode. The draft is not sent and not booked, and its number is only provisional: sevdesk fixes it when the invoice is finished with send_invoice. create_invoice_draft runs without asking first because it reaches nobody; send_invoice is the step that does.
Parameters
| Name | Type | Description |
|---|---|---|
| contact_id string required | string | Customer ID from list_contacts or create_contact. |
| positions array required | array | Lines of {name, quantity, unit, unit_price, tax_rate, description}. unit_price is net or gross as set by price_mode. |
| price_mode enum | enum | net or gross (Netto or Brutto). Default: net. |
| invoice_date date | date | Invoice date. Default: today. |
| subject string | string | Subject line of the invoice. |
| e_invoice boolean | boolean | Switch on the E-Rechnung toggle. The contact needs an email address and your VAT ID must be set in sevdesk. Default: false. |
| customer_reference string | string | Kundenreferenz or Leitweg-ID, for public clients. |
tools/call
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "sevdesk_write",
"arguments": {
"operation": "create_invoice_draft",
"arguments": {
"contact_id": "3084417",
"positions": [
{
"name": "Website relaunch, phase 2",
"quantity": 1,
"unit": "piece",
"unit_price": 1200,
"tax_rate": 19
},
{
"name": "Workshop day",
"quantity": 3,
"unit": "day",
"unit_price": 150,
"tax_rate": 19
}
],
"price_mode": "net",
"subject": "Invoice website relaunch phase 2",
"e_invoice": true
}
}
}
} Example response
{
"content": [
{
"type": "text",
"text": "{ ... same JSON as structuredContent ... }"
}
],
"structuredContent": {
"invoice_id": "41873190",
"invoice_number": "RE-1043",
"number_final": false,
"status": "draft",
"contact": {
"contact_id": "3084417",
"name": "Nordlicht Studio"
},
"invoice_date": "2026-10-14",
"e_invoice": true,
"positions": 2,
"total_net": 1650,
"total_tax": 313.5,
"total_gross": 1963.5,
"currency": "EUR"
},
"isError": false
}