Introducing New BigCommerce Tax Provider API
Are you a technical professional? Do you have experience in or knowledge of building software for the calculation and handling of taxes? Do you know what nexus is?
If so, you’re in luck, as the Tax Provider API was designed with you in mind. You can now build and integrate tax solutions to BigCommerce. Whether you represent a tax SaaS platform or an enterprise business with an in-house, custom tax solution, you can seamlessly integrate into BigCommerce.
What Is the Tax Provider API?
TL;DR:
The BigCommerce Tax Provider API is a set of endpoints that allows 3rd-party tax providers to return B2C sales tax quotes to a BigCommerce storefront, control panel, or via API, as well as receive order data for tax reconciliation purposes.
The Three Core Components of the Tax Provider API
The following are the core features of the Tax Provider API. Each section will overview that core features functionality.
1. Connect.
After a tax provider’s application is installed on a merchant’s store, the tax service is required to set up authentication credentials. Using the connection endpoints you can get, set, and delete these credentials. The credentials authenticate every request from BigCommerce to the tax provider.
2. Estimate.
The estimate endpoint is used to submit a tax quote request and retrieve a tax estimate back from the enabled tax provider.
3. Reconcile.
Document submission endpoints are used to ensure the tax provider has the latest order data for tax reporting purposes. This way tax applications can reconcile order and tax data on behalf of a merchant.
Getting Started With Tax Provider API
To utilize these APIs you should have a deep understanding of building tax integrations. These APIs are designed for development teams that have tax logic and engines they want to be integrated into BigCommerce via a single-click app. These APIs allow tax applications to access the BigCommerce storefront, control panel, and purchase data.
How To Use The Endpoints, Step By Step
First, you will need to create a tax application that enables you to promote your solution in the BigCommerce apps marketplace, ask for merchant authorization of API scopes during app install, as well as enable configuration of tax provider settings via an iFrame in the BigCommerce control panel, enabling merchants to interact with your program. To do this, the recommended approach is to create a single-click application that is discoverable via the BigCommerce Marketplace.
Second, you will do a GET request to the connection endpoint. The data returned is used to access the connection status of the specified tax provider in the context of a store. You will need read permission in the Information and Settings scope for the store. You can set the scopes requested by your application during installation using the developer tools.
Third, you will do a PUT request to the connection endpoint. The data sent is used to set the authentication credentials for a tax provider application. These basic credentials authenticate each API request from the tax application to the merchant's store. This operation will be logged in the Store Logs under Staff Actions area of the control panel. This endpoint requires write permissions on the Information and Settings scope.
Fourth, the connection endpoint has a DELETE HTTP method. This endpoint is used to remove any previously set authentication connection credentials for the specified application provider. If the tax provider is the active tax provider on the store, the store’s active tax provider will be reset to BigCommerce Manual Tax. You should have your application call this endpoint during a single-click app uninstall. This operation will be logged in the Store Logs under Staff Actions area of the control panel. This endpoint requires write permissions on the Information and Settings scope.
Fifth, to provide tax quotes BigCommerce will do a POST request to the estimate endpoint that you surface in your application. BigCommerce will send you the information you need to provide a tax quote. You will return to the BigCommerce store, the tax estimate, based on the information the store sent to you.
There are several events that trigger BigCommerce to POST to the estimate endpoint. These events include:
- The “Estimate Shipping & Tax” on the cart page.
- Specifying a valid shipping address during checkout.
- Selecting a shipping method during checkout.
- Specifying a valid billing address during checkout.
- Performing a line-item refund via UI or API.
- Using the Test Connection functionality when users navigate to Store Setup > Tax > {Tax Provider} in the BigCommerce control panel.
Sixth, upon the order being confirmed and paid, BigCommerce will POST to the commit endpoint that you surface in your application. This ensures that the quote persists.
Seventh, in the event that an order requires an update due to changes, BigCommerce will POST to your adjust endpoint that you expose. This POST is triggered by events like partial refunds, full refunds, returns, and order edits.
Last, but not least, when an order is canceled BigCommerce will send a POST to an HTTP method you expose called void. This should invalidate any quotes for the order provided.
🎉 That’s it! These are the eight endpoints that map out the core functionality.
Want to build a Tax App and integrate with Tax Provider API?
Now that you know what it takes, are you ready to become a Tax App Provider? To get started, join the BigCommerce Partner Program and set up your application. You can use the article, How to Build Your First BigCommerce App to learn everything about creating an app for the BigCommerce Marketplace. Then, utilizing this article and the Tax Provider API Documentation and Reference, start building out your integration.