Skip to content

Privacy Policy

Last updated: 2026-07-24

This policy describes how DutyLookout, a product of Altered Horizon Ventures Inc. (“we”, “us”), handles data for merchants who install our Shopify app and for visitors who use the free HS lookup on this site.

The short version: we store product catalog data, never shopper data. DutyLookout does not request access to your customers or orders, and no customer personal information ever reaches our systems. This is by design, not by policy alone — the app’s Shopify permissions are limited to reading products and writing inventory-item HS codes.

What we store (merchants)

  • Shop identity: your shop’s myshopify domain, the app access token (encrypted at rest with AES-256-GCM), your plan, and the merchant contact email used for alerts.
  • Product catalog data: product titles, descriptions (trimmed), product types, vendors, tags, declared materials, and origin countries — the text needed to classify each product.
  • Classification results: suggested and approved HS/HTS codes, confidence scores, rationales, and the audit trail of who approved what and when.
  • Usage aggregates: counts and token totals for the AI classification service, used for capacity planning and billing sanity.

What we never store

  • Shopper / customer personal information of any kind
  • Orders, addresses, payment details, or checkout data
  • Anything from Shopify scopes we did not request — we ask for product read and inventory write access only

The free HS lookup

  • We store the product description you type, without any identifier linking it to you, so that repeated queries can be answered from cache.
  • For daily rate limiting we store a one-way keyed hash (HMAC-SHA-256 with a server-side secret) of your IP address and a counter. The raw IP address is never written to our database or logs, and the hash cannot be reversed without the secret.
  • After two lookups in a day, a Cloudflare Turnstile check may run to deter abuse; Cloudflare processes the verification transiently under its own terms.

How classification uses AI

Product text (title, description, type, materials) is sent to Anthropic’s Claude API to suggest HS codes. We send product text only — never your shop’s name, domain, or any identifier. Classification results are cached by a hash of the product text so identical products are never re-sent. Duty rates and duty math never involve AI: they come from a versioned database built from official sources (USITC, Federal Register, CBP).

Subprocessors

ProviderPurposeWhat they see
ShopifyPlatform, OAuth, billingStandard app platform data
AnthropicAI classificationProduct text only — no shop identity
ResendTransactional email (alerts, digests)Merchant email address and alert content
DigitalOceanHosting infrastructureEncrypted application data at rest
CloudflareTurnstile bot check on the free lookupTransient verification data on that page only

GDPR and Shopify compliance webhooks

  • customers/data_request: we hold no customer data, and we respond to Shopify confirming exactly that.
  • customers/redact: nothing to redact — we hold no customer data.
  • shop/redact (and app uninstall): all rows belonging to your shop are hard-deleted from our database within 30 days. We retain only anonymized usage aggregates that contain no shop identity.

Security

  • Access tokens encrypted at rest (AES-256-GCM); TLS on every connection
  • Database not exposed to the public internet
  • Webhook signatures verified on every delivery

Data retention

Shop data is kept while the app is installed and deleted within 30 days of uninstall or a shop/redact request. Free-lookup rate-limit counters expire naturally — they are keyed by day and contain only a hash.

Contact

Questions or requests: support@dutylookout.com. We answer data requests from merchants directly and via Shopify’s standard processes.