Proposal Schema
Felder
Proposal Schema
Schema for validating proposal entities (Angebotsmappen)
title
Proposal title
proposalNumber
Auto-generated proposal number (e.g. AG-2026-00001)
version
Proposal version number (incremented on revision)
isActiveVersion
Whether this is the current active version
previousVersionId
Previous version of this proposal (for version chain)
partyId
Customer party UUID
contactName
Contact person name at customer
contactEmail
Contact email for sending the proposal
deliveryAddress
Delivery address (if different from billing)
invoiceAddress
Invoice/billing address (if different from party address)
status
Proposal status
DRAFTSENTVIEWEDACCEPTEDREJECTEDCHANGE_REQUESTEDEXPIREDcoverNote
Rich text cover note / introductory letter (HTML)
validUntil
Proposal valid until date (YYYY-MM-DD)
accessToken
Random token for public access URL
paymentTermId
Reference to payment_terms collection
paymentTermsDays
Payment due in X days (denormalized from payment_term)
headerDiscount
Header-level discount percentage
headerSurcharge
Header-level surcharge percentage
shippingMethod
Shipping method name
shippingCost
Shipping cost (decimal)
defaultVatRate
Default VAT rate for positions
vatAmount
Total VAT amount (calculated)
grossAmount
Gross total including VAT (calculated)
opportunityId
Linked opportunity (Vertriebschance)
salesOrderId
Resulting sales order (after acceptance)
closingNote
Closing text / footer note (HTML)
termsText
Terms & conditions text or reference (HTML)
isTemplate
Whether this is a reusable template
templateName
Template name (if isTemplate)
reminderDays
Auto-remind after X days if no response
lastReminderSentAt
Last reminder email sent
viewCount
Number of times the proposal was viewed
averageViewDuration
Average view duration in seconds
recipients
Multiple proposal recipients (CC to decision-makers)
name
email
role
viewedAt
respondedAt
items
Proposal line items
articleId
Article UUID (nullable for free-text items)
articleName
Article / line item name
articleNumber
Denormalized article number
productId
Product UUID (for linking to product info pages)
productName
Denormalized product name
description
Line item description
quantity
Quantity
unitPrice
Unit price
discountPercent
Discount percentage
netAmount
Net amount = quantity * unitPrice * (1 - discount)
billingInterval
Billing interval
MONTHLYQUARTERLYSEMI_ANNUALYEARLYONE_TIMEsetupFee
One-time setup fee
isOptional
Customer can select/deselect this item in the proposal view
positionNumber
Position number for sorting
positionType
Position type (STANDARD, ALTERNATIVE, OPTIONAL, GROUP_HEADER for grouping, TEXT for freetext, SUBTOTAL)
STANDARDALTERNATIVEOPTIONALGROUP_HEADERTEXTSUBTOTALvatRate
Item-level VAT rate (overrides default)
groupId
Group identifier — groups positions under a GROUP_HEADER
scaleValues
Volume/scale pricing per item
netAmount
Total net amount
recurringMonthly
Monthly recurring amount
recurringYearly
Yearly recurring amount
onetimeAmount
One-time amount total
setupFeesTotal
Total setup fees
currencyCode
ISO 4217 currency code
customerMessage
Message from customer (change request reason, rejection reason)
selectedOptionalItemIds
Item IDs selected by customer (for optional items)
sentAt
When the proposal was sent to the customer
viewedAt
When the customer first viewed the proposal
respondedAt
When the customer responded (accepted/rejected/change requested)
acceptedAt
Acceptance timestamp
rejectedAt
Rejection timestamp
externalReferences
External system references (e.g. weclapp quote)
branding
Optional branding override (defaults to tenant branding)
internalNote
Internal note (not visible to customer)
tags
Tags
Keine Felder passen zum Filter.
Standard-Endpoints
Diese Resource folgt dem generischen CRUD-Vertrag der Plattform. Lesen Sie die Konventionen für Pagination, Idempotenz, Optimistic Locking und Audit. Die wichtigsten Endpoints:
GET /api/v1/proposals— Liste, paginiert + filterbarGET /api/v1/proposals/<id>— Einzelne EntityPOST /api/v1/proposals— AnlegenPATCH /api/v1/proposals/<id>— Teil-UpdateDELETE /api/v1/proposals/<id>— Soft-DeleteGET /api/v1/proposals/<id>/timeline— Audit + Aktivitäten