Create quote

Save a draft quote for a contact. Nothing is sent.

POST https://cotlet.dev/api/v1/lexware-office/contacts/{contact_id}/quotations

write

Saves a quote (Angebot) as a draft. It has no number yet, reaches no customer and is deleted with one call in the app, so it does not ask for your OK. Returns the totals so you can read them before finalize_document.

Parameters

Parameters: create_quotation
NameTypeDescription
contact_id string required string Contact ID from list_contacts or create_contact.
quotation_date string required string Quote date, YYYY-MM-DD.
lines array required array Line items. Each has name, quantity, unit_price_net (EUR) and tax_rate (percent, as offered in your Lexware Office tax settings). Free-text lines need only a name.
valid_until string string Last day the quote is valid, YYYY-MM-DD.
intro_text string string Introduction text above the lines.

Request

cURL
curl -X POST https://cotlet.dev/api/v1/lexware-office/contacts/contact_8c41d2/quotations \
  -H "Authorization: Bearer $COTLET_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"quotation_date":"quotation date","lines":"lines"}'
Python
result = client.call("lexware-office", "create_quotation", {"contact_id":"contact_8c41d2","quotation_date":"quotation date","lines":"lines"})
Node.js
const result = await cotlet.call('lexware-office', 'create_quotation', {"contact_id":"contact_8c41d2","quotation_date":"quotation date","lines":"lines"});
CLI
cotlet call lexware-office create_quotation --data '{"contact_id":"contact_8c41d2","quotation_date":"quotation date","lines":"lines"}'

Example response

JSON

{
  "document_id": "d_e5120a",
  "type": "quotation",
  "number": null,
  "status": "draft",
  "contact": {
    "contact_id": "c_88d0e1",
    "name": "Studio Fjord"
  },
  "date": "2026-10-14",
  "lines": [
    {
      "name": "Site audit",
      "quantity": 1,
      "unit_price_net": 1200,
      "tax_rate": 19
    },
    {
      "name": "Fixes, hours",
      "quantity": 6,
      "unit_price_net": 95,
      "tax_rate": 19
    }
  ],
  "total_net": 1770,
  "total_tax": 336.3,
  "total_gross": 2106.3,
  "currency": "EUR"
}

Sign in once. Your agent does the rest.

Sign up and add the apps you need. Free 7-day trial with 2,000 credits, no card needed.