---
title: "Quote data model"
url: "https://docs.unified.to/accounting/quote/model"
description: "API reference for Quote data model. Launch multiple pre-built Quote integrations today with zero maintenance — all through a single API."
---
# Quote data model

 View field support, webhooks, and list parameters for each integration on the [Supported Integrations](/accounting/integrations) page. 

### 

* Data Model
* Typescript Type
* Zod Shape
* Python Class

Data Model

**id**string 

**created\_at**date 

(ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)

**updated\_at**date 

(ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)

**quote\_number**string 

External identifier for this quote (Xero QuoteNumber, QBO DocNumber, NetSuite tranId)

**reference**string 

customer-side reference / PO number

**title**string 

short title (Xero Title, max 100)

**summary**string 

longer summary (Xero Summary, max 3000)

**payment\_terms** enum

Valid values:

 "ON\_RECEIPT" 

 "NET\_7" 

 "NET\_10" 

 "NET\_15" 

 "NET\_20" 

unified payment terms enum, as on accounting\_invoice / accounting\_bill

**customer\_message**string 

customer-visible message

**memo**string 

internal note, not customer-visible

**contact\_id**string 

(reference to AccountingContact)

**contacts** array 

denormalized parties, reusing the transaction contact shape

**issued\_at**date 

Xero Date, QBO TxnDate (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)

**expires\_at**date 

Xero ExpiryDate, QBO ExpirationDate (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)

**sent\_at**date 

(ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)

**accepted\_at**date 

(ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)

**declined\_at**date 

(ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)

**status** enum

Valid values:

 "DRAFT" 

 "SENT" 

 "ACCEPTED" 

 "DECLINED" 

 "INVOICED" 

where EXPIRED is derived (expires\_at < now), the source status is preserved in raw

**currency**string 

**currency\_rate**number 

exchange rate to the organization's base currency

**sub\_total\_amount**number 

**tax\_amount**number 

**discount\_amount**number 

**total\_amount**number 

**tax\_mode** enum

Valid values:

 "INCLUSIVE" 

 "EXCLUSIVE" 

 "NONE" 

INCLUSIVE / EXCLUSIVE / NONE; maps Xero LineAmountTypes (a boolean cannot represent NoTax)

**lineitems** array 

**invoice\_id**string 

populated once the quote is converted to an invoice; left null when the source cannot supply it (reference to AccountingInvoice)

**project\_id**string 

points to an AccountingProject (accounting costing project) (reference to TaskProject)

**group\_id**string 

points to a HRIS Group (reference to HrisGroup)

**category\_ids**string array 

tracking categories / classes (AccountingCategory dimensions)

**url**string 

public online-quote link where exposed

**organization\_id**string 

**raw**any
