Browse Documentation
- Report
- Overview
- Organizations
- GET Get Organisation
- POST Update Organisation
- Invoices
- POST Create Invoice
- GET Get Invoice
- PUT Update Invoice
- DELETE Delete Invoice
- POST Approve Invoice
- POST Add Attachment
- DELETE Delete Attachment from Invoice
- POST Send Invoice
- POST Pay Invoice
- Purchases
- POST Create Purchase
- GET Get Purchase
- PUT Update Purchase
- DELETE Delete Purchase
- POST Approve Purchase
- POST Add Attachment to Purchase
- DELETE Delete Attachment from Purchase
- POST Pay Purchase
- Pos sales
- GET Get POS Sales
- POST Create POS Sale
- PUT Update POS Sale
- DELETE Delete POS Sale
- POST Add POSSales Payment
- Offers
- POST Create Offer
- GET Get Offer
- PUT Update Offer
- DELETE Delete Offer
- POST Add Attachment to Offer
- DELETE Delete Attachment from Offer
- POST Send Offer
- POST Convert to Invoice
- Items
- POST Create Item
- GET Get Item
- POST Update Item
- POST Add Item Picture
- DELETE Delete Item Picture
- Item categories
- Contacts
- POST Create Contact
- GET Get Contact
- PUT Update Contact
- Account types
- GET Account Types
- Accounts
- POST Create Account
- GET Get Account
- Financial accounts
- Taxes
- POST Create Tax
- GET Get Tax
- Invoice template
- GET Get Template
- POST Update Invoice Template
- POST Upload Template Logo
- POST Create New Invoice Template
- DELETE Delete Invoice Temaplate
- Inbox
- POST Upload Attachment
- GET Get Attachments
- DELETE Delete Attachment
- Payments
- DELETE Delete Payment
- Journals
- GET Get journals
- Banks
- GET List banks
- Team
- POST Create Team Member
- GET List Team Members
- DELETE Remove Team Members
POST Create offer
Create a new Offer
POST
/offers
Parameters
Parameter | Type | Description |
client_id | required | String | The client you are sending the invoice to |
date_issued | Date YYYY-MM-DD | The date the invoice was issued |
date_due | Date YYYY-MM-DD | The expiration date of the offer |
invoice_id | String | Invoice ID of the invoice that originated from the offer |
template_id | String | Invoice Template for the invoice The invoice template defines the layout of sales documents. In this case an offer. If the invoice template is not supplied the default invoice template will be used. |
reference | String | Any name that you wish to use as a reference |
Items | Array[object] | Items to be added to the invoice |
items[title] | required | String | Item title |
items[description] | String | Description of the item |
items[quantity] | required | Int | Item quantity |
items[price] | required | Float|Int | Item price (see how price and the include_tax indicator work together in teh example below) |
items[tax_id] | required | String | Item Tax ID |
items[include_tax] | Bool | Indicates whether the price includes or excludes sales tax. When the indicator is not supplied it defaults to false. |
A POST request is expected to be sent to the above endpoint where the content body must be JSON string containing all parameters that are needed to create a new invoice. The below example demonstrates how to create a new Offer.
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer token" \ -XPOST \ -d '{ "offer": { "client_id": "1615c6926a25a72b31ee320d0889e82f6395511c", "date_issued": "2017-04-24", "items": [ { "title": "item 01", "quantity": 1, "price": 100, "tax_id": "fd62ee6c1d65e4729da41f85cdd328dfc816d161" }, { "title": "item 02", "quantity": 1, "price": 100, "tax_id": "fd62ee6c1d65e4729da41f85cdd328dfc816d161", "tax_included": true } ] } }' \ https://dev.accounteer.com/api/v0.1/offers/
Response
{ "id": "ba775d2a3f9612ab288489f20ceab582f7f62fd5", "organization_id": "daa71f0644647c0d82dd2d03d0b29779644b1a48", "document_number": "OFF-2016012", "client_id": "1615c6926a25a72b31ee320d0889e82f6395511c", "template_id": "6510e39e71217f262c39b3525831f2a5405fc5e8", "total_amount": 221, "total_base_amount": 182.64, "total_tax_amount": 38.36, "currency": "EUR", "date_issued": "2017-04-24", "date_due": "2017-08-23", "date_created": "2017-07-24", "date_updated": "2017-07-24", "status": "approved", "reference": null, "items": [{ "id": "2417f43fb9ec75daa3abad35f0ab9a42eebc1910", "title": "item 01", "description": null, "quantity": 1, "item_base_amount": 100, "tax_id": "fd62ee6c1d65e4729da41f85cdd328dfc816d161", "tax_name": "VAT 21%", "tax_percentage": 21, "line_base_amount": 100, "line_tax_amount": 21, "line_total_amount": 121, "tax_included": false, "price": 100 }, { "id": "b92f3b4c8013d092acf7d8b56a8eef19bbea6613", "title": "item 02", "description": null, "quantity": 1, "item_base_amount": 82.644628099174, "tax_id": "fd62ee6c1d65e4729da41f85cdd328dfc816d161", "tax_name": "VAT 21%", "tax_percentage": 21, "line_base_amount": 82.64, "line_tax_amount": 17.36, "line_total_amount": 100, "tax_included": true, "price": 82.64 }] }
In this example request, the effect of the include_tax indicator is visible.
For item 01 we didn't set the indicator which causes it to default to false. When the indicator is false it means the price supplied is the item price excluding sales tax. Sales tax will be added to the price. The item_base_amount will be equal to the price, being 100. 21 sales tax is added causing the total of one item to be 121.
For item 02 we set the include_tax indicator to true. This means the price already includes sales tax. Here the base amount is equal to 100 / 1.21 = 82.64. Sales tax on the base amount is 82.64 * 21% = 17.36 resulting in a total price for one item of 100.