Skip to content

Trial → Production

The 14-day trial includes 1,000 lookups with the same accuracy as paid plans. No credit card required. When you’re ready to ship to production:

Upgrade before any of:

  • Your trial expires (14 days from signup)
  • You approach the 1,000-lookup limit (the dashboard surfaces a rolling counter)
  • You need a per-environment key (separate prod + staging)

Paid plans start at $X/month and scale by lookup volume. See taxql.com/pricing for the current table. You can switch plans at any time; usage is metered monthly.

Treat your API key like a database password. Recommended pattern:

Terminal window
# .env (never commit this file)
TAXQL_API_KEY=tk_live_...
import os
from taxql import TaxQL
client = TaxQL(api_key=os.environ["TAXQL_API_KEY"])

For containerised deployments, inject via secret manager (AWS Secrets Manager, Google Secret Manager, HashiCorp Vault, etc). Never bake the key into a container image or commit to source control.

Sandbox / test-mode keys are on the roadmap — they’ll let you run integration tests against a stable response without consuming production quota. Until they ship, use a separate paid-plan account for staging if your test volume is meaningful.

Before flipping over from trial:

  • API key loaded from secret manager / env var, not hardcoded
  • Caller-side retry policy is set or relying on SDK defaults (3 retries with backoff)
  • Error handling catches at least AuthError, RateLimitError, and NotFoundError
  • Production paid plan selected at taxql.com/pricing
  • Webhook / monitoring on the tier’s X-Tier-* headers so you’re alerted before hitting the cap

If you’re coming from TaxJar, see the Portability endpoints/v1/portability/rates and /v1/portability/orders accept the same request envelopes TaxJar does. Swap the base URL and you’re running.