Skip to main content

Sync for Expenses FAQs

Frequently asked questions about Sync for Expenses

Where can I see a roadmap for integration and feature support for Sync for Expenses?

Codat does not currently publish a public product roadmap. If you would like to learn more about upcoming product releases, speak to your Codat contact.

How can I migrate our in-house integration to Codat?

Our token migration process allows you to seamlessly migrate your customers' connections without them needing to reconnect. We offer self-service and managed migrations, so you can choose the option that suits your use case best.

Why should I move our existing accounting integrations to Sync for Expenses?

Moving your existing integrations to Sync for Expenses lets you leverage the following benefits:

  1. Up-to-date mapping options
  2. Every company has its own preference for representing an individual expense in its accounting software. With Codat, you can retrieve the account mapping and set up webhook notifications to notify you when your customer creates a new expense account or tracking category. This keeps the list of tracking categories, accounts, and tax rates used to map the expense up to date.

  3. Standardization of expense data
  4. Sync for Expenses standardizes transaction data using an opinionated model that is based on feedback from our customers and industry expertise. This means you don’t need to make decisions on how to handle validation differences between accounting platforms. Simply send transactions based on what they represent and let Codat handle the mapping to their best representation in the accounting software.

  5. Multiple transaction support
  6. Sync for Expenses handles the pushing of multiple transactions in an array to make your interactions more efficient. You can retrieve the status of these transactions from the Get sync transaction endpoint.

  7. Enhanced developer experience
  8. Our detailed documentation aimed at developers and a variety of client libraries in multiple languages mean you can get up and running with Sync for Expenses quickly.

  9. Adjacency to Codat’s product range
  10. You can use Sync for Expenses alongside all Codat products. For example, if you are issuing credit cards, Codat's Lending API product would allow you to determine the risk associated with the company that has the same companyId and API key.

    Likewise, you can use our billPayments data type to retrieve a list of bills from your customer's accounting software and enable them to pay these and reconcile their payments.

What can we reuse from our existing Codat build for Sync for Expenses?

You can reuse the chart of accounts, tracking categories, and tax rates settings. However, we recommend using the Mapping options endpoint for expenses because of the transaction type support.

Authentication, company creation and connection linking journeys can be reused between builds. This is because the companies can use the same Id between Codat products.

How do I reconnect a company?

If a user disconnects, you can use a webhook and redirect your user to the linkUrl of the accounting connection to re-authenticate. If a company changes accounting platforms, it is better to remove the accounting connection completely and create a new one.

Where can I find logo files for the accounting platforms supported by Sync for Expenses?

If you want to use the accounting platform logos in your user interface, you can get these via our Get branding endpoint.

Can I use the Sandbox account to test a sync when implementing Sync for Expenses?

Sync for Expenses does not support Sandbox as a destination platform to sync transactions because it has been designed specifically for pulling, not pushing, data. We recommend signing up for a free QuickBooks or Xero developer account to test syncs, which will give you sandbox access as well.

For more information on how to set up your accounting platform integration, take a look at the integration-specific documentation.

How can I resync a failed transaction when I resolve the issue with the transaction?

Once you resolve the issue with the transaction, you can create a new dataset for that transaction Id. You can't resync the transaction with the same dataset because Codat checks the transaction metadata to avoid duplicates. If a transaction Id has a status of completed, it is not synced again.

The following error will appear if a transaction has been previously synced: error: One or more transactions have previously been processed: {Transaction Id}.

How can I detect if an expense account has been deactivated?

You can create a webhook consumer in the Codat portal to inform you when the chart of accounts has been changed. By querying the Chart of Accounts data type and using the isDeleted flag, you can identify which accounts have been deleted before a sync occurs. For more information, please refer to the documentation on creating and updating webhook consumers.

Am I able to update an attachment when I have already synced the expense transaction?

Codat pushes attachments synchronously to the expense transactions. To update any of these documents, you need to remove the attachment directly from the accounting platform. Next, you need to upload the correct document either directly to the accounting platform or using Sync for Expenses. When using Sync for Expenses, you benefit from its support for multiple attachments.

How do you handle transactions in foreign currency?

Sync for Expenses validates each expense transaction involving foreign currency. We ensure that the combination of participating currencies will be accepted by the target accounting platform as a valid expense. You can read more about expenses in foreign currency and platform support for different transaction types.

What is the difference between effectiveTaxRate and totalTaxRate?

If a transaction has multiple tax components, each component may be calculated based on the original amount separately, and then added together.

Alternatively, primary tax can be calculated on the item cost, and another tax component is added on top of that amount.This is known as compounding. In this case, the effective tax rate is the rate that results in the total amount of tax with compounding when applied to the original amount.

The totalTaxRate is the total, not compounded, sum of the components of a tax rate. You can read more about this in our API documentation covering tax rates.

Is the transaction Id unique to each connected company?

Each transaction Id is unique to a client's company but they aren't unique across connections. In Codat, it's only possible to have a single accounting connection per company. If a company wants to swap their accounting software or would like to link to a different entity, we recommend creating a new company.

Was this page useful?