# Show HN: TaxLens – free lodging-tax API for hotels, OTAs, and property managers

> Source: <https://taxlens.getdynamiq.ai>
> Published: 2026-06-21 23:46:40+00:00

### Calculate

Resolve the jurisdiction, stack every applicable tax layer, and return a deterministic breakdown before checkout.

Calculate, persist booking evidence, issue invoices, report liabilities, and monitor regulatory change across every lodging-tax workflow.

TaxLens is not just a calculation endpoint. It carries the same tax decision from quote to booking evidence, invoice issuance, liability reporting, and regulatory monitoring.

Resolve the jurisdiction, stack every applicable tax layer, and return a deterministic breakdown before checkout.

Store the confirmed booking, idempotency key, buyer context, and immutable tax snapshot for downstream finance work.

Project the booking into commercial invoices, self-billing flows, credit notes, and UBL/XML-ready documents.

Pull period liability reports from issued invoice snapshots so tax teams can remit by jurisdiction and category.

AI monitoring detects source changes, while human review approves updates with authority names and legal references.

The same platform supports different buyers because lodging tax risk appears in different parts of the operating model.

Booking.com, Airbnb-style platforms, bedbanks, and merchant-of-record flows.

Route marketplace facilitator, merchant-of-record, commission VAT, and self-billing scenarios without separate tax logic per channel.

Reduce launch friction when adding new jurisdictions or supplier models.

merchant-of-record and channel context travel with each calculation.

Multi-property brands and regional hotel operators.

Give front-desk and finance teams one source of truth for quotes, invoices, credit notes, and monthly liability reporting.

Cut manual spreadsheet review before close and reduce under/over-collection risk.

booking snapshots keep historical invoices stable after rule changes.

Property managers, channel managers, and PMS platforms with many units.

Map every unit once, inherit property tax drivers, and calculate stay tax consistently across direct, OTA, and owner channels.

Ship compliant tax workflows without building local rules into the PMS.

property defaults fill booking inputs without rewriting historical records.

Rates are only the visible edge. TaxLens connects address resolution, additive tax logic, booking evidence, fiscal documents, and reporting into one operating layer.

Use a known jurisdiction code or resolve an address into the country, state, city, district, and special-zone path.

Country, regional, city, and district rates fire independently so remittance lines remain separate and auditable.

Confirmed bookings preserve the exact tax response, property drivers, buyer context, and issuer defaults used at sale time.

Issue commercial invoices, self-billed invoices, and credit notes with legal issuer fields and UBL/XML output.

Report tax liability from issued invoice snapshots, not recalculated bookings, so finance sees stable remittance numbers.

Monitoring agents propose rate changes; reviewers approve drafts with source URLs, authority names, and legal references.

One request shape handles percentage taxes, flat nightly fees, per-person city taxes, tax-on-tax bases, and property-type rules. Booking APIs preserve the final snapshot for invoices, credit notes, and liability reports.

NY state sales tax, NYC hotel occupancy tax, MCTD, nightly unit fee, and convention fee in one response.

```
curl -X POST https://api.taxlens.getdynamiq.ai/v1/tax/calculate \
  -H "Content-Type: application/json" \
  -H "X-API-Key: <your-api-key>" \
  -d '{
  "jurisdiction_code": "US-NY-NYC",
  "stay_date": "2026-06-15",
  "nightly_rate": 250,
  "currency": "USD",
  "nights": 3,
  "number_of_guests": 2,
  "property_type": "hotel"
}'
{
  "jurisdiction": {
    "code": "US-NY-NYC",
    "name": "New York City",
    "path": "US.NY.NYC"
  },
  "tax_breakdown": {
    "total_tax": "87.37",
    "effective_rate": "0.1165",
    "currency": "USD",
    "subtotal_excluding_tax": "750",
    "subtotal_including_tax": "837.37",
    "components": [
      {
        "category_code": "vat_standard",
        "jurisdiction_code": "US-NY",
        "rate": 0.04,
        "tax_amount": "30.00"
      },
      {
        "category_code": "municipal_pct",
        "jurisdiction_code": "US-NY-NYC",
        "rate": 0.00375,
        "tax_amount": "2.81"
      },
      {
        "category_code": "occ_pct",
        "jurisdiction_code": "US-NY-NYC",
        "rate": 0.05875,
        "tax_amount": "44.06"
      },
      {
        "category_code": "occ_flat_night",
        "jurisdiction_code": "US-NY-NYC",
        "rate_type": "tiered",
        "tax_amount": "6.00"
      },
      {
        "category_code": "convention_flat",
        "jurisdiction_code": "US-NY-NYC",
        "rate": 1.5,
        "tax_amount": "4.50"
      },
      {
        "category_code": "vat_standard",
        "jurisdiction_code": "US",
        "rate": 0,
        "tax_amount": "0.00"
      }
    ]
  },
  "total_with_tax": "837.37",
  "collection_info": {
    "who_collects": "property",
    "taxable_base": "room_rate"
  }
}
```

TaxLens earns confidence through coverage discipline, auditable source history, immutable fiscal records, and human review. No unapproved customer-logo claims, no hand-wavy proof.

Agents detect potential changes, operators approve drafts, and each active row keeps effective dates, authority names, legal references, and source URLs.

Tracked for country-level monitoring and coverage intelligence.

Layered lodging, VAT/GST, tourism, city, and special-zone rates.

Age, stay length, property type, channel, and supplier-side logic.

Country, state, city, district, and special-zone calculation paths.
