Rankd Tax Exemption Certificates for WooCommerce provides a complete, audit-ready tax exemption workflow for WooCommerce stores. Compatibility notice: This plugin cannot guarantee compatibility with plugins that write directly to the WooCommerce customer session object rather than using the standard
PricingFree downloadThe WordPress.org download is free. Pro versions, add-ons or external services may cost extra.
CompatibilityRequires WordPress 6.0 and PHP 7.4.
SourceWordPress plugins · Oct 18, 2026
01 / Source details
About this tool.
Rankd Tax Exemption Certificates for WooCommerce provides a complete, audit-ready tax exemption workflow for WooCommerce stores.
Compatibility notice: This plugin cannot guarantee compatibility with plugins that write directly to the WooCommerce customer session object rather than using the standard woocommerce_customer_is_vat_exempt filter. If your store uses such a plugin, this plugin may not function correctly for affected customers. See the Plugin Compatibility section below for details and resolution options.
FREE FEATURES:
Role-based exemption — mark whole user roles (e.g. wholesale, non-profit) tax exempt from one setting (trust-based; Pro adds certificate-backed compliance for role members)
Per-user override on the user profile: Always exempt, Never exempt (hard block), or follow role rules
Tax Exemption status column and filter on the Users list screen
Configurable admin access — choose which roles may manage exemption data
Uninstalling never deletes your data unless you explicitly opt in via a setting
Optional internal admin note field (not visible to customer)
WooCommerce session-level exemption — tax removed at cart and checkout automatically
HPOS (High-Performance Order Storage) compatible
Read-only status notice on My Account → Account Details
Settings tab under WooCommerce → Settings → Tax Exempt Certs
User Switching plugin compatibility
PDF invoice integration (WooCommerce PDF Invoices & Packing Slips, WP Overnight)
Developer filter hooks for external system integration
Admin manual certificate entry with Select2 AJAX user search
Enforced expiry — exemption auto-disables on expiry date via WP-Cron
Expired certificate renewal UX — prefilled resubmission form
Renewal grace period — keep exempting while a renewal is under review (configurable)
Past expiry date validation (client-side and server-side)
Configurable expiry warning buffer (default: 30 days, max 90)
Full email suite (WooCommerce template styled): Customer: submission received, approved, rejected, expiry warning, expired
Customer: certificate revoked (optional — disabled by default, enable in WooCommerce → Settings → Emails)
Admin: new submission notification
Automated document retention — optionally purge aged certificate files X years after they become inactive, while permanently preserving the certificate record and audit trail Dashboard widget — pending count, expiring soon alerts, status breakdown, export buttons CSV exports — expiry report, active accounts, full audit log Timestamped audit log per user (exportable per-user or full log)
Requirements
WordPress 6.0 or higher
PHP 7.4 or higher
WooCommerce 7.0 or higher (must be installed and active)
WooCommerce is the only required dependency.
Usage
Marking a customer as tax exempt (Free)
01Go to Users → All Users
02Click Edit on any user
03Scroll to the Tax Exemption section
04Check the Tax Exempt checkbox
05Optionally add an internal note
06Click Update User
Tax is removed from that customer’s cart and checkout on their next page load.
Certificate submission workflow (Pro)
Customer flow:
07Customer logs in and goes to My Account → Tax Exemption
08Completes the form and uploads their certificate (PDF or JPG)
09Receives confirmation email
10Status shows as Pending until reviewed
Admin flow:
11Admin receives notification email
12Goes to WooCommerce → Tax Exempt Certs
13Reviews the pending submission, views the certificate document
14Approves (verifying the expiry date) or rejects (providing a reason)
15Customer receives approval or rejection email
Expiry:
WP-Cron runs nightly and auto-expires certificates past their expiry date
Warning emails fire X days before expiry (configurable, default 30 days)
Expired customers see a prefilled resubmission form in My Account
If a renewal is pending review when the old certificate expires, exemption continues for the configured grace period
Role compliance (Pro):
Members of Tax-Exempt Roles are NOT exempted until there is evidence: an approved certificate covering the order’s jurisdiction, or your recorded override
The Role Exempt tab of the review queue lists role members needing attention, with per-row and bulk actions: Add Certificate, Email for Certificate, or Override (“accept the risk”, scoped to all or specific jurisdictions — the decision is written to the audit log)
A certificate request email points the customer to the My Account submission form
If the certificate backing a member later expires or is revoked, they automatically reappear for review
Settings
WooCommerce → Settings → Tax Exempt Certs:
Tax-Exempt Roles: Users holding any of these roles are automatically tax exempt (free version). In Pro, role members are exempted only once there is evidence on file — an approved certificate covering the order’s jurisdiction, or an override you record — so a role assignment alone never silently removes tax. Individual users can be excluded via the Never Exempt override on their profile. Default: none.
Pro adds:
Expiry Warning (days): How many days before expiry to send the renewal reminder and allow early renewal submissions (1–90).
Admin Notification Email: Where to send new submission alerts.
Customer Contact Email: Address shown to customers when their exemption is revoked.
Renewal Grace Period (days): How long to keep exempting after expiry while a renewal is pending review (0 disables).
Wholesale & Third-Party Compatibility
This plugin includes a developer filter for external systems to opt individual users out of its management entirely.
Example — wholesale plugin integration:
add_filter( 'rankd_tx_skip_user', function( $skip, $user_id ) { // Tell this plugin to ignore users managed by your wholesale system. if ( has_wholesale_exemption( $user_id ) ) return true; return $skip; }, 10, 2 );
The plugin also supports additional exemption sources via:
Exemption is applied if ANY source returns active. This plugin never removes an exemption granted by another system.
Data Storage
USER META (wp_usermeta):
_rankd_tx_is_exempt — String. Per-user override: always , never , or absent (follow role rules). Legacy 1 values from the pre-1.5.0 checkbox are read as always .
_rankd_tx_exempt_note — String. Admin note. Never shown to customer.
CUSTOM TABLES (Pro):
{prefix}rankd_tx_certificates — One row per certificate submission.
{prefix}rankd_tx_audit_log — One row per status change event.
UPLOADS (Pro):
wp-content/uploads/rankd-tax-exempt-certs/
Protected by .htaccess (Apache/LiteSpeed) plus an index.php fallback. Files are served only through a permission-checked PHP download handler. Nginx requires a one-time server rule — see Server Compatibility below.
Invoice Plugin Integration
Tax exemption details are automatically added to PDF invoices for:
WooCommerce PDF Invoices & Packing Slips (WP Overnight) — fires after order details table on invoices, proformas, and credit notes
WooCommerce PDF Invoices (WP Overnight older plugin) — fires after order table
WooCommerce order confirmation and My Account receipt pages — visible to the ordering customer and store managers only
The notice includes: Organization name, Certificate number, Jurisdiction, Certificate expiry date. It always reflects the certificate that covered the order at purchase time, even if the customer’s status changes later.
Developer filters:
rankd_tx_show_invoice_notice — return false to suppress entirely
rankd_tx_invoice_document_types — array of document types to show on (default: invoice, proforma, credit-note)
rankd_tx_invoice_notice_html — replace the full notice HTML (args: $html, $order)
Plugin Compatibility & Tax Exemption Conflicts
Important: This plugin cannot guarantee compatibility with plugins that write directly to the WooCommerce customer session object rather than using the woocommerce_customer_is_vat_exempt filter. These plugins bypass the filter system entirely and no priority adjustment will resolve the conflict.
How this plugin handles conflicts
WooCommerce determines tax exemption via a single boolean flag on the customer session. This plugin hooks into this system at filter priority 20, which means:
Any plugin setting exemption to true at priority 10 or lower will be respected — this plugin will not override it
Any plugin setting exemption to false at priority 10 or lower may prevent this plugin from applying its own exemption, even if the customer is marked exempt here
This is by design. This plugin deliberately avoids overriding other systems that have already made an exemption decision.
Developer integration — excluding users
If you are building or maintaining a plugin that manages tax exemption for certain users, you can tell this plugin to step aside entirely for those users using the rankd_tx_skip_user filter:
The Tax Exemption Override does not appear on their WordPress user profile
This plugin does not fire any checkout exemption logic for them
Their tax status is entirely controlled by your plugin
Recommended approach for site owners
16Use rankd_tx_skip_user to exclud
See it in action
Screenshots & previews.
The Tax Exemption section on a user's profile screen (Users → Edit User) — the Always/Never/follow-role-rules override and internal note field. Free.The Tax Exemption status column and filter dropdown on the Users list screen. Free.The plugin's settings tab at WooCommerce → Settings → Tax Exempt Certs — Tax-Exempt Roles and Who Can Manage Exemptions. Free.The customer-facing Tax Exemption tab under My Account, with the certificate submission form. Pro.The admin Certificate Review Queue — pending, approved, and rejected certificates with Approve/Reject/Revoke actions. Pro.The Role Exempt tab — role members who haven't yet provided certificate evidence, with per-row and bulk actions. Pro.The dashboard widget showing pending certificates and expiring-soon alerts. Pro.
02 / Source details
Getting started.
01Upload the rankd-tax-exemption-certificates-for-woocommerce folder to /wp-content/plugins/
02Activate via Plugins → Installed Plugins
03Optionally mark whole roles tax exempt at WooCommerce → Settings → Tax Exempt Certs
04For Pro: purchase a license and activate it from the license activation link on the settings tab
03 / Source details
Frequently asked questions.
What’s the difference between the Free and Pro exemption models?
Free is trust-based: mark a role as tax-exempt and every member of that role is exempted immediately, no evidence required. Pro adds a certificate-backed compliance layer — role members aren’t exempted until there’s an approved certificate on file covering the order’s jurisdiction, or a recorded override accepting the risk. Individual users can always be excluded via the Never Exempt override regardless of tier.
Will this conflict with my wholesale plugin or another tax/VAT plugin?
Usually not — this plugin is designed to defer to exemptions granted by other systems rather than override them. It can conflict with plugins that write directly to the WooCommerce customer session object instead of using the standard woocommerce_customer_is_vat_exempt filter. See the Plugin Compatibility section below if a customer’s exemption isn’t applying correctly.
What happens to my data if I deactivate or delete the plugin?
Deactivating never touches your data. Deleting the plugin also leaves all data in place by default — certificates, overrides, settings, and the audit log are only removed if you explicitly opt in via the “Remove Data on Uninstall” setting before deleting.
Which staff roles can manage tax exemption?
Configurable at WooCommerce → Settings → Tax Exempt Certs → Who Can Manage Exemptions. Administrator is always included and can’t be removed. Roles left out of that setting still get read-only access to certificate and status information, but can’t make changes.
Is this compatible with High-Performance Order Storage (HPOS)?
Yes.
What happens when a certificate expires?
A scheduled daily check automatically expires certificates past their expiry date and removes the customer’s exemption. If Expiry Warning is configured, a reminder email goes out X days beforehand, and the customer sees a prefilled renewal form in My Account. A configurable grace period can keep exemption active while a renewal is under review.
Can a customer be exempt in some states/jurisdictions but not others?
Yes (Pro) — certificates are jurisdiction-specific, and a customer can hold multiple certificates covering different states, provinces, or countries. Exemption is applied only when the order’s destination matches an approved certificate’s jurisdiction.
Where are uploaded certificate documents stored, and are they secure?
In a protected directory outside direct web access (via .htaccess on Apache, with an Nginx compatibility notice shown if detected), served only through a permission-checked download handler — never a public URL.
Website LLMs.txt and LLMs-Full.txt Generator is an LLMs.txt generator and llms-full.txt generator for WordPress. It helps site owners generate, manage, preview, validate, and serve AI discovery files from published public content. Use it to create structured /llms.txt and optional /llms-full.txt end
EngageDock AI is a customizable floating contact widget for WordPress websites that want more leads and faster visitor communication. It helps small businesses turn website traffic into calls, texts, emails, and callback requests from one clean contact panel. Key Features: Click-to-Call – One tap ca
Altify AI is an auto ALT text and AI ALT text plugin for WordPress images. It helps generate descriptive image ALT text for accessibility and image SEO. Use bulk image ALT text tools for your Media Library, generate featured image ALT text automatically, and scale WooCommerce image ALT updates with
The Accepted Payment Methods plugin is a straightforward, lightweight solution that enhances your website by displaying visually appealing icons of the payment methods you accept. This plugin is ideal for a variety of websites, including e-commerce platforms, service-oriented websites, and informati