---
title: "POST /estimates"
method: POST
path: "/estimates"
tags: ["Estimates"]
---

# POST /estimates

`POST /estimates`

Posts an individual estimate for a business.

## Request body

- PushEstimateV1Dto
  - `connection` PushEstimateConnection, required
    - `businessName` string, required — Unique business name identifier.
    - `serviceName` 'quickbooks' | 'xero' | 'freshbooks', required — Name of accounting platform service.
  - `data` PushEstimateV1, required
    - `passThrough` object
    - `currencyRate` number
    - `dueDate` string, date
    - `postedDate` string, date
    - `acceptedDate` string, date
    - `expiryDate` string, date
    - `customerRef` string, required
    - `currency` string
    - `lines` EstimateLineV1[], required
      - `description` string
      - `quantity` number, float
      - `unitAmount` number, float
      - `discountPercentage` number, float
      - `subTotal` number, float
      - `taxAmount` number, float
      - `totalAmount` number, float
      - `accountRef` string
      - `taxRef` string
      - `inventoryRef` string
    - `shipToAddress` ShippingAddressDto
      - `line1` string
      - `line2` string
      - `city` string
      - `region` string — Region within a country. For example, state name for USA, province name for Canada.
      - `country` string — Country name as 3 ISO alpha-3 characters.
      - `postalCode` string — Postal code. For example, zip code for USA and Canada.
    - `memo` string

## Response `200`

- PushEstimateV1ResponseDto
  - `pushCommunicationId` string, required
  - `requestedOn` string, date-time, required
  - `status` 'success' | 'failed' | 'pending', required
  - `businessName` string, required
  - `serviceName` 'freshbooks' | 'quickbooks' | 'quickbooksDesktop' | 'xero' | 'oracleNetsuite' | 'sageBusinessCloud' | 'sageIntacct' | 'dynamicsBusinessCentral' | 'dynamics365Finance' | 'wave' | 'myob' | 'zohoBooks' | 'byod', required
  - `data` PushEstimateV1, required
    - `passThrough` object
    - `currencyRate` number
    - `dueDate` string, date
    - `postedDate` string, date
    - `acceptedDate` string, date
    - `expiryDate` string, date
    - `customerRef` string, required
    - `currency` string
    - `lines` EstimateLineV1[], required
      - `description` string
      - `quantity` number, float
      - `unitAmount` number, float
      - `discountPercentage` number, float
      - `subTotal` number, float
      - `taxAmount` number, float
      - `totalAmount` number, float
      - `accountRef` string
      - `taxRef` string
      - `inventoryRef` string
    - `shipToAddress` ShippingAddressDto
      - `line1` string
      - `line2` string
      - `city` string
      - `region` string — Region within a country. For example, state name for USA, province name for Canada.
      - `country` string — Country name as 3 ISO alpha-3 characters.
      - `postalCode` string — Postal code. For example, zip code for USA and Canada.
    - `memo` string

## Other responses

- `400` — Bad Request Error - Thrown if fields sent via query does not follow specifications
- `401` — Unauthorized - Not logged in or log in expired
- `403` — Forbidden - Not enough permission
- `500` — Server Error

---

[API](https://skmtc.net/railz/apis/fis-accounting-data-as-a-service-api.md) · [All operations](https://skmtc.net/railz/apis/fis-accounting-data-as-a-service-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/railz/fis-accounting-data-as-a-service-api/revisions/5cdfae3fa1fa/schema)
