@tokenoftrust/storefront-runner 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (337) hide show
  1. package/LICENSE +58 -0
  2. package/README.md +40 -0
  3. package/apps/storefront/.dev.vars.example +41 -0
  4. package/apps/storefront/.env.example +24 -0
  5. package/apps/storefront/astro.config.mjs +245 -0
  6. package/apps/storefront/env.d.ts +155 -0
  7. package/apps/storefront/lib/ensure-preview-reconcile-secret.sh +31 -0
  8. package/apps/storefront/lib/resolve-cf-token.sh +48 -0
  9. package/apps/storefront/lib/resolve-tot-credentials.sh +69 -0
  10. package/apps/storefront/migrations/0000_baseline.sql +54 -0
  11. package/apps/storefront/migrations/0001_products_fts.sql +9 -0
  12. package/apps/storefront/migrations/README.md +54 -0
  13. package/apps/storefront/migrations/meta/0000_snapshot.json +347 -0
  14. package/apps/storefront/migrations/meta/0001_snapshot.json +347 -0
  15. package/apps/storefront/migrations/meta/_journal.json +20 -0
  16. package/apps/storefront/package.json +41 -0
  17. package/apps/storefront/public/brand/northwind-logo-dark.svg +4 -0
  18. package/apps/storefront/public/brand/northwind-logo-light.svg +4 -0
  19. package/apps/storefront/public/brand/northwind-og.svg +13 -0
  20. package/apps/storefront/public/favicon.svg +5 -0
  21. package/apps/storefront/public/js/dashboard-team.js +147 -0
  22. package/apps/storefront/public/js/dashboard-vendor-search.js +115 -0
  23. package/apps/storefront/src/components/Badge.astro +34 -0
  24. package/apps/storefront/src/components/Breadcrumbs.astro +45 -0
  25. package/apps/storefront/src/components/CollectionCard.astro +56 -0
  26. package/apps/storefront/src/components/EmptyState.astro +35 -0
  27. package/apps/storefront/src/components/Img.astro +68 -0
  28. package/apps/storefront/src/components/ProductCard.astro +228 -0
  29. package/apps/storefront/src/components/Section.astro +39 -0
  30. package/apps/storefront/src/components/Seo.astro +70 -0
  31. package/apps/storefront/src/components/WidgetFrame.astro +34 -0
  32. package/apps/storefront/src/components/auth/AuthBadge.astro +44 -0
  33. package/apps/storefront/src/components/chrome/AnnouncementBar.astro +108 -0
  34. package/apps/storefront/src/components/chrome/MegaMenu.astro +26 -0
  35. package/apps/storefront/src/components/chrome/NavDropdown.astro +116 -0
  36. package/apps/storefront/src/components/chrome/SiteFooter.astro +181 -0
  37. package/apps/storefront/src/components/chrome/SiteHeader.astro +181 -0
  38. package/apps/storefront/src/components/chrome/UtilityNav.astro +79 -0
  39. package/apps/storefront/src/components/commerce/FoxyLoader.astro +23 -0
  40. package/apps/storefront/src/components/commerce/PriceDisplay.astro +91 -0
  41. package/apps/storefront/src/components/commerce/ProductCarousel.astro +197 -0
  42. package/apps/storefront/src/components/commerce/ProductGrid.astro +75 -0
  43. package/apps/storefront/src/components/commerce/RatingStars.astro +58 -0
  44. package/apps/storefront/src/components/compliance/NicotineWarning.astro +33 -0
  45. package/apps/storefront/src/components/home/Hero.astro +164 -0
  46. package/apps/storefront/src/components/islands/AgeGate.tsx +105 -0
  47. package/apps/storefront/src/components/islands/ImageGallery.tsx +237 -0
  48. package/apps/storefront/src/components/islands/IsolatedAgeGate.tsx +73 -0
  49. package/apps/storefront/src/components/islands/MobileNav.tsx +239 -0
  50. package/apps/storefront/src/components/islands/QuickView.tsx +138 -0
  51. package/apps/storefront/src/components/islands/RecentlyViewed.tsx +122 -0
  52. package/apps/storefront/src/components/islands/SavedList.tsx +99 -0
  53. package/apps/storefront/src/components/islands/SearchTypeahead.tsx +248 -0
  54. package/apps/storefront/src/components/islands/VariantSelector.tsx +378 -0
  55. package/apps/storefront/src/components/marketing/CardGrid.astro +72 -0
  56. package/apps/storefront/src/components/marketing/CodeSample.astro +20 -0
  57. package/apps/storefront/src/components/marketing/CtaBand.astro +24 -0
  58. package/apps/storefront/src/components/marketing/Faq.astro +37 -0
  59. package/apps/storefront/src/components/marketing/Integrations.astro +63 -0
  60. package/apps/storefront/src/components/marketing/MarketingBlocks.astro +53 -0
  61. package/apps/storefront/src/components/marketing/MarketingCtas.astro +48 -0
  62. package/apps/storefront/src/components/marketing/MarketingHero.astro +72 -0
  63. package/apps/storefront/src/components/marketing/ProofStrip.astro +37 -0
  64. package/apps/storefront/src/components/marketing/SplitCompare.astro +53 -0
  65. package/apps/storefront/src/components/marketing/Steps.astro +36 -0
  66. package/apps/storefront/src/components/marketing/Testimonials.astro +38 -0
  67. package/apps/storefront/src/components/marketing/TrustBar.astro +22 -0
  68. package/apps/storefront/src/components/nav/Footer.astro +148 -0
  69. package/apps/storefront/src/components/nav/Header.astro +190 -0
  70. package/apps/storefront/src/components/plp/ActiveFilters.astro +79 -0
  71. package/apps/storefront/src/components/plp/FacetSidebar.astro +146 -0
  72. package/apps/storefront/src/components/plp/Pagination.astro +99 -0
  73. package/apps/storefront/src/components/plp/SortSelect.astro +64 -0
  74. package/apps/storefront/src/config/devTenants.ts +16 -0
  75. package/apps/storefront/src/config/kvTenantResolver.ts +87 -0
  76. package/apps/storefront/src/config/resolver.ts +46 -0
  77. package/apps/storefront/src/config/tenants.ts +193 -0
  78. package/apps/storefront/src/layouts/Layout.astro +303 -0
  79. package/apps/storefront/src/lib/analytics/index.ts +47 -0
  80. package/apps/storefront/src/lib/auth/brokerAssertion.ts +136 -0
  81. package/apps/storefront/src/lib/auth/devAuth.ts +90 -0
  82. package/apps/storefront/src/lib/auth/gatePage.ts +81 -0
  83. package/apps/storefront/src/lib/auth/identityToken.ts +341 -0
  84. package/apps/storefront/src/lib/auth/loginGate.ts +107 -0
  85. package/apps/storefront/src/lib/auth/route.ts +146 -0
  86. package/apps/storefront/src/lib/auth/session.ts +203 -0
  87. package/apps/storefront/src/lib/auth/totAccessClient.ts +503 -0
  88. package/apps/storefront/src/lib/basePath.ts +41 -0
  89. package/apps/storefront/src/lib/cfImage.ts +55 -0
  90. package/apps/storefront/src/lib/chrome/model.ts +65 -0
  91. package/apps/storefront/src/lib/colors.ts +97 -0
  92. package/apps/storefront/src/lib/content-edit/client.ts +230 -0
  93. package/apps/storefront/src/lib/content-edit/index.ts +14 -0
  94. package/apps/storefront/src/lib/content-edit/route.ts +25 -0
  95. package/apps/storefront/src/lib/content-edit/types.ts +19 -0
  96. package/apps/storefront/src/lib/cspStaticHashes.ts +24 -0
  97. package/apps/storefront/src/lib/d1/catalog.ts +289 -0
  98. package/apps/storefront/src/lib/dashboard/staffAdmission.ts +43 -0
  99. package/apps/storefront/src/lib/dashboard/staffVendorAccess.ts +449 -0
  100. package/apps/storefront/src/lib/dashboard/tenantSelection.ts +136 -0
  101. package/apps/storefront/src/lib/dashboard/vendorQuery.ts +61 -0
  102. package/apps/storefront/src/lib/demoGate.ts +113 -0
  103. package/apps/storefront/src/lib/dev/ai-widget-client.js +127 -0
  104. package/apps/storefront/src/lib/dev/cliSignInCode.ts +132 -0
  105. package/apps/storefront/src/lib/diag/redact.ts +20 -0
  106. package/apps/storefront/src/lib/edgeCache.ts +128 -0
  107. package/apps/storefront/src/lib/email/magicLinkInviteEmail.ts +62 -0
  108. package/apps/storefront/src/lib/env.ts +60 -0
  109. package/apps/storefront/src/lib/fixtures/sampleProducts.ts +130 -0
  110. package/apps/storefront/src/lib/format.ts +29 -0
  111. package/apps/storefront/src/lib/foxyCommerce.ts +49 -0
  112. package/apps/storefront/src/lib/imageAttrs.ts +55 -0
  113. package/apps/storefront/src/lib/jsonld.ts +136 -0
  114. package/apps/storefront/src/lib/maintenance.ts +71 -0
  115. package/apps/storefront/src/lib/memoryKv.ts +32 -0
  116. package/apps/storefront/src/lib/messaging/messagesClient.ts +143 -0
  117. package/apps/storefront/src/lib/placeholder.ts +99 -0
  118. package/apps/storefront/src/lib/previewReload.ts +125 -0
  119. package/apps/storefront/src/lib/rawMarketingHtml.ts +133 -0
  120. package/apps/storefront/src/lib/search/index.ts +74 -0
  121. package/apps/storefront/src/lib/sections.ts +129 -0
  122. package/apps/storefront/src/lib/securityHeaders.ts +31 -0
  123. package/apps/storefront/src/lib/storyblok/content-model.ts +289 -0
  124. package/apps/storefront/src/lib/storyblok/provider.ts +524 -0
  125. package/apps/storefront/src/lib/tenantRouting.ts +91 -0
  126. package/apps/storefront/src/lib/tot/ToTClient.ts +177 -0
  127. package/apps/storefront/src/lib/tot/d1Client.ts +62 -0
  128. package/apps/storefront/src/lib/tot/query.ts +187 -0
  129. package/apps/storefront/src/lib/tot/totClientInterface.ts +30 -0
  130. package/apps/storefront/src/lib/url.ts +119 -0
  131. package/apps/storefront/src/lib/wishlist.ts +63 -0
  132. package/apps/storefront/src/middleware/index.ts +413 -0
  133. package/apps/storefront/src/pages/404.astro +61 -0
  134. package/apps/storefront/src/pages/[...slug].astro +90 -0
  135. package/apps/storefront/src/pages/api/auth/logout.ts +21 -0
  136. package/apps/storefront/src/pages/api/auth/magic-exchange.ts +107 -0
  137. package/apps/storefront/src/pages/api/auth/send.ts +85 -0
  138. package/apps/storefront/src/pages/api/auth/verify.ts +135 -0
  139. package/apps/storefront/src/pages/api/cache-purge.ts +44 -0
  140. package/apps/storefront/src/pages/api/content-edit/ai-edit.ts +64 -0
  141. package/apps/storefront/src/pages/api/csp-report.ts +25 -0
  142. package/apps/storefront/src/pages/api/dashboard/enter-vendor.ts +124 -0
  143. package/apps/storefront/src/pages/api/dashboard/vendor-search.ts +120 -0
  144. package/apps/storefront/src/pages/api/dev/cli-signin-code.ts +44 -0
  145. package/apps/storefront/src/pages/api/newsletter.ts +104 -0
  146. package/apps/storefront/src/pages/api/request-access.ts +172 -0
  147. package/apps/storefront/src/pages/auth/login.astro +149 -0
  148. package/apps/storefront/src/pages/auth/magic.astro +105 -0
  149. package/apps/storefront/src/pages/capabilities.astro +292 -0
  150. package/apps/storefront/src/pages/collections/[handle].astro +154 -0
  151. package/apps/storefront/src/pages/collections/index.astro +59 -0
  152. package/apps/storefront/src/pages/dashboard/[appDomain]/index.astro +100 -0
  153. package/apps/storefront/src/pages/dashboard/[appDomain]/team.astro +154 -0
  154. package/apps/storefront/src/pages/dashboard/index.astro +160 -0
  155. package/apps/storefront/src/pages/dev.astro +653 -0
  156. package/apps/storefront/src/pages/index.astro +290 -0
  157. package/apps/storefront/src/pages/llms.txt.ts +92 -0
  158. package/apps/storefront/src/pages/products/[handle].astro +443 -0
  159. package/apps/storefront/src/pages/robots.txt.ts +24 -0
  160. package/apps/storefront/src/pages/saved.astro +35 -0
  161. package/apps/storefront/src/pages/search.astro +150 -0
  162. package/apps/storefront/src/pages/sitemap.xml.ts +78 -0
  163. package/apps/storefront/src/pages/style-guide/[tenant]/[theme].astro +646 -0
  164. package/apps/storefront/src/pages/style-guide/[tenant]/index.astro +85 -0
  165. package/apps/storefront/src/pages/style-guide/index.astro +94 -0
  166. package/apps/storefront/src/pages/tenants/[id]/[...path].ts +57 -0
  167. package/apps/storefront/src/styles/global.css +277 -0
  168. package/apps/storefront/src/themes/reference.ts +61 -0
  169. package/apps/storefront/src/themes/schema.ts +111 -0
  170. package/apps/storefront/src/themes/tenants/index.ts +51 -0
  171. package/apps/storefront/tsconfig.json +16 -0
  172. package/apps/storefront/vitest.config.ts +22 -0
  173. package/apps/storefront/wrangler.toml +175 -0
  174. package/package.json +23 -0
  175. package/packages/public-runtime/LICENSE +58 -0
  176. package/packages/public-runtime/package.json +22 -0
  177. package/packages/public-runtime/src/binary-path.ts +68 -0
  178. package/packages/public-runtime/src/capabilities.ts +89 -0
  179. package/packages/public-runtime/src/catalog-api.ts +81 -0
  180. package/packages/public-runtime/src/catalog-d1.ts +192 -0
  181. package/packages/public-runtime/src/csp.ts +109 -0
  182. package/packages/public-runtime/src/customization-preview.ts +197 -0
  183. package/packages/public-runtime/src/customization-reconcile.ts +63 -0
  184. package/packages/public-runtime/src/customization-runtime.ts +157 -0
  185. package/packages/public-runtime/src/customization-scripts.ts +64 -0
  186. package/packages/public-runtime/src/customization-versioning.ts +95 -0
  187. package/packages/public-runtime/src/foxy.ts +184 -0
  188. package/packages/public-runtime/src/index.ts +30 -0
  189. package/packages/public-runtime/src/product.ts +159 -0
  190. package/packages/public-runtime/src/search.ts +45 -0
  191. package/packages/public-runtime/src/tenant-assets.ts +444 -0
  192. package/packages/public-runtime/src/tenant.ts +243 -0
  193. package/packages/public-runtime/tsconfig.json +8 -0
  194. package/packages/public-runtime/vitest.config.ts +8 -0
  195. package/pnpm-workspace.yaml +7 -0
  196. package/scripts/build/copy-tenant-assets.mjs +69 -0
  197. package/scripts/tot-dev.mjs +439 -0
  198. package/tenants/bigdvapor/content/blog.json +52 -0
  199. package/tenants/bigdvapor/content/chrome.html +149 -0
  200. package/tenants/bigdvapor/content/chrome.json +47 -0
  201. package/tenants/bigdvapor/content/home.html +463 -0
  202. package/tenants/bigdvapor/content/home.json +73 -0
  203. package/tenants/bigdvapor/content/pages/about.json +5 -0
  204. package/tenants/bigdvapor/content/pages/privacy.json +6 -0
  205. package/tenants/bigdvapor/content/pages/shipping-returns.json +6 -0
  206. package/tenants/bigdvapor/content/pages-html/blogs/news.html +86 -0
  207. package/tenants/bigdvapor/content/pages-html/pages/about-us.html +106 -0
  208. package/tenants/bigdvapor/content/pages-html/pages/contact-us.html +61 -0
  209. package/tenants/bigdvapor/content/pages-html/pages/privacy-policy.html +72 -0
  210. package/tenants/bigdvapor/content/pages-html/pages/shipping-returns.html +172 -0
  211. package/tenants/bigdvapor/content/themes/bigd-navy.json +109 -0
  212. package/tenants/bigdvapor/public/img/brands/adjust-vape-disposable.png +0 -0
  213. package/tenants/bigdvapor/public/img/brands/again-vape-disposable.png +0 -0
  214. package/tenants/bigdvapor/public/img/brands/al-fakher-vape-disposable.png +0 -0
  215. package/tenants/bigdvapor/public/img/brands/arro-vape-disposable.png +0 -0
  216. package/tenants/bigdvapor/public/img/brands/cookies-vape-disposable.png +0 -0
  217. package/tenants/bigdvapor/public/img/brands/core-vape-disposable.png +0 -0
  218. package/tenants/bigdvapor/public/img/brands/cyclone-vape-disposable.png +0 -0
  219. package/tenants/bigdvapor/public/img/brands/dinner-lady-vape-disposable.png +0 -0
  220. package/tenants/bigdvapor/public/img/brands/extre-bar-vape-disposable.png +0 -0
  221. package/tenants/bigdvapor/public/img/brands/fifty-bar-vape-disposable.jpg +0 -0
  222. package/tenants/bigdvapor/public/img/brands/firerose-vape-disposable.jpg +0 -0
  223. package/tenants/bigdvapor/public/img/brands/flavor-beast-vape-disposable.jpg +0 -0
  224. package/tenants/bigdvapor/public/img/brands/foger-vape-disposable.png +0 -0
  225. package/tenants/bigdvapor/public/img/brands/kk-energy-vape-disposable.png +0 -0
  226. package/tenants/bigdvapor/public/img/brands/kumi-vape-disposable.png +0 -0
  227. package/tenants/bigdvapor/public/img/brands/lost-vape-dispoable.png +0 -0
  228. package/tenants/bigdvapor/public/img/brands/melo-labs-vape-disposable.png +0 -0
  229. package/tenants/bigdvapor/public/img/brands/mixo-vape-disposable.webp +0 -0
  230. package/tenants/bigdvapor/public/img/brands/one-tank-vape-disposable.jpg +0 -0
  231. package/tenants/bigdvapor/public/img/brands/oxbar-vape-disposable.webp +0 -0
  232. package/tenants/bigdvapor/public/img/brands/pillow-talk-vape-disposable.jpg +0 -0
  233. package/tenants/bigdvapor/public/img/brands/pod-king-vape-disposable.jpg +0 -0
  234. package/tenants/bigdvapor/public/img/brands/raz-vape-disposable.png +0 -0
  235. package/tenants/bigdvapor/public/img/hero-texas.jpg +0 -0
  236. package/tenants/bigdvapor/public/img/og.jpg +0 -0
  237. package/tenants/bigdvapor/public/img/pages/AdobeStock_202106312_web.jpg +0 -0
  238. package/tenants/bigdvapor/public/img/pages/CREW_web.jpg +0 -0
  239. package/tenants/bigdvapor/public/img/pages/Hero-Image.jpg +0 -0
  240. package/tenants/bigdvapor/public/img/tiles/adjust.png +0 -0
  241. package/tenants/bigdvapor/public/img/tiles/again.png +0 -0
  242. package/tenants/bigdvapor/public/img/tiles/al-fakher.png +0 -0
  243. package/tenants/bigdvapor/public/img/tiles/arro.png +0 -0
  244. package/tenants/bigdvapor/public/img/tiles/cookies.png +0 -0
  245. package/tenants/bigdvapor/public/img/tiles/core.png +0 -0
  246. package/tenants/bigdvapor/public/img/tiles/cyclone.png +0 -0
  247. package/tenants/bigdvapor/public/img/tiles/disposables.svg +23 -0
  248. package/tenants/bigdvapor/public/logo-wordmark.png +0 -0
  249. package/tenants/bigdvapor/public/pages/home.css +118 -0
  250. package/tenants/bigdvapor/public/pages/mkt.css +185 -0
  251. package/tenants/bigdvapor/public/pages/page.css +148 -0
  252. package/tenants/bigdvapor/public/themes/bigd-navy.css +73 -0
  253. package/tenants/bigdvapor/theme.json +12 -0
  254. package/tenants/giantvapes/content/chrome.html +152 -0
  255. package/tenants/giantvapes/content/chrome.json +94 -0
  256. package/tenants/giantvapes/content/home.html +194 -0
  257. package/tenants/giantvapes/content/home.json +50 -0
  258. package/tenants/giantvapes/content/pages/about.json +10 -0
  259. package/tenants/giantvapes/content/pages/privacy.json +6 -0
  260. package/tenants/giantvapes/content/pages/shipping-returns.json +6 -0
  261. package/tenants/giantvapes/content/pages-html/blogs/news.html +68 -0
  262. package/tenants/giantvapes/content/pages-html/pages/about-us.html +95 -0
  263. package/tenants/giantvapes/content/pages-html/pages/contact-us.html +68 -0
  264. package/tenants/giantvapes/content/pages-html/pages/privacy-policy.html +65 -0
  265. package/tenants/giantvapes/content/pages-html/pages/shipping-returns.html +77 -0
  266. package/tenants/giantvapes/content/themes/giant-navy.json +73 -0
  267. package/tenants/giantvapes/public/img/hero-suicide-bunny.jpg +0 -0
  268. package/tenants/giantvapes/public/img/hero.webp +0 -0
  269. package/tenants/giantvapes/public/img/og.jpg +0 -0
  270. package/tenants/giantvapes/public/logo-wordmark.png +0 -0
  271. package/tenants/giantvapes/public/pages/home.css +120 -0
  272. package/tenants/giantvapes/public/pages/mkt.css +185 -0
  273. package/tenants/giantvapes/public/pages/page.css +155 -0
  274. package/tenants/giantvapes/public/themes/giant-navy.css +76 -0
  275. package/tenants/giantvapes/theme.json +39 -0
  276. package/tenants/home/content/chrome.json +11 -0
  277. package/tenants/home/content/home.html +304 -0
  278. package/tenants/home/content/home.json +13 -0
  279. package/tenants/home/public/js/storefront.js +210 -0
  280. package/tenants/home/public/logo-wordmark.png +0 -0
  281. package/tenants/home/public/pages/storefront.css +212 -0
  282. package/tenants/home/theme.json +6 -0
  283. package/tenants/tokenoftrust/.tot/config.json +9 -0
  284. package/tenants/tokenoftrust/content/chrome.json +55 -0
  285. package/tenants/tokenoftrust/content/home.html +723 -0
  286. package/tenants/tokenoftrust/content/home.json +233 -0
  287. package/tenants/tokenoftrust/content/pages-html/careers.html +231 -0
  288. package/tenants/tokenoftrust/content/pages-html/company.html +275 -0
  289. package/tenants/tokenoftrust/content/pages-html/contact/contact-sales.html +188 -0
  290. package/tenants/tokenoftrust/content/pages-html/contact/startup-apply.html +206 -0
  291. package/tenants/tokenoftrust/content/pages-html/contact.html +178 -0
  292. package/tenants/tokenoftrust/content/pages-html/industries/adult-content-age-verification.html +286 -0
  293. package/tenants/tokenoftrust/content/pages-html/industries/cannabis.html +277 -0
  294. package/tenants/tokenoftrust/content/pages-html/pact-act-pricing.html +289 -0
  295. package/tenants/tokenoftrust/content/pages-html/pricing.html +483 -0
  296. package/tenants/tokenoftrust/content/pages-html/product/age-assurance/age-estimation.html +278 -0
  297. package/tenants/tokenoftrust/content/pages-html/product/age-assurance/age-gate.html +279 -0
  298. package/tenants/tokenoftrust/content/pages-html/product/age-assurance/age-verification.html +265 -0
  299. package/tenants/tokenoftrust/content/pages-html/product/age-assurance.html +173 -0
  300. package/tenants/tokenoftrust/content/pages-html/product/compliance/aml.html +214 -0
  301. package/tenants/tokenoftrust/content/pages-html/product/compliance/pact-act.html +226 -0
  302. package/tenants/tokenoftrust/content/pages-html/product/fraud-prevention.html +254 -0
  303. package/tenants/tokenoftrust/content/pages-html/product/social-profile-verification.html +212 -0
  304. package/tenants/tokenoftrust/content/pages-html/product/tax/excise-tax.html +213 -0
  305. package/tenants/tokenoftrust/content/pages-html/product/verification/aml.html +259 -0
  306. package/tenants/tokenoftrust/content/pages-html/product/verification/biometric-selfie.html +305 -0
  307. package/tenants/tokenoftrust/content/pages-html/product/verification/coverage.html +254 -0
  308. package/tenants/tokenoftrust/content/pages-html/product/verification/document-verification.html +306 -0
  309. package/tenants/tokenoftrust/content/pages-html/product/verification/electronic-identity-verification.html +304 -0
  310. package/tenants/tokenoftrust/content/pages-html/product/verification/government-id-verification.html +308 -0
  311. package/tenants/tokenoftrust/content/pages-html/product/verification.html +183 -0
  312. package/tenants/tokenoftrust/content/pages-html/product.html +228 -0
  313. package/tenants/tokenoftrust/content/pages-html/resources/integrations/bigcommerce-integration.html +220 -0
  314. package/tenants/tokenoftrust/content/pages-html/resources/integrations/shopify-integration.html +221 -0
  315. package/tenants/tokenoftrust/content/pages-html/resources/integrations/wordpress.html +220 -0
  316. package/tenants/tokenoftrust/content/pages-html/resources/integrations.html +172 -0
  317. package/tenants/tokenoftrust/content/pages-html/resources/refer-a-friend-program.html +317 -0
  318. package/tenants/tokenoftrust/content/pages-html/resources.html +177 -0
  319. package/tenants/tokenoftrust/content/pages-html/reviews.html +273 -0
  320. package/tenants/tokenoftrust/content/pages-html/solutions.html +292 -0
  321. package/tenants/tokenoftrust/content/pages-html/vlp-alcohol.html +289 -0
  322. package/tenants/tokenoftrust/content/pages-html/vlp-cigars-and-tobacco.html +286 -0
  323. package/tenants/tokenoftrust/content/pages-html/vlp-firearm-accessories.html +267 -0
  324. package/tenants/tokenoftrust/content/pages-html/vlp-peptides.html +273 -0
  325. package/tenants/tokenoftrust/content/themes/tot-navy.json +88 -0
  326. package/tenants/tokenoftrust/public/favicon.png +0 -0
  327. package/tenants/tokenoftrust/public/logo-icon.png +0 -0
  328. package/tenants/tokenoftrust/public/logo-wordmark.png +0 -0
  329. package/tenants/tokenoftrust/public/pages/company.css +108 -0
  330. package/tenants/tokenoftrust/public/pages/home.css +457 -0
  331. package/tenants/tokenoftrust/public/pages/mkt.css +482 -0
  332. package/tenants/tokenoftrust/public/pages/pricing.css +214 -0
  333. package/tenants/tokenoftrust/public/pages/solutions.css +66 -0
  334. package/tenants/tokenoftrust/public/themes/tot-navy-1.0.0.css +136 -0
  335. package/tenants/tokenoftrust/public/themes/tot-navy.css +358 -0
  336. package/tenants/tokenoftrust/theme.json +31 -0
  337. package/tsconfig.base.json +20 -0
@@ -0,0 +1,308 @@
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <link rel="icon" type="image/png" href="/tenants/tokenoftrust/favicon.png">
7
+ <title>Government ID Verification Software | Token of Trust</title>
8
+ <meta name="description" content="Confirm the authenticity of passports, licenses, IDs, and official documents with Token of Trust's enhanced Government ID Verification Software solution.">
9
+ <link rel="canonical" href="https://tokenoftrust.com/product/verification/government-id-verification/">
10
+ <meta name="robots" content="index,follow,max-image-preview:large">
11
+ <meta property="og:type" content="website">
12
+ <meta property="og:site_name" content="Token of Trust">
13
+ <meta property="og:title" content="Government ID Verification Software — Token of Trust">
14
+ <meta property="og:description" content="Confirm the authenticity of passports, licenses, and IDs with Token of Trust's automated Government ID Verification.">
15
+ <meta property="og:url" content="https://tokenoftrust.com/product/verification/government-id-verification/">
16
+ <meta name="twitter:card" content="summary_large_image">
17
+ <meta name="twitter:title" content="Government ID Verification — Token of Trust">
18
+ <meta name="twitter:description" content="Fast, accurate, automated government ID verification.">
19
+ <script type="application/ld+json">
20
+ {
21
+ "@context": "https://schema.org",
22
+ "@graph": [
23
+ {
24
+ "@type": "Organization",
25
+ "@id": "https://tokenoftrust.com/#org",
26
+ "name": "Token of Trust",
27
+ "url": "https://tokenoftrust.com/",
28
+ "logo": "/tenants/tokenoftrust/logo-icon.png",
29
+ "slogan": "Real Customers. Less Fraud. More Trust."
30
+ },
31
+ {
32
+ "@type": "WebPage",
33
+ "name": "Government ID Verification Software | Token of Trust",
34
+ "url": "https://tokenoftrust.com/product/verification/government-id-verification/"
35
+ }
36
+ ]
37
+ }
38
+ </script>
39
+ <link rel="stylesheet" href="/tenants/tokenoftrust/themes/tot-navy.css">
40
+ <link rel="stylesheet" href="/tenants/tokenoftrust/pages/mkt.css">
41
+ </head>
42
+ <body>
43
+ <a class="skip-link" href="#main">Skip to main content</a>
44
+
45
+ <header class="site">
46
+ <div class="container nav-row">
47
+ <a class="brand" href="/" aria-label="Token of Trust home"><img src="/tenants/tokenoftrust/logo-wordmark.png" alt="Token of Trust" width="156" height="34" style="height:34px;width:auto;display:block"></a>
48
+ <nav class="primary" id="primaryNav" aria-label="Primary">
49
+ <ul>
50
+ <li><a class="active" href="/product/" aria-current="page">Platform</a></li>
51
+ <li><a href="/solutions/">Industries</a></li>
52
+ <li><a href="/company/">Company</a></li>
53
+ <li><a href="/resources/">Resources</a></li>
54
+ <li><a href="/pricing/">Pricing</a></li>
55
+ <li><a href="https://app.tokenoftrust.com">Login</a></li>
56
+ </ul>
57
+ </nav>
58
+ <div class="nav-cta">
59
+ <a class="btn btn-line" href="/contact/">Book Demo</a>
60
+ <a class="btn btn-green" href="https://app.tokenoftrust.com">Start For Free</a>
61
+ <button class="hamburger" id="hamburger" aria-label="Toggle navigation menu" aria-expanded="false" aria-controls="primaryNav"><span></span><span></span><span></span></button>
62
+ </div>
63
+ </div>
64
+ </header>
65
+
66
+ <main id="main">
67
+ <nav class="container crumbs" aria-label="Breadcrumb">
68
+ <a href="/">Home</a><span class="sep">›</span>
69
+ <a href="/product/">Platform</a><span class="sep">›</span>
70
+ <a href="/product/verification/">Identity Verification</a><span class="sep">›</span>
71
+ <span aria-current="page">Government ID Verification</span>
72
+ </nav>
73
+
74
+ <section class="hero" aria-labelledby="hero-heading">
75
+ <div class="container">
76
+ <span class="eyebrow"><span class="dot"></span>Identity Verification</span>
77
+ <h1 id="hero-heading">Fast, accurate <span class="grad">Government ID verification.</span></h1>
78
+ <p class="lede">
79
+ There are many ways to verify a customer's identity through their online activity, location, and
80
+ social media. Government ID verification with Token of Trust combines traditional eyeball verification
81
+ with innovative technology — confirming passports, licenses, and IDs in real time.
82
+ </p>
83
+ <div class="cta-row">
84
+ <a class="btn btn-green" href="https://app.tokenoftrust.com">Start For Free</a>
85
+ <a class="btn btn-line" href="/contact/">Talk to an expert</a>
86
+ </div>
87
+ </div>
88
+ </section>
89
+
90
+ <section aria-labelledby="cap-heading">
91
+ <div class="container">
92
+ <div class="center reveal">
93
+ <span class="kicker">Capabilities</span>
94
+ <h2 id="cap-heading">Secure, real-time ID verification</h2>
95
+ <p class="section-lede">Everything you need to validate government-issued identity documents with confidence.</p>
96
+ </div>
97
+ <div class="feature-grid reveal">
98
+ <article class="feat-card accent">
99
+ <h3>Real-time ID verification</h3>
100
+ <p>Secure and accurate real-time ID verification services that combine automated checks with proven verification
101
+ technology.</p>
102
+ </article>
103
+ <article class="feat-card accent">
104
+ <h3>Reliable government ID checks</h3>
105
+ <p>Efficient and reliable government ID checks that validate the document type against official standards.</p>
106
+ </article>
107
+ <article class="feat-card accent">
108
+ <h3>License &amp; ID validation</h3>
109
+ <p>Timely validation of driver's licenses and IDs, confirming legitimacy against government-issued document
110
+ requirements.</p>
111
+ </article>
112
+ <article class="feat-card accent">
113
+ <h3>Increased certainty</h3>
114
+ <p>Cutting-edge technology delivers precise, dependable results so every ID check is accurate and trustworthy.</p>
115
+ </article>
116
+ <article class="feat-card accent">
117
+ <h3>Universally accepted audit trail</h3>
118
+ <p>Maintains a clear, compliant record of every verification, supporting regulatory adherence and transparency.</p>
119
+ </article>
120
+ <article class="feat-card accent">
121
+ <h3>Customary user experience</h3>
122
+ <p>Integrates smoothly into existing systems and workflows for a familiar, intuitive verification process.</p>
123
+ </article>
124
+ </div>
125
+ </div>
126
+ </section>
127
+
128
+ <section class="alt-bg" aria-labelledby="how-heading">
129
+ <div class="container">
130
+ <div class="center reveal">
131
+ <span class="kicker">How it works</span>
132
+ <h2 id="how-heading">From upload to decision</h2>
133
+ </div>
134
+ <div class="steps reveal">
135
+ <div class="step">
136
+ <span class="num">01</span>
137
+ <h3>Recognize valid ID templates</h3>
138
+ <p>The system verifies the validity of ID templates against official standards to catch IDs with fake
139
+ templates.</p>
140
+ </div>
141
+ <div class="step">
142
+ <span class="num">02</span>
143
+ <h3>Verify individual ID elements</h3>
144
+ <p>Key elements — expiration date, name, photo, date of birth, and address — are checked for accuracy.</p>
145
+ </div>
146
+ <div class="step">
147
+ <span class="num">03</span>
148
+ <h3>Live or static photo option</h3>
149
+ <p>Users upload a photo or take a live selfie to match the ID, improving verification security.</p>
150
+ </div>
151
+ <div class="step">
152
+ <span class="num">04</span>
153
+ <h3>Detailed verification results</h3>
154
+ <p>Detailed results show clear reasons for why a customer is verified or not verified.</p>
155
+ </div>
156
+ </div>
157
+ </div>
158
+ </section>
159
+
160
+ <section aria-labelledby="verify-heading">
161
+ <div class="container">
162
+ <div class="split reveal">
163
+ <div class="split-copy">
164
+ <span class="kicker">Verify more customers</span>
165
+ <h2 id="verify-heading">Broad coverage, seamless integration</h2>
166
+ <p>
167
+ Token of Trust's automated government ID verification integrates with platforms like Shopify and
168
+ WooCommerce, ensuring quick compliance and enhanced customer protection for verifying identities on
169
+ your site.
170
+ </p>
171
+ <a class="card-link" href="/product/verification/coverage/">See verification coverage →</a>
172
+ </div>
173
+ <ul class="check-list">
174
+ <li><b>Coverage in 251 countries</b><span>Extensive verification coverage spanning 251 countries; data
175
+ verification is also available within the US and Canada.</span></li>
176
+ <li><b>Efficient and accurate</b><span>Quick, precise validation of expiration dates and personal details
177
+ — saving time and improving accuracy.</span></li>
178
+ <li><b>Enhanced security with live verification</b><span>Automated decision-making based on reliable
179
+ data lets you focus on your core business.</span></li>
180
+ </ul>
181
+ </div>
182
+ </div>
183
+ </section>
184
+
185
+ <section class="alt-bg" aria-labelledby="privacy-heading">
186
+ <div class="container center reveal">
187
+ <span class="kicker">Trust through privacy</span>
188
+ <h2 id="privacy-heading">Fostering trust through privacy</h2>
189
+ <p class="section-lede">
190
+ Our commitment to privacy runs deep within the fabric of our solutions. Through cutting-edge security
191
+ and encryption, Token of Trust provides a trustworthy foundation for businesses seeking reliable
192
+ identity and compliance solutions.
193
+ </p>
194
+ <div class="reassure-row">
195
+ <div class="reassurance"><b>256-bit SSL</b><span>Encryption 100% of the time on every device.</span></div>
196
+ <div class="reassurance"><b>We never sell your data</b><span>Your business and consumer data stays yours.</span></div>
197
+ <div class="reassurance"><b>GDPR compliant</b><span>Aligned with GDPR and global privacy laws.</span></div>
198
+ </div>
199
+ </div>
200
+ </section>
201
+
202
+ <section aria-labelledby="related-heading">
203
+ <div class="container">
204
+ <div class="center reveal">
205
+ <span class="kicker">Related verification</span>
206
+ <h2 id="related-heading">Layer in more identity signals</h2>
207
+ </div>
208
+ <div class="feature-grid three reveal">
209
+ <article class="feat-card">
210
+ <h3>Biometric Selfie</h3>
211
+ <p>Match a live selfie to the ID with biometric facial analysis for stronger identity ownership.</p>
212
+ <a class="card-link" href="/product/verification/biometric-selfie/">Explore biometric selfie →</a>
213
+ </article>
214
+ <article class="feat-card">
215
+ <h3>Document Verification</h3>
216
+ <p>Validate industry-specific documents such as utility bills, bank statements, and insurance documents.</p>
217
+ <a class="card-link" href="/product/verification/document-verification/">Explore document verification
218
+ →</a>
219
+ </article>
220
+ <article class="feat-card">
221
+ <h3>Electronic Identity Verification</h3>
222
+ <p>Confirm identities against authoritative databases during checkout or onboarding.</p>
223
+ <a class="card-link" href="/product/verification/electronic-identity-verification/">Explore data verification
224
+ →</a>
225
+ </article>
226
+ </div>
227
+ </div>
228
+ </section>
229
+
230
+ <section aria-labelledby="faq-heading">
231
+ <div class="container">
232
+ <div class="center reveal">
233
+ <span class="kicker">FAQ</span>
234
+ <h2 id="faq-heading">Frequently asked questions</h2>
235
+ </div>
236
+ <div class="faq reveal">
237
+ <details><summary>Does Token of Trust verify passports?</summary><p>Yes. Token of Trust offers passport
238
+ ID verification through its automated ID verification system, confirming authenticity and compliance in
239
+ real time.</p></details>
240
+ <details><summary>Can you check national ID cards?</summary><p>For national ID verification, Token of Trust
241
+ conducts a thorough national identity card check — validating the details on the card and confirming its
242
+ legitimacy to ensure it is a valid government-issued ID.</p></details>
243
+ <details><summary>Do you verify driver's licenses?</summary><p>Yes. Token of Trust provides driver's license
244
+ verification through a secure online process, checking each license for authenticity and compliance in
245
+ real time.</p></details>
246
+ <details><summary>What ID types are supported?</summary><p>Token of Trust handles various government-issued
247
+ IDs, including passport verification, national ID card verification, and driver's license verification.</p></details>
248
+ </div>
249
+ </div>
250
+ </section>
251
+
252
+ <section aria-labelledby="cta-heading">
253
+ <div class="container">
254
+ <div class="cta-band reveal">
255
+ <span class="kicker">Ready to safely acquire new customers?</span>
256
+ <h2 id="cta-heading">Verify government IDs with confidence</h2>
257
+ <p>Free trial. No credit card needed. Start verifying customers today, or talk to our team about your requirements.</p>
258
+ <div class="cta-row">
259
+ <a class="btn btn-green" href="https://app.tokenoftrust.com">Start For Free</a>
260
+ <a class="btn btn-line" href="/contact/">Contact Sales</a>
261
+ </div>
262
+ </div>
263
+ </div>
264
+ </section>
265
+ </main>
266
+
267
+ <footer class="site">
268
+ <div class="container">
269
+ <div class="foot-grid">
270
+ <div>
271
+ <a class="brand" href="/" aria-label="Token of Trust home"><img src="/tenants/tokenoftrust/logo-wordmark.png" alt="Token of Trust" width="156" height="34" style="height:34px;width:auto;display:block"></a>
272
+ <p class="foot-note">Customer verification and compliance for regulated ecommerce. 256-bit SSL. We will
273
+ NEVER sell your data. GDPR · CCPA · PIPEDA.</p>
274
+ </div>
275
+ <nav aria-label="Platform footer"><h3>Platform</h3><ul>
276
+ <li><a href="/product/verification/">Identity Verification</a></li>
277
+ <li><a href="/product/age-assurance/">Age Assurance</a></li>
278
+ <li><a href="/product/fraud-prevention/">Fraud Prevention</a></li>
279
+ <li><a href="/product/">All products</a></li>
280
+ </ul></nav>
281
+ <nav aria-label="Industries footer"><h3>Industries</h3><ul>
282
+ <li><a href="/solutions/">All industries</a></li>
283
+ <li><a href="/vlp-cigars-and-tobacco/">Tobacco &amp; Vape</a></li>
284
+ <li><a href="/vlp-alcohol/">Wine &amp; Spirits</a></li>
285
+ <li><a href="/industries/cannabis/">Cannabis</a></li>
286
+ </ul></nav>
287
+ <nav aria-label="Company footer"><h3>Company</h3><ul>
288
+ <li><a href="/company/">Company</a></li>
289
+ <li><a href="/careers/">Careers</a></li>
290
+ <li><a href="/pricing/">Pricing</a></li>
291
+ <li><a href="/contact/">Contact Sales</a></li>
292
+ </ul></nav>
293
+ </div>
294
+ <p class="copyright">© 2026 Token of Trust®. All rights reserved.</p>
295
+ </div>
296
+ </footer>
297
+
298
+ <script>
299
+ (function(){
300
+ var burger = document.getElementById('hamburger');
301
+ var nav = document.getElementById('primaryNav');
302
+ burger.addEventListener('click', function(){ var open = nav.classList.toggle('open'); burger.setAttribute('aria-expanded', open ? 'true' : 'false'); });
303
+ var io = new IntersectionObserver(function(entries){ entries.forEach(function(e){ if(e.isIntersecting){ e.target.classList.add('in'); io.unobserve(e.target); } }); }, {threshold:.12});
304
+ document.querySelectorAll('.reveal').forEach(function(el){ io.observe(el); });
305
+ })();
306
+ </script>
307
+ </body>
308
+ </html>
@@ -0,0 +1,183 @@
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <link rel="icon" type="image/png" href="/tenants/tokenoftrust/favicon.png">
7
+ <title>Identity Verification — Government ID, Biometrics &amp; AML | Token of Trust</title>
8
+ <meta name="description" content="Match a real person to a real identity: government ID, electronic identity, document, and biometric verification plus AML screening — one platform for regulated ecommerce.">
9
+ <link rel="canonical" href="https://tokenoftrust.com/product/verification/">
10
+ <meta name="robots" content="index,follow,max-image-preview:large">
11
+ <meta property="og:type" content="website">
12
+ <meta property="og:site_name" content="Token of Trust">
13
+ <meta property="og:title" content="Identity Verification">
14
+ <meta property="og:description" content="Government ID, electronic identity, document, and biometric verification plus AML screening.">
15
+ <meta property="og:url" content="https://tokenoftrust.com/product/verification/">
16
+ <meta name="twitter:card" content="summary_large_image">
17
+ <meta name="twitter:title" content="Token of Trust — Identity Verification">
18
+ <meta name="twitter:description" content="Know exactly who you're dealing with.">
19
+ <script type="application/ld+json">
20
+ {
21
+ "@context": "https://schema.org",
22
+ "@graph": [
23
+ {
24
+ "@type": "Organization",
25
+ "@id": "https://tokenoftrust.com/#org",
26
+ "name": "Token of Trust",
27
+ "url": "https://tokenoftrust.com/",
28
+ "logo": "/tenants/tokenoftrust/logo-icon.png",
29
+ "slogan": "Real Customers. Less Fraud. More Trust."
30
+ },
31
+ {
32
+ "@type": "CollectionPage",
33
+ "name": "Identity Verification",
34
+ "url": "https://tokenoftrust.com/product/verification/"
35
+ }
36
+ ]
37
+ }
38
+ </script>
39
+ <link rel="stylesheet" href="/tenants/tokenoftrust/themes/tot-navy.css">
40
+ <link rel="stylesheet" href="/tenants/tokenoftrust/pages/mkt.css">
41
+ </head>
42
+ <body>
43
+ <a class="skip-link" href="#main">Skip to main content</a>
44
+
45
+ <header class="site">
46
+ <div class="container nav-row">
47
+ <a class="brand" href="/" aria-label="Token of Trust home"><img src="/tenants/tokenoftrust/logo-wordmark.png" alt="Token of Trust" width="156" height="34" style="height:34px;width:auto;display:block"></a>
48
+ <nav class="primary" id="primaryNav" aria-label="Primary">
49
+ <ul>
50
+ <li><a class="active" href="/product/" aria-current="page">Platform</a></li>
51
+ <li><a href="/solutions/">Industries</a></li>
52
+ <li><a href="/company/">Company</a></li>
53
+ <li><a href="/resources/">Resources</a></li>
54
+ <li><a href="/pricing/">Pricing</a></li>
55
+ <li><a href="https://app.tokenoftrust.com">Login</a></li>
56
+ </ul>
57
+ </nav>
58
+ <div class="nav-cta">
59
+ <a class="btn btn-line" href="/contact/">Book Demo</a>
60
+ <a class="btn btn-green" href="https://app.tokenoftrust.com">Start For Free</a>
61
+ <button class="hamburger" id="hamburger" aria-label="Toggle navigation menu" aria-expanded="false" aria-controls="primaryNav"><span></span><span></span><span></span></button>
62
+ </div>
63
+ </div>
64
+ </header>
65
+
66
+ <main id="main">
67
+ <nav class="container crumbs" aria-label="Breadcrumb"><a href="/">Home</a><span class="sep">›</span><a href="/product/">Platform</a><span class="sep">›</span>Identity
68
+ Verification</nav>
69
+
70
+ <section class="hero" aria-labelledby="hero-heading">
71
+ <div class="container">
72
+ <span class="eyebrow"><span class="dot"></span>Identity verification</span>
73
+ <h1 id="hero-heading">Know exactly <span class="grad">who you're dealing with.</span></h1>
74
+ <p class="lede">Match a real person to a real identity with documents, biometrics, and authoritative databases
75
+ — from a single integration that works across every country you serve.</p>
76
+ <div class="cta-row">
77
+ <a class="btn btn-green" href="https://app.tokenoftrust.com">Start For Free</a>
78
+ <a class="btn btn-line" href="/contact/">Book Demo</a>
79
+ </div>
80
+ </div>
81
+ </section>
82
+
83
+ <div class="proof" aria-label="Coverage and trust signals">
84
+ <div class="container">
85
+ <span><b>200+</b> countries covered</span>
86
+ <span class="sep" aria-hidden="true">·</span>
87
+ <span><b>GDPR · CCPA · PIPEDA</b> compliant</span>
88
+ <span class="sep" aria-hidden="true">·</span>
89
+ <span><b>256-bit SSL</b> encryption</span>
90
+ <span class="sep" aria-hidden="true">·</span>
91
+ <span>We will <b>never sell your data</b></span>
92
+ </div>
93
+ </div>
94
+
95
+ <section aria-labelledby="id-heading">
96
+ <div class="container">
97
+ <div class="center reveal">
98
+ <span class="kicker">Verification methods</span>
99
+ <h2 id="id-heading">Every way to prove an identity</h2>
100
+ <p class="section-lede">Layer the checks you need — documents, biometrics, and data — to fit your risk
101
+ and compliance requirements.</p>
102
+ </div>
103
+ <div class="feature-grid">
104
+ <article class="feat-card accent reveal"><h3>Government ID Verification</h3><p>Fast, automated verification
105
+ of driver's licenses, passports, and national ID cards.</p><a class="card-link" href="/product/verification/government-id-verification/">Explore
106
+ &rarr;</a></article>
107
+ <article class="feat-card accent reveal"><h3>Electronic Identity Verification</h3><p>Identity checks against
108
+ private and public authoritative databases.</p><a class="card-link" href="/product/verification/electronic-identity-verification/">Explore
109
+ &rarr;</a></article>
110
+ <article class="feat-card accent reveal"><h3>Document Verification</h3><p>Secure document capture and cross-referencing
111
+ to detect tampering and forgery.</p><a class="card-link" href="/product/verification/document-verification/">Explore
112
+ &rarr;</a></article>
113
+ <article class="feat-card accent reveal"><h3>Biometric Selfie &amp; Liveness</h3><p>Real-time face match
114
+ and liveness to prove the person is really there.</p><a class="card-link" href="/product/verification/biometric-selfie/">Explore
115
+ &rarr;</a></article>
116
+ <article class="feat-card accent reveal"><h3>Sanction &amp; Watchlist (AML)</h3><p>Screen against PEP,
117
+ sanctions, and watchlists for AML compliance.</p><a class="card-link" href="/product/verification/aml/">Explore
118
+ &rarr;</a></article>
119
+ <article class="feat-card accent reveal"><h3>Identity Coverage</h3><p>See supported documents and databases
120
+ across every country you serve.</p><a class="card-link" href="/product/verification/coverage/">Explore
121
+ &rarr;</a></article>
122
+ </div>
123
+ </div>
124
+ </section>
125
+
126
+ <section aria-labelledby="cta-heading">
127
+ <div class="container">
128
+ <div class="cta-band reveal">
129
+ <span class="kicker">Get started</span>
130
+ <h2 id="cta-heading">Build trust into every transaction</h2>
131
+ <p>Start free — no credit card needed. Or talk to our team about the right verification path for your products
132
+ and jurisdictions.</p>
133
+ <div class="cta-row">
134
+ <a class="btn btn-ent" href="https://app.tokenoftrust.com">Start For Free</a>
135
+ <a class="btn btn-line" href="/contact/">Contact Sales</a>
136
+ </div>
137
+ </div>
138
+ </div>
139
+ </section>
140
+ </main>
141
+
142
+ <footer class="site">
143
+ <div class="container">
144
+ <div class="foot-grid">
145
+ <div>
146
+ <a class="brand" href="/" aria-label="Token of Trust home"><img src="/tenants/tokenoftrust/logo-wordmark.png" alt="Token of Trust" width="156" height="34" style="height:34px;width:auto;display:block"></a>
147
+ <p class="foot-note">Customer verification and compliance for regulated ecommerce. 256-bit SSL. We will
148
+ NEVER sell your data. GDPR · CCPA · PIPEDA.</p>
149
+ </div>
150
+ <nav aria-label="Platform footer"><h3>Platform</h3><ul>
151
+ <li><a href="/product/verification/">Identity Verification</a></li>
152
+ <li><a href="/product/age-assurance/">Age Assurance</a></li>
153
+ <li><a href="/product/fraud-prevention/">Fraud Prevention</a></li>
154
+ <li><a href="/product/">All products</a></li>
155
+ </ul></nav>
156
+ <nav aria-label="Industries footer"><h3>Industries</h3><ul>
157
+ <li><a href="/solutions/">All industries</a></li>
158
+ <li><a href="/vlp-cigars-and-tobacco/">Tobacco &amp; Vape</a></li>
159
+ <li><a href="/vlp-alcohol/">Wine &amp; Spirits</a></li>
160
+ <li><a href="/industries/cannabis/">Cannabis</a></li>
161
+ </ul></nav>
162
+ <nav aria-label="Company footer"><h3>Company</h3><ul>
163
+ <li><a href="/company/">Company</a></li>
164
+ <li><a href="/careers/">Careers</a></li>
165
+ <li><a href="/pricing/">Pricing</a></li>
166
+ <li><a href="/contact/">Contact Sales</a></li>
167
+ </ul></nav>
168
+ </div>
169
+ <p class="copyright">© 2026 Token of Trust®. All rights reserved.</p>
170
+ </div>
171
+ </footer>
172
+
173
+ <script>
174
+ (function(){
175
+ var burger = document.getElementById('hamburger');
176
+ var nav = document.getElementById('primaryNav');
177
+ burger.addEventListener('click', function(){ var open = nav.classList.toggle('open'); burger.setAttribute('aria-expanded', open ? 'true' : 'false'); });
178
+ var io = new IntersectionObserver(function(entries){ entries.forEach(function(e){ if(e.isIntersecting){ e.target.classList.add('in'); io.unobserve(e.target); } }); }, {threshold:.12});
179
+ document.querySelectorAll('.reveal').forEach(function(el){ io.observe(el); });
180
+ })();
181
+ </script>
182
+ </body>
183
+ </html>