{"id":383294,"date":"2026-11-11T18:16:51","date_gmt":"2026-11-11T18:16:51","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/excise-tax-by-token-of-trust\/"},"modified":"2026-11-12T15:45:16","modified_gmt":"2026-11-12T15:45:16","slug":"token-of-trust-taxes","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/token-of-trust-taxes\/","author":15460142,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.1.3","stable_tag":"1.1.3","tested":"7.1.4","requires":"6.5","requires_php":"7.2.5","requires_plugins":null,"header_name":"Excise Tax by Token of Trust","header_author":"Token of Trust","header_description":"Real-time excise tax calculation for WooCommerce, powered by Token of Trust.","last_updated":"2026-11-12 15:45:16","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"https:\/\/tokenoftrust.com","rating":0,"author_block_rating":0,"active_installs":0,"downloads":128,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.1.2":{"tag":"1.1.2","author":"tokenoftrust","date":"2026-11-11 18:16:29","revision":3796860},"1.1.3":{"tag":"1.1.3","author":"tokenoftrust","date":"2026-11-12 15:45:16","revision":3798699}},"upgrade_notice":[],"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3796859,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3796859,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.jpg":{"filename":"banner-1544x500.jpg","revision":3796859,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.jpg":{"filename":"banner-772x250.jpg","revision":3796859,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.1.2","1.1.3"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3796859,"resolution":"1","location":"assets","locale":"","width":2560,"height":1840},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3796859,"resolution":"2","location":"assets","locale":"","width":2560,"height":1840},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3796859,"resolution":"3","location":"assets","locale":"","width":2560,"height":1840},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3796859,"resolution":"4","location":"assets","locale":"","width":2560,"height":2912},"screenshot-5.png":{"filename":"screenshot-5.png","revision":3796859,"resolution":"5","location":"assets","locale":"","width":2560,"height":1840}},"screenshots":{"1":"The setup wizard once your Token of Trust account is connected and excise tax collection is live.","2":"Excise tax attributes on the WooCommerce product editor. The fields change to match the product type, and are synced to your Token of Trust Products Dashboard.","3":"Excise tax calculated in real time at checkout, shown as its own line in the order summary.","4":"The excise tax saved on the order as a fee line.","5":"Excise tax settings: roles treated as wholesalers, product syncing and order syncing."}},"plugin_section":[],"plugin_tags":[14361,292076,60212,286],"plugin_category":[45],"plugin_contributors":[142823],"plugin_business_model":[],"class_list":["post-383294","plugin","type-plugin","status-publish","hentry","plugin_tags-compliance","plugin_tags-excise-tax","plugin_tags-tax-calculation","plugin_tags-woocommerce","plugin_category-ecommerce","plugin_contributors-tokenoftrust","plugin_committers-tokenoftrust"],"banners":{"banner":"https:\/\/ps.w.org\/token-of-trust-taxes\/assets\/banner-772x250.jpg?rev=3796859","banner_2x":"https:\/\/ps.w.org\/token-of-trust-taxes\/assets\/banner-1544x500.jpg?rev=3796859","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/token-of-trust-taxes\/assets\/icon-128x128.png?rev=3796859","icon_2x":"https:\/\/ps.w.org\/token-of-trust-taxes\/assets\/icon-256x256.png?rev=3796859","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/token-of-trust-taxes\/assets\/screenshot-1.png?rev=3796859","caption":"The setup wizard once your Token of Trust account is connected and excise tax collection is live."},{"src":"https:\/\/ps.w.org\/token-of-trust-taxes\/assets\/screenshot-2.png?rev=3796859","caption":"Excise tax attributes on the WooCommerce product editor. The fields change to match the product type, and are synced to your Token of Trust Products Dashboard."},{"src":"https:\/\/ps.w.org\/token-of-trust-taxes\/assets\/screenshot-3.png?rev=3796859","caption":"Excise tax calculated in real time at checkout, shown as its own line in the order summary."},{"src":"https:\/\/ps.w.org\/token-of-trust-taxes\/assets\/screenshot-4.png?rev=3796859","caption":"The excise tax saved on the order as a fee line."},{"src":"https:\/\/ps.w.org\/token-of-trust-taxes\/assets\/screenshot-5.png?rev=3796859","caption":"Excise tax settings: roles treated as wholesalers, product syncing and order syncing."}],"raw_content":"<!--section=description-->\n<p>This plugin calculates excise taxes for WooCommerce stores selling regulated goods\nsuch as vape, nicotine pouches and hemp products.<\/p>\n\n<ul>\n<li><strong>Real-time calculation<\/strong> \u2013 Excise taxes are calculated at checkout, for both the legacy and block-based WooCommerce checkout.<\/li>\n<li><strong>Product syncing<\/strong> \u2013 Product attributes needed for excise tax calculation are synced to the Token of Trust Excise Tax Products Dashboard.<\/li>\n<li><strong>Order syncing<\/strong> \u2013 Orders are reported to the Token of Trust Excise Tax Calculator as they are placed, paid, fulfilled and refunded, for reconciliation and reporting.<\/li>\n<li><strong>Wholesale and retail<\/strong> \u2013 Configure which WordPress roles are treated as wholesalers so orders are taxed correctly.<\/li>\n<\/ul>\n\n<p>This plugin can run on its own, or side-by-side with the main Token of Trust plugin.\nWhen the main Token of Trust plugin is active, it provides the tax functionality and\nthis plugin stays out of the way.<\/p>\n\n<p>You need an active Token of Trust account to use this plugin.<\/p>\n\n<h3>External services<\/h3>\n\n<p>This plugin is a client for Token of Trust, a paid excise tax service. Excise\ntax rates depend on product classification and on state, county and city rules\nthat change continually, so the calculation is performed by Token of Trust\nrather than in your WordPress install. The plugin cannot calculate excise tax on\nits own, and no feature of the plugin is locked behind a payment check.<\/p>\n\n<p>Nothing is sent anywhere until you enter a Token of Trust license key or choose\nto create an account in the setup wizard. On a fresh install this plugin\ncontacts no external service at all.<\/p>\n\n<h4>Token of Trust (tokenoftrust.com)<\/h4>\n\n<p>The plugin talks to two Token of Trust hosts: <code>app.tokenoftrust.com<\/code> for your\nlive account and <code>sandbox.tokenoftrust.com<\/code> for test mode. It contacts them as\nfollows.<\/p>\n\n<ul>\n<li><strong>Creating an account<\/strong> - if you create an account through the setup wizard,\nthe plugin sends your store's domain, your site title, the name and email\naddress of the WordPress administrator completing the form, and the plugin's\nversion, and then the confirmation code emailed to that address.<\/li>\n<li><strong>Licensing<\/strong> - when your license key is saved or refreshed, the plugin sends\nthe license key and your store's domain to both hosts to confirm the account\nand retrieve the live and test API credentials used by the calls below.<\/li>\n<li><strong>Calculating excise tax<\/strong> - at cart and checkout, and again after payment,\nthe plugin sends the shipping or pickup address for the order, and for each\nline item the quantity, unit price, discounted price, product ID and SKU, plus\nwhether the order is wholesale or retail and an internal reference for the\norder, which can include the customer's WordPress user ID. It receives back\nthe tax amount and the label shown on the order.<\/li>\n<li><strong>Recording orders<\/strong> - order syncing is on by default, and stays on while\nToken of Trust is collecting excise tax for your account. While it is on, the\nplugin sends a record of each order as it is placed, paid, fulfilled or\nrefunded: the customer's first and last name, the shipping address, the line\nitems above with shipped and refunded quantities, the tax collected, and the\norder date. This is what the Token of Trust Excise Tax Calculator reconciles\nagainst. You can also send the orders from a date range yourself.<\/li>\n<li><strong>Syncing products<\/strong> - when product syncing is enabled, the plugin sends the\nexcise tax attributes you enter on each product, along with its name and SKU,\nand when you open a product it fetches the attributes stored for its SKUs.<\/li>\n<li><strong>Receiving updates<\/strong> - Token of Trust can call your site at\n  \/token-of-trust\/webhooks to tell it that your account settings changed, to\nask for the orders from a date range to be sent again (only while order\nsyncing is on), or to turn on debug logging for a set number of hours. Debug\nlogs are kept in your WordPress database and shown on the plugin's Logs\nscreen. These requests are rejected unless they carry a valid signature.<\/li>\n<\/ul>\n\n<p>Token of Trust: https:\/\/tokenoftrust.com\/\nTerms of service: https:\/\/tokenoftrust.com\/legal\/end-user-terms\/\nPrivacy policy: https:\/\/tokenoftrust.com\/legal\/privacy-policy\/<\/p>\n\n<h3>Source code<\/h3>\n\n<p>The setup wizard is a React application. The plugin loads the compiled bundle\nfrom <code>Admin\/SetupWizard\/build\/<\/code>, and its full, human-readable source ships with\nthe plugin in the <code>source\/<\/code> directory:<\/p>\n\n<ul>\n<li><code>source\/tax-wizard\/<\/code> - the Excise Tax setup wizard.<\/li>\n<li><code>source\/wizard-ui\/<\/code> - shared components the wizard is built from.<\/li>\n<\/ul>\n\n<p>To rebuild the bundle, install Node.js 16 or later, then run\n    npm install &amp;&amp; npm run build inside <code>source\/tax-wizard\/<\/code>. The build writes\nto <code>Admin\/SetupWizard\/build\/<\/code>, replacing the shipped files.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the plugin folder to <code>\/wp-content\/plugins\/<\/code>, or install it through the WordPress \"Plugins\" screen.<\/li>\n<li>Activate the plugin. You are taken to the Token of Trust setup screen, which is also under the \"Token of Trust\" menu.<\/li>\n<li>Create a Token of Trust account there, or enter the license key you were given.<\/li>\n<li>Choose your excise tax settings: the roles treated as wholesalers, and whether products and orders are synced.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"do%20i%20need%20the%20main%20token%20of%20trust%20plugin%20as%20well%3F\"><h3>Do I need the main Token of Trust plugin as well?<\/h3><\/dt>\n<dd><p>No. This plugin is self-contained and handles excise tax calculation on its own. If the\nmain Token of Trust plugin is also active, it takes over the tax functionality and this\nplugin defers to it, so the two can safely run side-by-side.<\/p><\/dd>\n<dt id=\"does%20this%20work%20with%20the%20woocommerce%20block%20checkout%3F\"><h3>Does this work with the WooCommerce block checkout?<\/h3><\/dt>\n<dd><p>Yes. Excise tax calculation is supported for both the legacy checkout and the\nblock-based checkout.<\/p><\/dd>\n<dt id=\"where%20do%20i%20get%20support%3F\"><h3>Where do I get support?<\/h3><\/dt>\n<dd><p>Contact us at <a href=\"https:\/\/tokenoftrust.com\/contact\/\">https:\/\/tokenoftrust.com\/contact\/<\/a> or\nemail support@tokenoftrust.com.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.1.3<\/h4>\n\n<ul>\n<li>Improved our release pipeline so the Token of Trust plugins can be published together.<\/li>\n<\/ul>\n\n<h4>1.1.2<\/h4>\n\n<ul>\n<li>Internal data names now carry a longer prefix, as the WordPress.org plugin directory requires. Your settings, licence and queued order syncs are carried over automatically on update; nothing needs to be re-entered.<\/li>\n<li>The setup screen no longer waits indefinitely when your licence cannot be confirmed. It now says the licence is not working and offers to check again.<\/li>\n<li>The account step is no longer ticked while the licence is being refused, so the checklist shows what is actually set up.<\/li>\n<li>A store keeps working from its last confirmed licence when Token of Trust cannot be reached, instead of behaving as though no licence was entered.<\/li>\n<\/ul>\n\n<h4>1.1.1<\/h4>\n\n<ul>\n<li>The excise tax settings page has a new address. Old links redirect to it, so bookmarks keep working.<\/li>\n<li>The role selectors on that page now use WooCommerce's own enhanced dropdown, so the plugin no longer carries its own copy of one.<\/li>\n<\/ul>\n\n<h4>1.1.0<\/h4>\n\n<ul>\n<li>Added Nicotine Pouch and Hemp product types to excise tax product sync.<\/li>\n<li>Product fields now change to match the selected product type.<\/li>\n<li>Renamed \"Exempt from Vape Taxes\" to \"Exempt from Excise Taxes\"; it now applies to all product types.<\/li>\n<li>Admin scripts and styles are now versioned, so an upgrade no longer serves stale cached assets.<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release of the standalone excise tax plugin, which can operate side-by-side with the main Token of Trust plugin.<\/li>\n<\/ul>","raw_excerpt":"Real-time excise tax calculation for WooCommerce, powered by Token of Trust.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/383294","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=383294"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/tokenoftrust"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=383294"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=383294"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=383294"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=383294"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=383294"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=383294"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}