Privacy

Free checks stay in your browser. We do not file with FINTRAC.

What we store

If you use Pro and Save a run, we store that report or scan in your entity workspace so you can reopen it. PII is never shown in the view as raw values.

How it stays local: what runs in this browser, what stays on this device, and what leaves when you send a message or a page view.

What this site does with case data

  • Free checks on Check One, Batch Check, Scan Transactions, and Scan Clients stay in short-lived browser memory. Checks run locally (a worker when the browser supports it). Free checks never upload.
  • Names, dates of birth, addresses, and identifiers display as [MASKED]. The engine still uses the in-memory original on your machine.
  • Pro Save run (explicit, paid + signed in) stores the checked report or scan body in your entity workspace under row-level security so you can reopen it. Eligible saved runs are available for up to five years from the original Save run. That is AML Deck workspace record / reporting work history — not a FINTRAC filing archive and not a substitute for all records you may be required to retain under applicable FINTRAC requirements. Scan Clients has no cloud Save run. Page views may be counted (Vercel Analytics). Contact messages go to Formspree. Free check payloads are not included.

Client-side checks

Checking a report on Check One or Batch Check, Scan Transactions, or Scan Clients runs entirely in your browser unless you later choose Pro Save run. Free checks do not post the payload to this site, write it to a log, or send it to a regulator. HTTP validate is disabled and returns 410 without reading the body. The engine only checks field structure and format against published rules, in memory. We do not keep a FINTRAC filing history.

PII is never shown

Names, dates of birth, occupation, addresses, email, telephone, and identification numbers display as [MASKED]. That overlay is for the view and for screenshots. Checks still use the in-memory original on your machine. The original is not stored here. A local CLI (npm run mask-pii) can mask or AES-256-GCM-encrypt those fields in workspace files.

Google Sheets add-on

The AML Deck Google Sheets editor add-on is coming soon. When it ships, it will run the same FINTRAC (LCTR, STR, LVCTR, EFTR, CDR) checks inside your Google account via Apps Script. Report field values stay in the spreadsheet you open. The bundled engine validates in that script execution environment; it does not post report payloads to our servers or this site, does not store them, and does not file or submit to any FIU. Scopes are limited to the current spreadsheet and the add-on UI. Links in the sidebar may open this site (privacy, contact, demo) or published regulator rule pages in a new tab. When ADDON_LICENSE_REQUIRED is enabled, the add-on checks a purchase email against Stripe (Sheets & Excel license). That check sends only the email address — not report field values. On the website, Check one and Batch check validation stay free; Batch ingest (CSV, TSV, JSON, NDJSON, and XML) is free up to the current report cap; download/export of remediation or passed files need the same license unlock.

Microsoft Excel add-in

The Office.js Excel task pane is coming soon. When it ships, it will use the same bundled engine and row layout as Sheets. Report values stay in the workbook you open; validation runs in Excel via Office.js. It does not post report payloads to our servers or this site, does not store them, and does not file. The add-in requests ReadWriteDocument only. Sideload instructions live in excel-addon/README.md. When listed on Microsoft AppSource, the same privacy, terms, and support URLs apply. License unlock uses the same Stripe purchase email as Sheets and website freemium downloads.

Payments

Licenses are sold via Stripe Checkout (subscription) on /license. We use the purchaser email and Stripe subscription status (active through the paid period) to unlock Sheets, Excel, and download/export. We do not use payment data to file reports. Check one validation and Batch check upload + Run checks do not require a purchase.

Accounts

Check One, Batch Check, Scan Transactions, and Scan Clients stay open — no login is required to run a check. Pro workspace access needs a signed-in session plus a live Pro plan. If you use Pro and Save a run, we store that report or scan in your entity workspace so you can reopen it. Eligible Pro saved runs are available for up to five years from the original Save run. If Pro ends, Saved Runs stay closed until Pro returns; rows are not auto-deleted on cancel. You may delete a saved run from the entity workspace. Filing deadline helper tracking stays on this device and is not synced. The Sheets add-on (coming soon) will use your Google account only for Google's authorization to the spreadsheet you choose. The Excel add-in (coming soon) will use your Microsoft Office session for the workbook you open.

Analytics

The site uses Vercel Web Analytics for anonymized page-view counts and Vercel Speed Insights for Core Web Vitals. Query strings are stripped before page URLs are sent. Neither tool inspects report contents.

Contact form

The contact form does not save messages here. Submit posts name, email, and message to Formspree, which may set a technical cookie on formspree.io (for example fs_ab1). This site does not load Formspree's hosted page or ad scripts. Report payloads are not sent. The Feedback button sends only the typed answers and an optional email — never report payloads, filenames, results, or query strings.

Pack-change alerts

Optional pack-change alerts collect only your email and optional regulator preference (FINTRAC). Submit posts those fields to Formspree; we do not store those addresses in this app. This is a subscriber list only — the form does not send pack-version emails automatically. Report payloads are never sent. Formspree may set a technical cookie on formspree.io (for example fs_ab1). This site does not load Formspree's hosted page or ad scripts.

Step 1 of 3

What do you want to do?