The comparison
Manual vs Avalara
| Manual | Avalara | |
|---|---|---|
| What you set on the feature | A flat percentage | An Avalara tax code |
| Rate | The percentage you enter | Computed from the tax code, the ship-from and ship-to addresses, and your Avalara nexus |
| Tax detail on the invoice | The single percentage, applied to the line | Avalara’s state, county, city, and special-jurisdiction amounts, summed into the line’s tax |
| Addresses | Not used | Required. Behavior on an address Avalara can’t resolve is configurable: fail generation, ignore tax if non-taxable, or ignore tax and generate |
| Customer exemption | Not applicable | exempt_tax, tax_exemption_number, and entity_use_code are sent on every transaction |
| Draft and preview | Calculated locally | Calls Avalara for an estimate each time the amount is shown |
| On approval | Nothing leaves Zenskar | Recorded as a committed AvaTax transaction |
| Credit notes | The percentage is reversed locally | A refund is reported against the original transaction |
| One connection covers | Not applicable | One Zenskar business entity and one Avalara company |
| Availability | Always available | Available to any organization |
Manual vs Anrok
| Manual | Anrok | |
|---|---|---|
| What you set on the feature | A flat percentage | An Anrok tax category, picked live from your connected Anrok account (no Zenskar-side category or mapping step) |
| Rate | The percentage you enter | Computed from the tax category, the addresses, and your Anrok nexus |
| Tax detail on the invoice | The single percentage, applied to the line | Anrok’s per-jurisdiction (nexus-level) amounts, summed into the line’s tax |
| Addresses | Not used | Required. Behavior on an address Anrok can’t resolve is fixed: always ignore tax and generate the invoice |
| Customer exemption | Not applicable | The customer’s tax ID is sent on every transaction; a valid EU VAT ID triggers reverse charge. No exemption-number field; exemptions are set directly in Anrok, found by searching for the customer there by name or email (the internal ID Zenskar sends isn’t shown anywhere in Zenskar’s UI) |
| Draft and preview | Calculated locally | Calls Anrok for an estimate each time the amount is shown |
| On approval | Nothing leaves Zenskar | Recorded as an Anrok transaction (no separate commit step) |
| Credit notes | The percentage is reversed locally | A full credit note negates the original transaction; a partial one is a new, negative, pro-rated transaction |
| One connection covers | Not applicable | One Zenskar business entity and one Anrok account |
| Availability | Always available | Enabled only for organizations Zenskar has turned it on for; otherwise shown disabled, marked “coming soon” |
Mechanics and constraints
| Constraint | Detail |
|---|---|
| Anrok is gated | The Anrok card under Integrations is always shown, but enabled only for organizations Zenskar has turned it on for; otherwise it’s disabled and marked “coming soon.” Avalara has no such gate. |
| One connection, one entity | Both engines bind one connection to one Zenskar business entity (and, for Avalara, one company). Billing another entity through the same engine needs another connection. |
| Disconnecting the connected engine blocks affected invoices | Any plan, contract, or product whose Tax feature still names the disconnected engine fails invoice generation outright, with an actionable error naming the engine, not a silent zero-tax fallback. Reconnect the engine, or change the Tax feature to Manual or the other connected engine, then re-publish and regenerate. |
| Anrok needs a resolvable product per line | A tax feature Anrok can’t attach to a single product (for example, on a bundle) is refused when the plan or contract is published. Avalara has no equivalent restriction. |
| Multiple Anrok connections don’t fully work yet | If more than one Anrok connection exists, the Tax Category picker used across the product and pricing UI reads categories from only the first one created. |
| Silent zero tax is the most common failure for both engines | Same underlying reason: a jurisdiction you haven’t registered for. Avalara returns $0 tax with no error; Anrok marks the line “not collecting.” See each engine’s own page for the specific warning. |
Where to go next
| Engine | Setup guide |
|---|---|
| Avalara | Avalara AvaTax: connect Avalara and assign a tax code. |
| Anrok | Anrok: connect Anrok and assign a tax category. |