Introduction

  • SCHEMAS

  • Invoices

    Journal Entries

    Profit and Loss Detail Report

    Projects

    Bills

    Vendors

    Customers

    Credit Notes

    Accounts

    Items

    Bank Accounts

Introduction

A single schema to push and pull Accounting data across connectors.


Supported Connectors

Live

FreshBooks

NetSuite

QuickBooks

QuickBooks Sandbox

Sage Intacct

Xero

Zoho Books

Beta

logo for MYOB

MYOB

logo for Microsoft Dynamics 365 Finance

Microsoft Dynamics 365 Finance

Accounts

Accounts are what businesses use to track transactions.

Properties



id

string


name

string


type

string


active

boolean


category

string


currency

string


parentId

string


createdAt

string


updatedAt

string


hg_deleted

boolean


parentName

string


description

string


accountNumber

string

Example

COPY TO CLIPBOARD
{
  "id": "bd9e85e0-0478-433d-ae9f-0b3c4f04bfe4",
  "name": "Revenue - Subscriptions",
  "type": "incomestatement",
  "active": true,
  "category": "Revenue - Subscriptions",
  "currency": "USD",
  "createdAt": "2019-08-24T14:15:22Z",
  "updatedAt": "2019-08-24T14:15:22Z",
  "description": "",
  "accountNumber": "41000"
}

Bank Accounts

Provides the relevant information for a bank account.

Properties



id

string


name

string


type

string


active

boolean


currency

string


createdAt

string


swiftCode

string


updatedAt

string


hg_deleted

boolean


holderName

string


description

string


accountNumber

string

Example

COPY TO CLIPBOARD
{
  "id": "3302926931",
  "name": "Silicon Valley Bank",
  "type": "checking",
  "active": true,
  "currency": "USD",
  "createdAt": "2019-08-24T14:15:22Z",
  "updatedAt": "2019-08-24T14:15:22Z",
  "description": "",
  "accountNumber": "10160"
}

Bills

Properties



id

string


notes

string


number

string


balance

number


dueDate

string


currency

string


expenses

object [ ]


accountId

string


accountNumber

string


amount

number


department

string


id

string


taxAmount

number


taxCode

string


location

string


paidDate

string


vendorId

string


createdAt

string


issueDate

string


lineItems

object [ ]


accountName

string


accountNumber

string


classId

string


className

string


customFields

array [ ]


description

string


discount

number


id

string


orderId

string


productId

string


productName

string


quantity

number


serviceDate

string


taxCode

string


totalPrice

number


unitPrice

number


updatedAt

string


externalId

object


name

string


value

string


hg_deleted

boolean


locationId

string


vendorName

string


accountName

string


attachments

object [ ]


id

string


name

string


url

string


totalAmount

number


currencyBalance

number

Example

COPY TO CLIPBOARD
{
  "id": "string",
  "status": "string",
  "address": {
    "id": "string",
    "city": "string",
    "name": "string",
    "line1": "string",
    "line2": "string",
    "line3": "string",
    "state": "string",
    "country": "string",
    "postalCode": "string"
  },
  "dueDate": "2019-08-24T14:15:22Z",
  "currency": "string",
  "paidDate": "2019-08-24T14:15:22Z",
  "subTotal": 0,
  "amountDue": 0,
  "createdAt": "2019-08-24T14:15:22Z",
  "issueDate": "2019-08-24T14:15:22Z",
  "lineItems": [
    {
      "taxCode": "string",
      "quantity": 0,
      "productId": "string",
      "taxAmount": 0,
      "unitPrice": 0,
      "productSku": "string",
      "totalPrice": 0,
      "accountName": "string",
      "description": "string",
      "productName": "string",
      "discountAmount": 0
    }
  ],
  "updatedAt": "2019-08-24T14:15:22Z",
  "vendorNum": "string",
  "vendorName": "string",
  "totalAmount": 0,
  "invoiceNumber": "string",
  "totalDiscount": 0,
  "totalTaxAmount": 0
}

Credit Notes

A Credit Note is a financial transaction representing a refund or credit of payment or part of a payment for goods or services that have been sold.

Properties



id

string


note

string

Any additional information about the credit note.


status

string

Draft, Submitted, Paid, PartiallyPaid, Void, Unknown


currency

string

Currency of the credit note.


subTotal

number

Value of the credit note, including discounts and excluding tax.


issueDate

string

Date of the credit note as recorded in the accounting system.


lineItems

string


customerRef

any


totalAmount

number

Total amount of credit that has been applied to the customer's accounts receivable.


currencyRate

string


modifiedDate

string

Date the record was last changed in the accounting system.


totalDiscount

number

Any discounts applied to the credit note amount.


totalTaxAmount

number

Any tax applied to the credit note amount.


allocatedOnDate

string

Date on which the credit note was fully allocated.


remainingCredit

number

Unused balance of totalAmount originally raised.


creditNoteNumber

string

Friendly reference for the credit note.


discountPercentage

number


paymentAllocations

string

Example

COPY TO CLIPBOARD
{
  "id": "string",
  "note": "string",
  "status": "string",
  "currency": "string",
  "subTotal": 0,
  "issueDate": "2019-08-24T14:15:22Z",
  "lineItems": "string",
  "customerRef": {
    "id": "71",
    "active": true,
    "addresses": [
      {
        "id": "123",
        "city": "San Francisco",
        "line1": "Main street",
        "line2": "apt #",
        "line3": "Suite #",
        "state": "CA",
        "country": "US",
        "postalCode": "94104"
      }
    ],
    "createdAt": "2017-08-12T20:43:21.291Z",
    "updatedAt": "2017-08-12T20:43:21.291Z",
    "contactName": "Tony Stark",
    "customerName": "Stark Industries",
    "emailAddress": "tony@starkindustries.com",
    "phoneNumbers": [
      {
        "type": "mobile",
        "number": "111-111-1111"
      }
    ]
  },
  "totalAmount": 0,
  "currencyRate": "string",
  "modifiedDate": "2019-08-24T14:15:22Z",
  "totalDiscount": 0,
  "totalTaxAmount": 0,
  "allocatedOnDate": "2019-08-24T14:15:22Z",
  "remainingCredit": 0,
  "creditNoteNumber": "string",
  "discountPercentage": 0,
  "paymentAllocations": "string"
}

Customers

A customer is a consumer of the service or product that your business offers.

Properties



id

string


notes

string


title

string


active

boolean


suffix

string


balance

number


taxCode

string


taxable

boolean


website

string


lastName

string


addresses

object [ ]


city

string


country

string


id

string


line1

string


line2

string


line3

string


postalCode

string


state

string


checkName

string


createdAt

string


firstName

string


salesTerm

string


updatedAt

string


middleName

string


balanceDate

string


contactName

string


customerName

string


customerType

string


emailAddress

string


phoneNumbers

object [ ]


number

string


type

string


paymentMethod

string


parentReference

object


id

string


name

string

Example

COPY TO CLIPBOARD
{
  "id": "71",
  "active": true,
  "addresses": [
    {
      "id": "123",
      "city": "San Francisco",
      "line1": "Main street",
      "line2": "apt #",
      "line3": "Suite #",
      "state": "CA",
      "country": "US",
      "postalCode": "94104"
    }
  ],
  "createdAt": "2017-08-12T20:43:21.291Z",
  "updatedAt": "2017-08-12T20:43:21.291Z",
  "contactName": "Tony Stark",
  "customerName": "Stark Industries",
  "emailAddress": "tony@starkindustries.com",
  "phoneNumbers": [
    {
      "type": "mobile",
      "number": "111-111-1111"
    }
  ]
}

Invoices

An Invoice represents a sales form where the customer pays for a product or service later.

Properties



id

string


status

string


address

object [ ]


city

string


country

string


id

string


line1

string


line2

string


line3

string


postalCode

string


state

string


deposit

number


dueDate

string


taxCode

string


currency

string


paidDate

string


shipDate

string


subTotal

number


amountDue

number


billEmail

string


createdAt

string


issueDate

string


lineItems

object [ ]


accountName

string


accountNumber

string


classId

string


className

string


customFields

array [ ]


description

string


discount

number


id

string


productId

string


productName

string


quantity

number


serviceDate

string


taxCode

string


totalPrice

number


unitPrice

number


salesTerm

string


updatedAt

string


customerId

string


shipMethod

string


invoiceMemo

string


totalAmount

number


customFields

object [ ]


name

string


value

string


customerMemo

string


customerName

string


invoiceNumber

string


paymentMethod

string


totalDiscount

number


trackingNumber

string

Example

COPY TO CLIPBOARD
{
  "id": "6f3c9546-1ca9-11ed-861d-0242ac120002",
  "status": "Draft",
  "address": {
    "id": "78391098-1ca9-11ed-861d-0242ac120002",
    "city": "Redmond",
    "line1": "One Microsoft Way",
    "line2": "",
    "line3": "",
    "state": "WA",
    "country": "USA",
    "postalCode": "98052"
  },
  "dueDate": "2022-08-08T22:40:50Z",
  "currency": "USD",
  "paidDate": null,
  "subTotal": 21.8,
  "amountDue": 21.8,
  "createdAt": "2022-08-01T22:40:50Z",
  "issueDate": "2022-08-01T22:40:50Z",
  "lineItems": [
    {
      "id": "69fff8fc-1ca9-11ed-861d-0242ac120002",
      "quantity": 5,
      "productId": "72f94e9a-1ca9-11ed-861d-0242ac120002",
      "taxAmount": 1.8,
      "unitPrice": 6,
      "totalPrice": 30,
      "accountName": "Produce",
      "description": "Organic Bananas",
      "productName": "Banana",
      "discountAmount": 10
    }
  ],
  "updatedAt": "2022-08-01T22:40:50Z",
  "customerId": "64c63216-1ca9-11ed-861d-0242ac120002",
  "totalAmount": 30,
  "customerName": "Gates Foundation",
  "invoiceNumber": "001",
  "totalDiscount": 10,
  "totalTaxAmount": 1.8
}

Items

An item is a thing that your company buys, sells, or re-sells, such as products and services. An item is shown as a line on an invoice or other sales form.

Properties



id

string


sku

string


code

string


name

string


type

string


active

boolean


taxCode

string


taxable

boolean


billItem

object


accountId

string


description

string


unitPrice

number


category

string


createdAt

string


updatedAt

string


isBillItem

boolean


invoiceItem

object


accountId

string


description

string


unitPrice

number


invStartDate

string


reorderPoint

string


isInvoiceItem

boolean


quantityOnHand

number

Example

COPY TO CLIPBOARD
{
  "id": "1",
  "code": "CCD",
  "name": "Concrete",
  "type": "Inventory",
  "active": true,
  "billItem": {
    "accountId": "123",
    "unitPrice": 10,
    "description": "Concrete for fountain installation"
  },
  "category": "Landscaping",
  "createdAt": "2019-08-24T14:15:22Z",
  "updatedAt": "2019-08-24T14:15:22Z",
  "isBillItem": true,
  "invoiceItem": {
    "accountId": "321",
    "unitPrice": 15,
    "description": "Concrete for fountain installation"
  },
  "isInvoiceItem": true
}

Journal Entries

A Journal Entry is a transaction in which there are at least one pair of lines, a debit and a credit, called distribution lines.

Properties



id

string


lines

JournalLines [ ]


accountName

string

Account Name


accountNumber

string

Account Number


amount

number

Amount (always positive)


className

string

Class Name


customerName

string

Customer Name


description

string

Description


postingType

string

Debit or Credit


currency

string

Currency code (e.g. USD)


transactionDate

string

Date on which the journal entry was posted to the accounting platform, and had an impact on the general ledger. This may be different from the creation date.

Example

COPY TO CLIPBOARD
{
  "id": "053122 Rev_Rec USD 1",
  "lines": [
    {
      "amount": 31240.5896,
      "className": "",
      "accountName": "Deferred Revenue",
      "description": "202205 Revenue Recognition - Accenture",
      "postingType": "Debit",
      "customerName": "Accenture",
      "accountNumber": "2400"
    },
    {
      "amount": 1001.2453,
      "className": "",
      "accountName": "Recurring",
      "description": "202205 Revenue Recognition - Accenture",
      "postingType": "Credit",
      "customerName": "Accenture",
      "accountNumber": "4100"
    },
    {
      "amount": 30239.3443,
      "className": "",
      "accountName": "Non-Recurring",
      "description": "202205 Revenue Recognition - Accenture",
      "postingType": "Credit",
      "customerName": "Accenture",
      "accountNumber": "4200"
    }
  ],
  "currency": "USD",
  "transactionDate": "5/31/2022"
}

Profit and Loss Detail Report

Profit and loss (P&L) statement is a financial statement that summarizes the revenues, costs, and expenses incurred during a specified period.

Properties



id

string

Unique id of the transaction


Num

string

Account Number


Date

string

Date of transaction


Memo

string

Description of the transaction


Name

string

Name of the associated entity on this transaction. Usually a customer or a vendor


Class

string

Class name on this transaction


Split

string

Account for this transaction


Amount

number

Transaction Amount


Categories

string [ ]

Fully qualified account name / hierarchy of this transaction


Department

string

Typically a division of a subsidiary


CompanyName

string

Name of the company this transaction is for (usually only relevant in multi-company ERPs)


entity_name

string

Name of the entity associated with this transaction


entity_type

string

Type of entity associated with this transaction. Usually "Customer" or "Vendor"


TransactionType

string

Type of transaction: Journal Entry, Invoice, Credit Memo, etc.

Example

COPY TO CLIPBOARD
{
  "id": "2608_1",
  "Num": "62100",
  "Date": "2019-08-24",
  "Memo": "JE per Annie from EY 2020 Audit",
  "Name": "",
  "Class": "",
  "Split": "JE per Annie from EY 2020 Audit",
  "Amount": 7867.1,
  "Categories": [
    "Expense",
    "62044 Allocated Overhead : Rent Payments",
    "62044 Rent Payments"
  ],
  "Department": "People",
  "CompanyName": "ACME, Corp",
  "entity_name": "",
  "entity_type": "",
  "TransactionType": "Journal Entry"
}

Projects

Properties



id

string


name

string


type

string


active

boolean


classId

string


endDate

string


category

string


currency

string


location

string


className

string


createdAt

string


startDate

string


updatedAt

string


customerId

string


hg_deleted

boolean


locationId

string


description

string


customFields

object [ ]


name

string


value

string


customerName

string


departmentId

string


locationName

string


projectNumber

string


departmentName

string

Example

COPY TO CLIPBOARD
{
  "id": "string",
  "name": "string",
  "type": "string",
  "active": true,
  "endDate": "2019-08-24T14:15:22Z",
  "category": "string",
  "currency": "string",
  "className": "string",
  "createdAt": "2019-08-24T14:15:22Z",
  "startDate": "2019-08-24T14:15:22Z",
  "updatedAt": "2019-08-24T14:15:22Z",
  "customerId": "string",
  "locationId": "string",
  "description": "string",
  "customerName": "string",
  "departmentId": "string",
  "locationName": "string",
  "departmentName": "string"
}

Vendors

Properties



id

string


active

boolean


currency

string


addresses

object [ ]


city

string


country

string


id

string


line1

string


line2

string


line3

string


postalCode

string


state

string


createdAt

string


updatedAt

string


hg_deleted

boolean


vendorCode

string


vendorName

string


contactName

string


paymentTerm

string


bankAccounts

object [ ]


accountNumber

string


active

boolean


createdAt

string


currency

string


description

string


hg_deleted

boolean


holderName

string


id

string


name

string


swiftCode

string


type

string


updatedAt

string


emailAddress

string


phoneNumbers

object [ ]


number

string


type

string


vendorNumber

string


taxPayerNumber

string

Example

COPY TO CLIPBOARD
{
  "id": "string",
  "active": true,
  "currency": "string",
  "addresses": [
    {}
  ],
  "createdAt": "2019-08-24T14:15:22Z",
  "updatedAt": "2019-08-24T14:15:22Z",
  "vendorName": "string",
  "contactName": "string",
  "emailAddress": "string",
  "phoneNumbers": [
    {}
  ]
}