Webhooks

Webhooks

Introduction

Some of the ways your developed application can communicate with us (CustomBooks™ application) are:
a) Polling our API (You call us).
b) Webhooks (We call you).

This article will focus on us calling you (Webhooks).

Webhooks are one of the ways for source applications (CustomBooks™ in this case) to call (send automated information) to a 3rd party application (your developed application) about an event triggered in source application. 

When to call? 

    You will need to ("Subscribe") identify the event(s) for which you need us to notify your application. 

Whom to call? 

    You will provide us with your (webhook service "URL") address to call. We will notify you via this URL when the event happens. This URL needs to be publicly accessible where CustomBooks™ can send HTTP requests. To ensure encrypted data is sent between CustomBooks™ and your application, your webhook URL needs to support HTTPS and you need to validate that the URL is secure. 

What to send?

    We will send you a (JSON) formatted message ("Payload") for the event you are subscribing to. We will be describing the Payload format in this article. Once the Payload is received, your application (that has the service URL) will process the Payload and take necessary actions. 

How to process?

      You need to create a custom application to run in response to the Payload.

Webhooks usually makes Application development easier. For the events subscribed, you will not need to ping our API to know if the data changed; CustomBooks™ will notify your application URL automagically. 

Setup Webhooks

You will follow following steps to setup Webhooks.
Step 1: Login to your CustomBooks™ account and open the company for which you need to setup the webhooks. 
Step 2: On the menu, click on "QuickMenu" and then "Settings" menu options, as shown below.


Step 3: On the Settings page, select the Integrations and then Webhooks. This will list the Transaction types you can Subscribe to. 
            You can now enter the Webhook Service URL (from your application) where CustomBooks™ can notify when the change events happen.

Testing Webhooks

We recommend you to test the Webhooks and understand the process before you start changing your application. Best way is to use online tools to test. 
Some useful tools to debug/test webhooks are:
  1. http://webhook.site/
  2. https://requestbin.com/

Response Header

Key

Data Type and Format

Description

WebhookSignatureHash

String

This is available when the Webhook is triggered for a Developer Partner Application. Learn more about registering an application here .

WebhookVersion

String

This value will always be returned. This will help identify the webhook version number response is generated for.


Response Payload

Customer/Vendor

You can learn more about Customer/Vendor here .

Key

Data Type and Format

Description

Consignee

Boolean

 This company is a Consignee .

BusinessIdentificationNo

String

 This the government issued tax identification number.

TenantNumber

Number

This is the Tenant (Account) Number of the CustomBooks™ Company.

api_code

String

 Reference key for the record. This uniquely identifies the record.

IncomeAccount

String

   Default Income Account from the Chart of Accounts for this Company.

IncomeAccount_Key

String

Default Income Account reference key.

FullName

String

 This is company’s legal business name for tax purposes.

NewObject

Boolean

This flag is set to true for items that have no been changed in any way since creation.

ExpenseAccount

String

 This is the default expense account used for transactions with this company.

ExpenseAccount_Key

String

Default expense account reference key.

Ref

String

 Representation of the company using both Company code and name. Example “Apple (00123)”.

Code

String

  Unique company code.

Identifier

String

External globally unique identifier for the record.

Description

String

Company Name

FederalIDType

String

Either EIN or SSN

  • is the TIN type for the company. 

USTaxID

String

Federal Tax Identification Number. This field is needed by 1099 integration partners.

APAccount

String

Default Accounts Payable Account for this company. Located on the Financial tab when creating a Vendor.

APAccount_Key

String

Default Accounts Payable Account reference key.

DefaultCurrency

String

The default currency . This will always be USD. Located on Financial tab.

DefaultCurrency_Key

String

Default currency reference key.

Vendor1099

Boolean

This flag is true is this is a 1099 Vendor company .

Customer

Boolean

 Flag that is set to true if this company is a Customer.

StripeCardID

String

Stripe Card ID configured for the company.

Vendor

Boolean

  This flag is set to true if this company is a Vendor.

Website

String

  Company Website. Located on the Notes tab.

Notes

String

 General Notes. Located on Notes tab.

Terms

String

Payment Terms. This must be a value that is in the payment terms catalog. You will always see this on Financial tab.

Terms_Key

String

Payment Terms reference key.

StripeID

String

Stripe ID configured for the company.

resource

String

Name of the object for which Webhook is returning the data. In this case, it will always be “Companies”.

ARAccount

String

Default Accounts Receivable Account for this company.  Customer company record will see this on Financial tab.

ARAccount_Key

String

Default Accounts Receivable Account reference key.

PriceLevel

String

 This is a g rouping for customers used to control pricing. The value must be in the existing catalog. Located on the Financial tab for Customer Companies.

PriceLevel_Key

String

Price level reference key.

PaypalID

String

Email address used for paypal transactions for this company.

CoinbaseEmail

String

Email address used for Coinbase transactions for the company.

TechnicalDataAttribute

String

Zoho CRM’s Department identifier for this company.

SalesPerson

String

 Default Salesperson for this company. Must be a value from the existing catalog. Customer company record will see this on Financial tab.

SalesPerson_Key

String

Default Salesperson reference key.

Taxable

Boolean

 Flag that is true when this is a taxable customer.  

SalesTaxRate

String

  This is the sales rate charged for this customer. Must exist in the catalog of sales tax rates. Customer company record will see this on Taxes tab.

SalesTaxRate_Key

String

Sales tax rate reference key.

ResaleNO

String

  If this Company has a resale permit allowing him to purchase without sales taxes, this flag is set to true.

UseAvatax

Boolean

THis flag is set to true when this company is set up to use Avalara’s Avatax for automatic sales tax calculation.

AvataxCustomerUsageType

String

  Customer company record will see this on Taxes tab. ???

AvataxCustomerUsageType_Key

String

Avatax customer usage type reference key.

USTaxIDHidden

String

Vendor company will see this on 1099 tab. This field may be useful to 1099 integration partners.

Employee

Boolean

This flag is set to true if this company is an Employee.

InArchive

Boolean

This flag is set to true if this company has been inactivated.

CheckbookEmail

String

This is the email address used by the company for Checkbook.io transactions.

SalesTaxAddress

String

  This is either Origin, Destination/Shipping or Billing and refers to the address that is used when calculating sales taxes.

action

String

Operation name: create, update, delete. 

Item

You can learn more about Item here .

Key

DataType and Format

Description

TenantNumber

Number

This is the Tenant (Account) Number for the CustomBooks™ account. It may be found in the URL and in the upper left corner of the screen while in the application. It may also be seen on the dashboard and has the format 110#####.

HasServices

Boolean

 Used in Assembly/Disassembly to add labor cost.

api_code

String

 Reference key for the record. This uniquely identifies the record.

DisassemblyExpenseAccount

String

 Expense account which will be used in Disassembly .

DisassemblyExpenseAccount_Key

String

 Expense account reference key.

NewObject

Boolean

True if this item has never been updated since creation.

Characteristic

String

 Used as a lots classifier if “ Lots type “ is specified as “Characteristic“.

Characteristic_Key

String

Characteristic reference key.

AllowNegativeAmount

Boolean

Allows negative Price and Cost on the lines for this item.

DiscountIsTaxable

Boolean

Defines if Discount is taxable .

UseLotsByExpiration

Number

 0 - Expiration date, 1 - Production date (Shelf life is used for calculation of exp. date).

vendor_description

String

 Description/Name of the default vendor .

Ref

String

The concatenation of code and name in the following format "Item Name (xxxxx).

Cost

Number

  Expected cost .

Code

String

 Unique item code / SKU.

Identifier

String

 External identifier for the record.

Length

Number

 Dimensions: length.

Description

String

  Item name.

CostingMethod

String

  Costing method : Weighted Average / FIFO.

AllowAutoAssembly

Boolean

 Defines if auto-assembly is allowed.

Type

String

 Type: Product / Service .

ShelfLife

Number

Shelf life

  • used with lots.

Assembly

Boolean

 Defines if assembly is used for current Item.

Disassembly

Boolean

 Defines if disassembly is used for current Item.

UseLotsType

Number

 0 - Lot number / Expiration, 1 - Characteristic.

UseLotsPresentation

Number

 0 - Lot number , 1 - Expiration, 2 - Lot number + Expiration, 3 - Expiration + Lot number.

PricePrecision

Number

  Price precision , an integer that defines the number of decimal places used in cost and price fields (rounded on documents when represented in currency)

ShelfLifeUnit

Number

  Shelf life unit , used in lots.

UseSerialNumbersOnGoodsReception

Boolean

  Serial numbers are saved in Item Receipt , Bill , Credit memo and Serial numbers adjustment .

InventoryOrExpenseAccount

String

  Default inventory or expense account from the chart of account as defined in settings.

InventoryOrExpenseAccount

String

  Default inventory or expense account reference key.

DefaultPurchaseUnit

String

 Default purchase Unit of Measure

DefaultPurchaseUnit_Key

String

 Default purchase Unit of Measure reference key.

UnitSet

String

 Default unit of measure set .

UnitSet_Key

String

 Default unit of measure set reference key.

IncomeAccount

String

  Default sales account from the chart of account as defined in settings.

IncomeAccount_Key

String

  Default sales account reference key.

TaxCode

String

  Sales Tax code provided by Avatax .

TaxCode_Key

String

 Sales Tax code reference key.

Weight

Number

 Dimensions: Weight.

COGSAccount

String

 Default COGS account from the chart of account as defined in settings.

COGSAccount_Key

String

 Default COGS account reference key.

TechnicalDataAttribute

String

 id in external system.

DefaultLocation

String

 Default location .

DefaultLocation_Key

String

 Default location reference key.

DefaultSaleUnit

String

  Default sale unit .

DefaultSaleUnit_Key

String

  Default sale unit reference key.

Category

String

 Item category .

Category_Key

String

 Item category reference key.

PreferredVendor

String

  Preferred vendor .

PreferredVendor_Key

String

 Preferred vendor reference key.

UPC

String

  UPC code .

vendor_code

String

 default vendor code .

Taxable

Boolean

 defines if Item is taxable .

Price

Number

 Default price - what is charged for this item when selling.

WasteAccount

String

  Default waste account used in Assembly from the chart of account as defined in settings.

WasteAccount_Key

String

 Default waste account reference key.

ReorderQty

Number

 Reorder point.

InArchive

Boolean

 True if Item is inactive.

DaysToBuild

Number

 Days to build in Assembly . Currently not used.

WeightUoM

String

  Weight Units of Measure .

WeightUoM_Key

String

 Weight Units of Measure reference key.

Height

Number

 Dimensions: Height.

Width

Number

 Dimensions: Width.

ThreeDimensionsUoM

String

 Dimensions unit of measure .

ThreeDimensionsUoM_Key

String

 Dimensions unit of measure reference key.

UseLotsSerialNumbers

String

Possible values: Empty / Lots / Serial numbers.

LandedCostAllocationType

String

Landed cost allocation type. Values: By amount / By weight / By quantity.

IsLandedCost

Boolean

Defines if Service Item is Landed Cost.

DiscountsAccount

String

Default discount account for Discount Service Items.

DiscountsAccount_Key

String

Default discount account reference key.

resource

String

Name of the object for which webhook is returning the data.

action

String

Operation name: create, update, delete.

HasResiduals

Boolean

 Defines if Item has Residuals after assembly .

Residuals



      Product

String

  Item Code.

      Product_Key

String

 Item reference key.

      ProductDescription

String

 Item description .

      UnitSet

String

  unit of measure set .

      UnitSet_Key

String

 unit of measure set reference key.

      QtyUnits

Number

 quantity.

      Unit

String

  unit of measure.

      Unit_Key

String

  unit of measure reference key.

      Percent

Number

 cost percent.

      PriceUnits

Number

  cost .

      LineTotal

Number

 total.

LineItems


Assembly line items.

      Product

String

  Item Code.

      Product_Key

String

 Item reference key.

      ProductDescription

String

 Item description .

      UnitSet

String

 unit of measure set .

      UnitSet_Key

String

 unit of measure set reference key.

      QtyUnits

Number

Waste quantity .

      Unit

String

  unit of measure .

      Unit_Key

String

  unit of measure reference key.

      PriceUnits

Number

  Planned cost .

      LineTotal

Number

  Planned total .

      WastePercent

Number

 Waste percent .

      WasteQtyUnits

Number

  Waste .

      WasteTotal

Number

 Planned waste total .

Services


Labor information .

      Product

String

Service Item .

      Product_Key

String

 Item reference key.

      ProductDescription

String

 Item description .

      UnitSet

String

  Unit of measure set .

      UnitSet_Key

String

 unit of measure set reference key.

      QtyUnits

Number

 Quantity.

      Unit

String

  Unit of Measure .

      Unit_Key

String

  unit of measure reference key.

      PriceUnits

Number

  Cost .

      LineTotal

Number

 Total.

SaleOrder

You can learn more about Sales Order here .

Key

DataType and Format

Description

TenantNumber

Number

  This is the Tenant Number of the account. Also referred to as Account number or Company Number.

DiscountLineItems

Boolean

  If True, discounts are specified for each item line. Located on the Discounts tab

Company

String

 This is the Customer of the Sales Order. Located on the Main tab.

Company_Key

String

Customer reference key.

Terms

String

  Customer payment term . Located on Main tab . Is used in calculation of Due Daste

Terms_Key

String

  Customer payment term reference key.

DefaultLineDiscountType

String

 Default discount type for a line. Located on the Discounts tab

api_code

String

 Reference key for the record. This uniquely identifies the record.

Cancelled

Boolean

Indicates that the document has been cancelled.

Currency

String

This is the currency of the document from the Currency tab.

Currency_Key

String

Currency reference key.

Posted

Boolean

 True if the record is saved and finalized, false if it is a draft.

Number

String

 Document (transaction) number. Located on the Main tab. More on Document Numbering here .

Ref

String

 Visual representation of the Sales Order.

Date

ISO 8601 Date String (YYYY-MM-DDThh:mm:ss±hh)

  Document (transaction) date. Located on the Main tab . This is auto-filled to today’s date upon creation but may be changed by the user.

DiscountIsTaxable

Boolean

 If True, the sales tax is calculated before discounts are taken Located on the Sales tax tab

ShipTo

String

  Label that refers to the Delivery (Ship To) address on the Company card of the Customer. Located on the Addresses and Shipping tab.

ShipTo_Key

String

  Delivery (Ship To) address reference key.

BillTo

String

Label that refers to the Bill To address on the Company card of the customer. Located on the Addresses and Shipping tab.

BillTo_Key

String

Bill To address reference key.

AvataxDocCode

String

   Avatax identifier

ConfirmTo

String

 Label that refers to the Confirm To address on the Customer card for shipments. Located on the Addresses and Shipping tab

ConfirmTo_Key

String

 Confirm To address reference key.

RefNum

String

 Reference Number - May be used as a document or transaction Identifier for an external system. Located on the Main tab.

Location

String

  A warehouse location to ship from. Located on the Addresses and Shipping tab.

Location_Key

String

  Warehouse location reference key.

DropshipCompany

String

 This is the Dropship Customer from “Addresses and Dropship details” tab.

DropshipCompany_Key

String

 Dropship Customer reference key.

Dropship

Boolean

 This is the Dropship checkbox from Main tab.

DropshipFromVendor

Number

  Dropship supplier

DocumentTotal

Number

 The sum of the document including lines, tax and shipping less discounts. Located in the document footer.

Identifier

String

 External identifier for the record.

DropshipShipTo

String

 Label of the delivery (ship to) address, if dropshipping feature is used. Located on the Addresses and Shipping tab.

DropshipShipTo_Key

String

 Delivery (ship to) address reference key.

DropshipConfirmTo

String

 Label for the confirmation address of customer on company card, if dropshipping feature is used. Located on the Addresses and Shipping tab.

DropshipConfirmTo_Key

String

 Confirmation address reference key.

SalesTaxRC

Number

 The sales tax amount in the reporting (base) currency.

DropshipRefNum

String

 A reference number used for a dropship order, may be used as an identifier for an external system. Available if dropshipping feature is used. Located on the Main tab

Memo

String

A memo that will print on printed / email documents. Located on the Memo tab as External Memo.

DiscountPercent

Number

  Discount percent applied to the Sales Order

BaseDocument

String

 Parent document

BaseDocument_Key

String

 Parent document reference key.

SalesPerson

String

 Sales person. Located on the Main tab.

SalesPerson_Key

String

 Sales person reference key.

TaxableSubtotal

Number

 Taxable subtotal. Sum of taxable lines on the Sales Order. Located on the Sales tax tab

DiscountType

String

  Discount type: percent % or fixed amount $ . Located on the discounts tab (for line-item discounts) and in the document footer (for discounts that apply to the whole order).

ExchangeRate

Number

 Foreign currency exchange rate. Located on the Currency tab

DeliveryDate

ISO 8601 Date String (YYYY-MM-DD)

 Planned delivery date. Located on the Main tab and labeled as “Promise Date”.

Project

String

 Project this transaction should be recorded to. Is located on the product line.

Project_Key

String

 Project reference key.

DefaultLineDiscountValue

Number

 Default discount value for a line. Located on the Discounts tab

Class

String

 Class that this transaction should be recorded to. Located on the product line.

Class_Key

String

 Class reference key.

ManualAdjustment

Boolean

 Indicates that the document register records were changed manually.

Discount

Number

  Discount amount.

LineSubtotal

Number

 Total sum of lines before taxes and discounts were calculated. Located on the Footer

EmailCC

String

 Email address to send email copy

UseAvatax

Boolean

  Avatax is used 

SubTotal

Number

 Total sum before taxes and discounts are calculated.

Shipping

Number

 Shipping cost applied to order. Located on the Footer

SalesTax

Number

  Sales Tax amount. Located on the Footer

DocumentTotalRC

Number

 Document total in report currency . Located on the Footer

SalesTaxRate

String

  Sales tax rate. Sales tax rates must be included in the sales tax rates catalog.

SalesTaxRate_Key

String

 Sales tax rate reference key.

SalesTaxAmount

Number

 Sales tax amount.

EmailNote

String

This is the text that appears on the body of the email when sending the sales invoice vial email.

NonpostedStatus

String

 A status of a draft

NonpostedStatus_Key

String

 Draft status reference key.

EmailTo

String

Email to send the sales invoice

LastEmail

String

This is the date/time that this document was last emailed. Is displayed on the Sales Order list view.

AvataxShippingTaxCode

String

Shipping tax code in Avatax . Located on the Sales tax tab

AvataxShippingTaxCode_Key

String

Shipping tax code reference key.

CreatedFromZoho

Boolean

True if the document was created from Zoho.

DiscountTaxability

String

Is a dropdown located on the Sales tax tab that determines if discount is taxable. Possible values: Taxable, Non-taxable or By Product Setting.

UseShipment

Boolean

If true, Shipment will be used before Sales Invoice

PayHTML

String

Web link to invoice for payment processing via Stripe or Paypal.

FOB

String

Origin or Destination. Located on the Discounts and Shipping tab

Carrier

String

Shipping Carrier . Values are stored in a user-defined catalog. Located on the Discounts and Shipping tab: shipping method

Carrier_Key

String

Shipping Carrier reference key.

SalesTaxAddress

String

Sets the address used for sales tax rates . Possible values are Origin, Destination or Billing. Located on the Sales tax tab.

action

String

Operation name: create, update, delete

LineItems

 

 

      LineNumber

 

 Line number. Starts with 1 and increments by 1.

      LineID

String

 Internal unique line identifier

      Location

String

 The warehouse location the sales order will be shipped from.

      Location_Key

String

 The warehouse location reference key.

      QtyUnits

Number

  Quantity in item units

      PlannedDropshipVendor

String

 Planned dropship supplier

      PlannedDropshipVendor_Key

String

 Planned dropship supplier reference key.

      Product

String

 Item code

      Product_Key

String

 Item reference key.

      ProductDescription

String

 Item description

      Lot

String

 Lot , if used.

      Lot_Key

String

 Lot reference key.

      Unit

String

 Item unit of measurement

      Unit_Key

String

 Item unit of measurement reference key.

      UnitSet

String

  Unit of measurement Set . The Set is a container for the base unit, related units and their relationships that is used on an item.

      UnitSet_Key

String

 Measurement set unit reference key.

      QtyUM

Number

 Quantity in units of measurement

      PriceUnits

Number

 Price, what is charged for the item.

      Subtotal

Number

 Total of the lines before taxes and discounts are calculated.

      LineTotal

Number

 Line sum = price x quantity.

      Taxable

Boolean

  If True, sales taxes is applied to the taxable amount of this line.

      TaxableAmount

Number

  Sales tax amount on this line.

      DeliveryDate

ISO 8601 Date String (YYYY-MM-DD)

Promise date for delivery of the ordered item on this line.

      Project

String

The project that this line is recorded to.

      Project_Key

String

Project reference key.

      Class

String

The class assigned to the line item.

      Class_Key

String

Class reference key.

      AvataxTaxCode

String

Sales Tax code in Avatax for the product on this line

      AvataxTaxCode_Key

String

Sales Tax code reference key.

      Dropship

Boolean

True  If dropshipping feature is used on this line.

      DiscountIsTaxable

Boolean

 If True, the sales tax is applied to the discount on this line.

      DiscountType

String

 Line Discount type: percent or fixed amount.

      Discount

Number

 Line Discount amount.

      DiscountPercent

Number

 Line Discount percent.

SalesTaxAcrossAgencies

 

 

      LineNumber

Number

 Line Number

      Agency

String

Sales tax agency

      Agency_Key

String

Sales tax agency reference key.

      Rate

Number

Sales tax r ate

      Amount

Number

Amount

      SalesTaxComponent

String

Sales tax component

      SalesTaxComponent_Key

String

Sales tax component reference key.

      SalesTaxRate

String

Name of sales tax rate

      SalesTaxRate_Key

String

Sales tax rate reference key.

      AvataxTaxComponent

String

Sales tax component from Avatax

      AvataxTaxComponent_Key

String

Avatax tax component reference key.

SalesInvoice

You can learn more about Sales Invoices here .

Key

DataType and Format

Description

TenantNumber

Number

This is the Tenant Number .

DiscountLineItems

Boolean

 If True, discounts are specified for each item line. You can see it on the Discounts tab.

Company

String

  Customer company . This is located on the Main tab on the Sales Invoice document.

Company_Key

String

Customer reference key.

Terms

String

 Customer payment terms. This is located on the Main tab on the Sales Invoice document.

Terms_Key

String

  Customer payment term reference key.

api_code

String

 Reference key for the record. This uniquely identifies the Invoice.

Currency

String

  Currency code . Is used throughout the system when multi-currency is enabled.

Currency_Key

String

Currency reference key.

Posted

Boolean

 Indicates if an Invoice has been posted (True) or is a draft (false). Draft documents do not post to the general ledger.

ShipTo

String

 The Label for the Delivery (Ship To) address for the product on the line. A default for the Sales Invoice is located on the Addresses and Shipping tab . The label is a field on and refers to the address on the Company Card .

ShipTo_Key

String

 Delivery (Ship To) address reference key.

Number

String

Sales Invoice Document (transaction) number. Located on the Main tab on the Sales Invoice document. See Document Numbering .

Ref

String

 Document (transaction) representation.

Date

ISO 8601 Date String (YYYY-MM-DDThh:mm:ss±hh)

 Sales Invoice document (transaction) date. Located on the main tab.

DiscountIsTaxable

Boolean

 If True, the sales tax is calculated on the total before any discounts. Located on the Sales tax tab.

BillTo

String

The label referring to the address to send the Sales Invoice. Located in the Addresses and Shipping tab on the Sales Invoice document and defined in Addresses on Company Card.

BillTo_Key

String

Bill To address reference key.

AvataxDocCode

String

  Avatax identifier.

ConfirmTo

String

Label referring to the Confirmation address for the Sales Invoice document. Located on the Addresses and Shipping tab and references the address on the Company Card .

ConfirmTo_Key

String

 Confirm To address reference key.

RefNum

String

 Identifier for an external system. Located on Main tab

Location

String

 The warehouse location to ship from. Located on the Addresses and Shipping tab.

Location_Key

String

  Warehouse location reference key.

DropshipCompany

String

 The dropship company (customer) that is the recipient of the goods and the invoice. Located on the Addresses and Shipping tab.

DropshipCompany_Key

String

  Dropship Company (customer) reference key.

DropshipShipTo

String

 Delivery address, if dropshipping feature is used. Located on Addresses and Shipping tab.

DropshipShipTo_Key

String

 Delivery (ship to) address reference key.

DropshipConfirmTo

String

 Confirmation address for drop ship orders, if dropshipping feature is used. Located on Addresses and Shipping tab.

DropshipConfirmTo_Key

String

 Confirmation address reference key.

SalesTaxRC

Number

  Sales tax in reporting currency: USD.

DropshipRefNum

String

 Dropship Reference Number, if dropshipping feature is used. Located on the Main tab

Memo

String

 User’s comment to a sales invoice. Located on Memo tab.

DiscountPercent

Number

  Discount percent. Located in the footer on the Sales Invoice document.

BaseDocument

String

 Parent document, the document in which the current document was generated.

BaseDocument_Key

String

 Parent document reference key.

SalesPerson

String

  Sales person. Defined in List/Salespeople and located on the main tab in the Sales Invoice document.

SalesPerson_Key

String

 Sales person reference key.

TaxableSubtotal

Number

 Taxable subtotal. Located on Sales tax tab if sales tax is enabled.

DiscountType

String

  Discount type: percent or fixed amount. Located on Discounts tab.

ExchangeRate

Number

 Foreign currency exchange rate. Located on the Currency tab and defined in Currencies .

ARAccount

String

 The Accounts Receivable account from the Chart of Accounts to be used. Located on the Accounting tab.

ARAccount_Key

String

 Accounts Receivable account reference key.

DueDate

ISO 8601 Date String (YYYY-MM-DD)

 The due date for payment on the document. Located on the Main tab . This is calculated using the Payment Terms .

LastEmail

String

 Last email sent for the document .

DeliveryDate

ISO 8601 Date String (YYYY-MM-DD)

 Planned or actual delivery date. located on Main tab.

Project

String

Name of project associated with this Sales Invoice. Projects are a way of grouping transactions and can be associated with customers. More here.

Project_Key

String

 Project reference key.

Class

String

The class assigned to Sales Invoice. Classes group transactions for reporting purposes. More here.

Class_Key

String

 Class reference key.

Paid

Boolean

 True if a Sales Invoice was paid (a cash receipt exists and there is no balance)

AvataxDiscountTaxCode

String

 Discount tax code in Avatax .

AvataxDiscountTaxCode_Key

String

 Discount tax code reference key.

Identifier

String

 External system document identifier.

DocumentTotal

Number

 Total of items plus tax less discounts of the Sales Invoice. Located on the Footer.

URL

String

 This field stores any external url that a user wishes to associate with this Sales Invoice.

EmailTo

String

 Email recipient when sending the Sales Invoice.

ManualAdjustment

Boolean

 Indicates that the Document register records were ch anged manually.

Discount

Number

  Discount amount.

LineSubtotal

Number

 Total sum of lines before taxes and discounts were calculated. Located in the footer.

EmailCC

String

 Email address to send email copy (cc).

UseAvatax

Boolean

True is Avatax is used.

SubTotal

Number

 Total sum before taxes and discounts were calculated.

Shipping

Number

 Shipping cost. Located in the footer.

SalesTax

Number

  Tax a mount . Located in the footer.

DocumentTotalRC

Number

 Document total in reporting currency (USD). Located in the footer

EmailNote

String

 Customer’s email address to send invoice. You can see it on the Memo tab <--- this is not correct. I don’t know what this field is.

PayHTML

String

Web link to the payment page for the Sales Invoice. Is used in the Make Payment button on Sales Invoice emails.

FOB

String

 Freight on Board. Options are “Origin” or “Destination” . Located on the Discounts and Shipping tab.

Carrier

String

 Shipping Carrier. Located on the Discounts and Shipping tab: shipping method. Value comes from a user-defined catalog.

Carrier_Key

String

Shipping Carrier reference key.

TrackingNumber

String

 Tracking number for the Shipment. Located on the Discounts and Shipping tab.

SalesTaxRate

String

 Sales tax rate.

SalesTaxRate_Key

String

 Sales tax rate reference key.

AvataxShippingTaxCode

String

 Shipping tax code in Avatax . You can see it on Sales tax tab

AvataxShippingTaxCode_Key

String

Shipping tax code reference key.

CreatedFromZoho

Boolean

 If a document was created from Zoho

DiscountTaxability

String

 You can see it on Sales tax tab

Dropship

Boolean

 True If dropshipping feature is used. You can see it on Main tab

Autoassembly

Boolean

 If automatic assembly is used. You can see it on Main tab

SalesTaxAddress

String

 Origin or destination tax rules are used. You can see it on Sales tax tab

DefaultLineDiscountType

String

 Default discount type for a line. You can see it on Discounts tab

DefaultLineDiscountValue

Number

  Default discount value for a line. You can see it on Discounts tab

Balance

Number

Sales invoice balance.

resource

String

Table name.

action

String

Operation name: create, update, delete.

SalesTaxAcrossAgencies


You can see it on Sales tax tab

      LineNumber

Number

Line number

      Agency

String

Sales tax agency

      Agency_Key

String

Sales tax agency reference key.

      Rate

Number

Sales tax rate

      Amount

Number

Sales tax amount

      SalesTaxComponent

String

Sales tax component

      SalesTaxComponent_Key

String

Sales tax component reference key.

      SalesTaxRate

String

Name of sales tax rate

SalesTaxRate_Key

String

  Sales tax rate reference key.

      AvataxTaxComponent

String

Sales tax component from Avatax

LineItems


 

      LineNumber

Number

 Line number.

      LineID

String

 Inner line identifier.

      Location

String

 The warehouse location to ship from.

Location_Key

String

  Warehouse location reference key.

      QtyUnits

Number

 Quantity in item units.

      OrderLineID

String

 Inner ref to an order line.

      DeliveryLineID

String

 Inner ref to a shipment line.

      Product

String

 Item code.

      Product_Key

String

 Item reference key.

      ProductDescription

String

 Item description.

      Lot

String

 Lot

      Lot_Key

String

 Lot reference key.

      UnitSet

String

Unit of measurement Set

      UnitSet_Key

String

 Measurement set unit reference key.

      Unit

String

 Item unit of measurement

      Unit_Key

String

 Item unit of measurement reference key.

      QtyUM

Number

 Quantity in units of measurement

      PriceUnits

Number

 Price

      Subtotal

Number

 Line sum before taxes and discounts were calculated

      LineTotal

Number

 Line sum

      Taxable

Boolean

 If True, taxes is applied to taxable amount

      TaxableAmount

Number

Amount for taxes

      Order

String

 Sales order description

      Order_Key

String

 Sales order reference key.

      Shipment

String

 Shipment or Dropship delivery description

      Shipment_Key

String

 Shipment or Dropship delivery reference key.

      DeliveryDate

ISO 8601 Date String (YYYY-MM-DD)

 Planned delivery date

      Project

String

Name of project associated with this Sales Invoice. Projects are associated with customers. More here.

Project_Key

String

 Project reference key.

      Class

String

 Class assigned to Sales Invoice. Classes group transactions for reporting purposes. More here.

Class_Key

String

 Class reference key.

      AvataxTaxCode

String

 Tax code in Avatax

      AvataxTaxCode_Key

String

Sales Tax code reference key.

      Dropship

Boolean

True   If dropship feature is used.

      DiscountIsTaxable

Boolean

  If True, the sales tax is applied to discounts .

      DiscountType

String

  Discount type: percent or fixed amount

      Discount

Number

 Discount amount

      DiscountPercent

Number

 Discount percent

SerialNumbers


 

LineItemsLineID

String

 Inner line identifier

SerialNumber

String

 Serial number

CashSale

You can learn more about Cash Sale here .

Key

DataType and Format

Description

TenantNumber

Number

This is the Tenant Number of the account. Also referred to as Account number or Company Number.

DiscountLineItems

Boolean

 If True, discounts are specified for each item line. Located on the D iscounts tab.

Company

String

This is the Customer Company of the Cash Sale. Located on the Main tab.

Company_Key

String

Customer reference key.

DefaultLineDiscountType

String

 Default discount type for the line on the Discounts tab.

api_code

String

 Reference key for the record. This uniquely identifies the record.

Posted

Boolean

 True if the record is saved and finalized, false if it is a draft.

Currency

String

This is the currency of the document from the Currency tab.

Currency_Key

String

Currency reference key.

ShipTo

String

The Label for the Delivery (Ship To) address for the product on the line. A default for the Sales Invoice is located on the Addresses and Shipping tab . The label is a field on and refers to the address on the Company Card .

ShipTo_Key

String

  Delivery (Ship To) address reference key.

Number

String

 Cash Sale (transaction) number. Located on Main tab

Ref

String

 Cash Sale (transaction) representation. Presented as “Cash Sale ### dated mm/dd/yyyy”.

Date

ISO 8601 Date String (YYYY-MM-DDThh:mm:ss±hh)

Document (transaction) date. Located on Main tab 

DiscountIsTaxable

Boolean

 If True, the sales tax is applied to discounts. Located on Sales tax tab

RefNum

String

 Identifier for an external system. Located on Main tab

Location

String

The warehouse location to ship items from for this Cash Sale. Located on Addresses and Shipping tab.

Location_Key

String

 Warehouse location reference key.

ExchangeRate

Number

 Foreign currency exchange rate. Located on the Currency tab and defined in Currencies .

SalesPerson

String

   Sales person. Defined in List/Salespeople and located on the main tab of the Cash Sale document.

SalesPerson_Key

String

 Sales person reference key.

TaxableSubtotal

Number

  Taxable subtotal. Located on Sales tax tab if sales tax is enabled.

DiscountType

String

  Discount type: percent or fixed amount. Located on Discounts tab.

Project

String

Name of project associated with this Cash Sale. Projects are a way of grouping transactions and can be associated with customers. More here.

Project_Key

String

 Project reference key.

DefaultLineDiscountValue

Number

   Default discount value for a line. Located on the Discounts tab.

Class

String

 Default Class that this transaction will use when creating line items. Located on the Projects and Class tab. More here.

Class_Key

String

 Class reference key.

DepositType

String

Deposit type. Values: Undeposited (posts to Undeposited account) / Bank account (posts to bank account).

EmailNote

String

This is the text that appears on the body of the email when sending the Cash Receipt via email.

BankAccount

String

 Bank account name (undeposited account or bank account depending on Deposit Type above).

BankAccount_Key

String

 Bank account reference key

PaymentMethod

String

  Payment method name. Payment method is a user-defined list.

PaymentMethod_Key

String

 Payment method reference key

Memo

String

User’s comment to a sales invoice. Located on the Memo tab and prints on printed document.

DiscountPercent

Number

 Discount percent, if using discounts on Cash Sale as a whole.

action

String

 Operation name: create, update, delete.

LineSubtotal

Number

Total sum of the Cash Receipt after discounts applied. Located in the footer.

EmailCC

String

 Email address to send email cc when Cash Receipt is emailed.

Discount

Number

 Discount amount if using a flat amount. Located in the footer.

ManualAdjustment

Boolean

 Indicates that the Document register records were ch anged manually.

Subtotal

Number

 Total sum before taxes and discounts are calculated.

Shipping

Number

 Shipping cost. Located in the footer.

SalesTax

Number

 Tax amount. Located in the footer.

SalesTaxRC

Number

 Sales tax in reporting currency (USD).

SalesTaxRate

String

 Sales tax rate applied to this Cash Sale.

SalesTaxRate_Key

String

  Sales tax rate reference key.

SalesTaxAmount

Number

  Sales tax amount added to this Cash Sale.

DocumentTotal

Number

 Document total in reporting currency (USD). Located in the footer

Identifier

String

 External system document identifier.

DocumentTotalRC

Number

 Document total in reporting currency. Located in the Footer

StripeID

String

This is the ID used by the company to record Stripe transaction.

resource

String

 Table name.

LastEmail

String

 The date that this Cash Sale was Last emailed.

EmailTo

String

 Email address to send the Cash Sale.

BillTo

String

The Billing address for this Cash Sale, located on the Addresses tab.

BillTo_Key

String

Bill To address reference key.

Autoassembly

Boolean

True is auto-assembly is enabled.

IsConsignmentSale

Boolean

True if this is a consignment cash sale.

ConsigneeFees

Number

Consignment fee amount if this is a consignment sale.

SalesTaxAddress

String

Indicates if Origin, destination or billing tax rules are used. You can see it on Sales tax tab

LineItems



      LineNumber

Number

Line number for products table.

      LineID

String

Inner line identifier

      Location

String

The warehouse location from which to ship the item on this line.

Location_Key

String

 Warehouse location reference key.

      QtyUnits

Number

Quantity of the item on this line in item units.

      Product

String

Item code of the item on this line.

      Product_Key

String

 Item reference key.

      ProductDescription

String

Item description of the item on this line.

      Lot

String

Lot of item on this line.

      Lot_Key

String

  Lot reference key.

      UnitSet

String

Unit of measurement set used on the item.

      UnitSet_Key

String

 Measurement set unit reference key.

      Unit

String

Item unit of measurement used on the item in this line.

      Unit_Key

String

 Item unit of measurement reference key.

      QtyUM

Number

Quantity in base unit of measurement.

      PriceUnits

Number

Price given the unit of measure used on this line.

      Subtotal

Number

Line sum before taxes and discounts are calculated.

      LineTotal

Number

Total of line minus discounts.

      Taxable

Boolean

If True, taxes will be applied to taxable amount.

      TaxableAmount

Number

Sales tax amount.

      Project

String

Name of project associated with this Cash Sale. Projects are a way of grouping transactions and can be associated with customers. More here.

Project_Key

String

 Project reference key.

      Class

String

The class assigned to the line item.

Class_Key

String

The class assigned to Sales Invoice. Classes group transactions for reporting purposes. More here.

      DiscountType

String

  Discount type: percent or fixed amount.

      Discount

Number

Discount amount, if fixed amount has been chosen.

      DiscountPercent

Number

Discount percent, if percent type has been chosen.

SalesTaxAcrossAgencies


 

      LineNumber

Number 

 Line Number of Sales Tax Component.

      Agency

String

  Sales tax agency.

      Agency_Key

String

  Sales tax agency reference key.

      Rate

Number

  Sales tax rate.

      Amount

Number

  Sales tax amount.

      SalesTaxComponent

String

  Sales tax component.

      SalesTaxRate

String

 Name of sales tax rate

SalesTaxRate_Key

String

 Sales tax rate reference key.

SerialNumbers


 

LineItemsLineID

String

 Inner line identifier.

SerialNumber

String

  Serial number for this line, if used.

SerialNumber_Key

String

 Serial number reference key.

CashReceipt


You can learn more about Cash Receipt  here .


Key

DataType and Format

Description

TenantNumber

Number

This is the Tenant Number of the account. Also referred to as Account number or Company Number.

Company

String

This is the Customer of the Cash Receipt. Located on the Main tab.

Company_Key

String

Customer reference key.

api_code

String

 Reference key for the record. This uniquely identifies the record.

CoinbaseTransactionId

String

This is the ID used by the company to record Coinbase transaction.

Posted

Boolean

 True if the record is saved and finalized, false if it is a draft.

Currency

String

This is the currency of the document from the Currency tab.

Currency_Key

String

Currency reference key.

RefNum

String

Identifier for an external system. Located on Main tab .

Number

String

Document (transaction) number. Located on the Main tab. More on Document Numbering here .

Ref

String

 Visual representation of the Cash Receipt. Presented as “Cash Receipt #### dated mm/dd/yyyy”.

Date

ISO 8601 Date String (YYYY-MM-DDThh:mm:ss±hh)

Document (transaction) date. Located on the Main tab . This is auto-filled to today’s date upon creation but may be changed by the user.

ExchangeRate

Number

Foreign currency exchange rate. Located on the Currency tab.

InvoicesCreditsSelected

Number

 Number of paid invoices / credits applied.

ARAccount

String

 Accounts Receivable account from the Chart of Accounts. Located on the Accounting tab.

ARAccount_Key

String

 Accounts Receivable account reference key.

AutoGenerated

Boolean

 Internal field. To be removed.

DepositType

String

 Deposit type. Values: Undeposited (posts to Undeposited account) / Bank account (posts to bank account)

EmailNote

String

This is the text that appears on the body of the email when sending the sales invoice via email.

Deposited

Boolean

 Deprecated. To be removed.

BankAccount

String

 Bank account name (undeposited account or bank account depending on DepositType above).

BankAccount_Key

String

 Bank account reference key.

CashPayment

Number

 Amount received.

PaymentMethod

String

 Payment method name. Payment method is a user-defined list.

PaymentMethod_Key

String

 Payment method reference key.

OperationType

String

 Operation type. Values: Prepayment / Application / Payment.

SalesOrder

String

 Visual representation of the Sales Order associated with this Cash Receipt. Presented as “Sales Order ### dated mm/dd/yyyy”.

SalesOrder_Key

String

 Sales order reference key.

PaypalID

String

This is the ID used by the company to record Paypal transaction.

Memo

String

A memo that will print on printed / email documents. Located on the Memo tab as External Memo.

DiscountAmount

Number

 Amount of discounts applied on this Cash Receipt.

DocumentTotal

Number

  Total sum of the Cash Receipt after discounts applied. Located in the footer.

Identifier

String

External identifier for the record.

DocumentTotalRC

Number

Document total in reporting currency . Located in the Footer.

UnappliedPayment

Number

The amount of the cash receipt that has not been applied to a sales invoice.

resource

String

 Table name.

StripeID

String

Stripe ID configured for the company.

LastEmail

String

This is the date/time that this document was last emailed. Is displayed on the Cash Receipt list view.

EmailTo

String

Email recipient of the emailed Cash Receipt.

EmailCC

String

Email cc address of the emailed Cash Receipt.

PaypalPayerId

String

Email address used for paypal transactions for this company.

CoinbasePayerEmail

String

Email address used for Coinbase transactions for the company.

CheckbookPayerEmail

String

This is the email address used by the paying company for Checkbook.io transactions.

action

String

Operation name: create, update, delete.

CreditMemos


 

Document

String

 Credit memo presentation.

Document_Key

String

 Credit memo reference key.

Payment

Number

Amount applied.

LineItems


 

      LineNumber

Number

 Line number on the invoice in the list of invoices.

      Discount

Number

 Discount amount on the invoice line.

      Document

String

 Sales invoice number presented as “Invoice xxx dated xx/xx/xxxx”.

      Document_Key

String

 Sales invoice reference key.

      Payment

Number

 Amount of the cash receipt applied to this line.

Custom Fields

User created Custom Fields are available in “ AdditionalAttributes ” object as part of Webhook payload.

Key

DataType/Format

Description

      LineNumber

Number

Line Number

      Property

String

This is the name you would use when using API to identify a custom field.

      Value

String/Number/Boolean

Additional property value

      TextString

String

Additional property value description     


Security  

Version

We send Webhook Version as part of Payload for you to make sure your application is parsing the correct response version.  

Webhook Signature Secret Key

As part of application registration process, we configure webhooks to use “Signature Secret Key” to protect your application from receiving malicious data that did not originate at AccountingSuite and to ensure it was not tampered with in transit.
You can find these keys next to the other Auth keys generated by us after registering an App. If its not part of the response, please create a support ticket to receive this key.


AccountingSuite generates a hash of the response's body with the Webhook Signature Secret Key and attaches it to Response payload's header. We advise you to verify the signatures by creating the hash and comparing with the one from the message.


Backward Compatibility

As we add new and popular features, we enhance our API/Webhooks structure.

To effectively adapt to the backward compatible enhancements, we recommend developers to consider the following when developing the application:

  1. Adding new API/Webhook resources.

  2. Adding new optional request parameters to existing API.

  3. Adding new response attributes to existing API/Webhook responses.

  4. Changing the order of attributes in existing API/Webhook responses.

  5. Changing the length or format of unique IDs in response. This length will not exceed 255 characters.

  6. Changing the length of values in response.

  7. Adding new events for Webhooks.


    • Related Articles

    • API Security

      Shared Responsibility At CustomBooks™ we take data security seriously, and we expect our Integration Partners to use the best efforts in securing our user data. Our responsibility is to ensure that CustomBooks™ products and services are secure. Your ...
    • AccountingSuite™ Release Updates, German Shepherd 1

       AccountingSuite™ Release Updates Our new Platform Upgrade enables AccountingSuite™ to be even faster, with new user interface improvements that create a seamless and more interactive experience - we all love that! Messages and Dialog boxes are ...
    • Integration Partner Onboarding

      Integration Partner Onboarding CustomBooks™ is a platform that accountants trust. At CustomBooks™, our mission is to simplify Accounting and Inventory Management for businesses, but we understand every business is unique. This page describes how we ...