AccountsIQ API

Sales Invoicing Integrations

Any business, especially those with high volumes of sales, can benefit from integrating their sales invoicing process. Schedule transactions to flow automatically from your chosen CRM into AIQ, without your sales team ever having to leave their system.

Entering data in one place, not only prevents time wasting double-entry, it also reduces the risk of data records not being in agreement. In addition, regular syncing schedules can ensure you are always working with the most current data.

Our Integration Partners

Sales invoicing is the most popular way our integrators use our API. Sales invoicing integrations are often also part of a complete pay-to-purchase routine that includes handling receipts, allocations, and payments.

The following are some of our partner integrators who use our API for sales invoicing:

In addition, our development team offer managed integrations. If you would like to explore this customised option further, please get in touch at sales@accountsIQ.com or support@accountsIQ.com.

Integration First Steps

Prior to creating invoices, complete the following where necessary.

Create Customers

Before you can proceed with invoicing customers, they must be present in the system. You can use the following to add and update customer records.

  • GetNewCustomerFromDefaults: This lets you create a new customer using the defaults that already exist in the system. However, the customer is not yet saved.
  • UpdateCustomer: Use this to save the customer you just created or updated.

Check Customer Credit

It is important to check if your customers have sufficient credit to decide if you want to sell to them.

  • GetCustomersStatement: This lets you see the customer’s credit record in your CRM. View payment history, outstanding payments, balances, and any aging. You can use this to decide whether keep this customer.
  • GetAccountBalanceInformation: Use this if you just want to keep credit limits in sync and don’t need the extra information that GetCustomerStatement provides.

Check if an Invoice already exists

If you try to create an invoice that already exists you could get an error.

It is best practice to use external references where possible as they track transactions and help avoid duplication. An external reference can be named the same as in the other system, meaning that the transaction can be tracked easily in both systems.

Standard Invoicing

Once you have completed the preliminaries, you are now ready to invoice your customers.

Best Practice: Use Transaction IDs

Use endpoints that return transaction IDs where possible. Recording the transaction ID in the third-party system creates another level of traceability in your CRM, along with the corresponding external reference. These can be matched for validation.

Once the transaction ID is recorded in the third-party system, you cannot modify that invoice, or the systems will be out of sync.

Batch Invoices

Batch invoices go straight to the transaction tables rather than going to the invoice table first, making them slightly faster than item invoices.

AIQ Help:

Batch invoicing is recommended if you follow VAT calculations from another system, as it avoids the slight rounding that can occur with item invoices.

Item Invoices

Use item invoicing if you need extra header details, such as order numbers, delivery dates, line notes, or item codes. Item codes can be useful as they let you store defaults against them.

AIQ Help:

Customised Invoices and Statements

With the API, you can attach a detailed invoice breakdown for the customer in CSV or Excel format. This is useful if you are invoicing a customer for multiple jobs but still want a summarised invoice. You can then send on the invoice and attachment to the customer.

  • AttachDocument: When you create an invoice, use this to attach an Excel or CSV file.
  • GetInvoicePDFByTransactionID: This lets you retrieve a PDF of the invoice. If you have an emailing facility in your CRM, you could opt to email it via that option.

Back-to-Back Invoicing

Back-to-back invoicing refers to a situation where a purchase and sales invoice are raised at the same time.

For example, an employment agency could raise:

  • a purchase order to pay a contract for labour.
  • a sales invoice with a percentage markup to bill the customer.

Use BI Codes

If your invoicing requires complex transactions, BI codes (called Departments in the API) can help manage this process. Setting up and managing complex BI structures via the API is much more manageable than doing it manually.

AIQ Help:

BI Codes can have up to six BI dimensions, each with as many elements as needed. They can be based on data from the customer, item code, a third-party system, or a combination.

BI Codes are linked to transaction lines which in turn link them to dimensions and analysis codes via the BI Setup. This underpins all advanced reporting in the system.

If a third-party system doesn’t have a GL code to post from, use non-stock items to set default BI and GL codes, even if you don’t use them on the invoice.

Deferred Revenue

Deferred revenue refers to when a company bills a customer in full but wants to record the revenue over multiple periods. When the company receives the revenue in one go, they can split it into twelve parts to account for it being earned over the course of the year.

AIQ Help:

Use a Deferred Revenue Journal

Deferred revenue can be accounted for with a deferred revenue journal.

First, create a standard invoice for the full amount with today’s date (see Standard Invoicing, above). Then post it to a reserved or deferred revenue journal and create twelve journal entries. To account for the income over the year, take one journal entry back each month.

Intercompany transactions

Intercompany transactions cannot be created automatically via the API. You must create them in two separate steps.

AIQ Help:

First, get a list of valid intercompany connections so you can replicate the relevant one. Then create a sales invoice in one entity and a corresponding purchase invoice in the other entity.