Introduction

This comprehensive guide is designed to help Expense Management companies automate their customers’ expense reconciliation with their respective accounting systems using Integration Labs’ Unified Accounting API.


Need for Accounting Integrations

Automation transforms how your expense management product handles your business customers’ expenses by simplifying the expense collection, verification, and approval process. The challenge arises when you need to connect to different customers’ accounting platforms to automate expense reconciliation.

Accounting integrations bridge the data gap between your product and your customers’ accounting systems. While these integrations are crucial, building and maintaining multiple integrations in-house is time-consuming, expensive, and resource-intensive.


Benefits of Integration Labs’ Unified Accounting API

Integration Labs’ Unified API offers a more efficient approach by allowing you to leverage one API to integrate with multiple accounting platforms. The benefits include:

  1. Global Connectivity: Simplifies integration with multiple accounting platforms, ensuring maximum coverage for current and future customers.
  2. Accelerated Go-to-Market: Integrating with one Unified API significantly cuts down the time required to build, test, and launch an integrated product.
  3. Cost Savings: Lowers the overall cost of developing and maintaining integrations, allowing resources to focus on core product development.
  4. Maintenance Ease: Offloads integration maintenance responsibilities, allowing your team to focus on core product enhancement.

Partnering with Integration Labs can accelerate your time to market and enhance your product’s value to your customers, thereby increasing customer satisfaction, product appeal, and revenue potential.


This workflow can be used for the following types of accounts:

  • Pre-Paid Cards
  • Credit Cards
  • Debit Cards

1

Connect with your customers' accounting platform (One-Time Activity)

Integration Labs provides two convenient options to connect with your customers’ accounting platform:

Use Integration Labs’ Connect Link, a convenient and secure URL, or Embed Integration Labs’ Connect SDK into your application The Invite Link requires no code to use, making it suitable to get started without a developer. You can customize and white-label this onboarding process with Integration Labs’ Connect SDK, allowing authentication to occur natively in your product.

Either way, your customers will be guided through a simple authorization flow to connect their respective accounting platforms to your product.

Use our Dashboard or APIs to connect a customer’s accounting platform a. Use the POST/invite-link. b. Name your customers’ company. A unique company_id will be generated once your customer completes the authentication flow. This company_id will be used to read and write data to their accounting platform.


2

Link or Create your customer's credit card or bank account (One-Time Activity)

Every expense transaction must have an Account as a source of funds that is credited.

This is a Bank Account with a category = ‘Bank’

  1. Use GET/bank_accounts to get the Bank Account ID if the account already exists in the customer’s accounting platform, or
  2. Use POST/bank_accounts to create a bank account and get the Bank Account ID.

3

Create Expenses (Recurring)

Generally, use the POST/expenses to create expenses.

If Expenses are unavailable for a particular accounting platform like Xero and Tally, use the POST/bills or POST/journal_entries.

Essential points to note:

  1. Credit Account: The account from which funds are drawn. Refer to Step 2 for more information.
  2. Vendor: The employee linked to the expense. Use the GET/contacts and POST/contacts and filter on type = vendor. A Contact ID is required to post an Expense or Bill. If the employee doesn’t exist on the accounting platform, create a new vendor using the POST/contacts.
  3. Expense Account or Debited Account: You can push multiple line items (usually just 1) when pushing an expense. Each line item will have an expense account associated (category = expense). Use the GET/accounts to fetch all accounts, and filter the account type by category = expense through Postman or GraphQL.

4

Upload Documents (Recurring)

Use the POST/documents to upload and attach files from a customer’s employee to an expense, invoice, or bill.


5

Record a Credit Card Repayment (Recurring)

Use the POST/journal_entries to reflect a credit card repayment.

  1. Credited Account: The bank account used to make the repayment.
  2. Contact: In this case, it will be the expense management company (your company).
  3. Debited Account: The credit card liability account.

6

Process Bank Account Withdrawals or Top Ups for Pre-Paid Cards (Recurring)

Use POST/journal_entries to reflect withdrawals and top-ups for a bank account/prepaid card.

  1. Credited Account: The bank account used to make the top-up.
  2. Debited Account: The account being topped up (pre-paid asset or bank account).

7

Process Employee Reimbursement Requests and Payments (Recurring)

Employee reimbursement requests and reimbursement payments are reflected in the accounting system as Bills and Bill Payments.

  1. To log a reimbursement request, use POST/bills to create a bill containing the reimbursement amount.
    • Use POST/contacts (filter on type = ‘vendor’) to create a specific vendor per employee you link to the Bill.
  2. Once the reimbursement is approved and the payment is made, use the POST/bill_payments to log a payment against the requested reimbursement.

Conclusion

This detailed guide outlines how to manage the most common actions of an expense management product with Integration Labs’ accounting integrations. If you have more questions or would like to build an automated expense management product with Integration Labs’ Unified APIs, contact Integration Labs’ integration experts for assistance in getting started.