@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,228 @@
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>Platform — Identity, Age &amp; Compliance Products | Token of Trust</title>
8
+ <meta name="description" content="The Token of Trust platform: identity verification, age assurance, fraud prevention, AML, PACT Act, and tax compliance — one suite for regulated ecommerce.">
9
+ <link rel="canonical" href="https://tokenoftrust.com/product/">
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="The Token of Trust Platform">
14
+ <meta property="og:description" content="Identity, age, fraud, and compliance — one platform for regulated ecommerce.">
15
+ <meta property="og:url" content="https://tokenoftrust.com/product/">
16
+ <meta name="twitter:card" content="summary_large_image">
17
+ <meta name="twitter:title" content="Token of Trust — Platform">
18
+ <meta name="twitter:description" content="One platform for identity, age, fraud, and compliance.">
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": "Token of Trust Platform",
34
+ "url": "https://tokenoftrust.com/product/"
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>Platform</nav>
68
+
69
+ <section class="hero" aria-labelledby="hero-heading">
70
+ <div class="container">
71
+ <span class="eyebrow"><span class="dot"></span>Platform</span>
72
+ <h1 id="hero-heading">One platform for <span class="grad">identity, age &amp; compliance.</span></h1>
73
+ <p class="lede">From a single integration, verify who your customers are, confirm they're old enough, stop
74
+ fraud, and stay compliant across every jurisdiction you sell in.</p>
75
+ <div class="cta-row">
76
+ <a class="btn btn-green" href="https://app.tokenoftrust.com">Start For Free</a>
77
+ <a class="btn btn-line" href="/contact/">Book Demo</a>
78
+ </div>
79
+ </div>
80
+ </section>
81
+
82
+ <div class="proof" aria-label="Coverage and trust signals">
83
+ <div class="container">
84
+ <span><b>200+</b> countries covered</span>
85
+ <span class="sep" aria-hidden="true">·</span>
86
+ <span><b>GDPR · CCPA · PIPEDA</b> compliant</span>
87
+ <span class="sep" aria-hidden="true">·</span>
88
+ <span><b>256-bit SSL</b> encryption</span>
89
+ <span class="sep" aria-hidden="true">·</span>
90
+ <span>We will <b>never sell your data</b></span>
91
+ </div>
92
+ </div>
93
+
94
+ <section aria-labelledby="id-heading">
95
+ <div class="container">
96
+ <div class="center reveal">
97
+ <span class="kicker">Identity verification</span>
98
+ <h2 id="id-heading">Know exactly who you're dealing with</h2>
99
+ <p class="section-lede">Match a real person to a real identity with documents, biometrics, and authoritative
100
+ databases.</p>
101
+ </div>
102
+ <div class="feature-grid">
103
+ <article class="feat-card accent reveal"><h3>Government ID Verification</h3><p>Fast, automated verification
104
+ of driver's licenses, passports, and national ID cards.</p><a class="card-link" href="/product/verification/government-id-verification/">Explore
105
+ &rarr;</a></article>
106
+ <article class="feat-card accent reveal"><h3>Electronic Identity Verification</h3><p>Identity checks against
107
+ private and public authoritative databases.</p><a class="card-link" href="/product/verification/electronic-identity-verification/">Explore
108
+ &rarr;</a></article>
109
+ <article class="feat-card accent reveal"><h3>Document Verification</h3><p>Secure document capture and cross-referencing
110
+ to detect tampering and forgery.</p><a class="card-link" href="/product/verification/document-verification/">Explore
111
+ &rarr;</a></article>
112
+ <article class="feat-card accent reveal"><h3>Biometric Selfie &amp; Liveness</h3><p>Real-time face match
113
+ and liveness to prove the person is really there.</p><a class="card-link" href="/product/verification/biometric-selfie/">Explore
114
+ &rarr;</a></article>
115
+ <article class="feat-card accent reveal"><h3>Sanction &amp; Watchlist (AML)</h3><p>Screen against PEP,
116
+ sanctions, and watchlists for AML compliance.</p><a class="card-link" href="/product/verification/aml/">Explore
117
+ &rarr;</a></article>
118
+ <article class="feat-card accent reveal"><h3>Identity Coverage</h3><p>See supported documents and databases
119
+ across every country you serve.</p><a class="card-link" href="/product/verification/coverage/">Explore
120
+ &rarr;</a></article>
121
+ </div>
122
+ <p class="center inline-links reveal"><a href="/product/verification/">See all identity verification &rarr;</a></p>
123
+ </div>
124
+ </section>
125
+
126
+ <section class="alt-bg" aria-labelledby="age-heading">
127
+ <div class="container">
128
+ <div class="center reveal">
129
+ <span class="kicker">Age assurance</span>
130
+ <h2 id="age-heading">Sell age-restricted products with confidence</h2>
131
+ <p class="section-lede">Meet age laws without wrecking conversion — from a light-touch gate to document-grade
132
+ proof.</p>
133
+ </div>
134
+ <div class="feature-grid three">
135
+ <article class="feat-card reveal"><h3>Age Verification</h3><p>Document- and data-backed proof of age for
136
+ regulated checkouts.</p><a class="card-link" href="/product/age-assurance/age-verification/">Explore &rarr;</a></article>
137
+ <article class="feat-card reveal"><h3>Age Estimation</h3><p>Privacy-first facial age estimation in seconds,
138
+ nothing stored.</p><a class="card-link" href="/product/age-assurance/age-estimation/">Explore &rarr;</a></article>
139
+ <article class="feat-card reveal"><h3>Age Gate</h3><p>Customizable age and location gate for your storefront.</p><a class="card-link" href="/product/age-assurance/age-gate/">Explore
140
+ &rarr;</a></article>
141
+ </div>
142
+ <p class="center inline-links reveal"><a href="/product/age-assurance/">See all age assurance &rarr;</a></p>
143
+ </div>
144
+ </section>
145
+
146
+ <section aria-labelledby="comp-heading">
147
+ <div class="container">
148
+ <div class="center reveal">
149
+ <span class="kicker">Fraud, compliance &amp; tax</span>
150
+ <h2 id="comp-heading">Reduce risk and automate the paperwork</h2>
151
+ <p class="section-lede">Stop bad orders and let us handle AML, PACT Act, and excise-tax obligations.</p>
152
+ </div>
153
+ <div class="feature-grid">
154
+ <article class="feat-card reveal"><h3>Fraud Prevention</h3><p>Stop chargebacks, account takeover, promo
155
+ and return abuse at checkout.</p><a class="card-link" href="/product/fraud-prevention/">Explore &rarr;</a></article>
156
+ <article class="feat-card reveal"><h3>AML &amp; Watchlist</h3><p>Anti-money-laundering screening and monitoring
157
+ built into onboarding.</p><a class="card-link" href="/product/compliance/aml/">Explore &rarr;</a></article>
158
+ <article class="feat-card reveal"><h3>PACT Act Compliance</h3><p>Streamlined PACT Act registration, reporting,
159
+ and shipment filing.</p><a class="card-link" href="/product/compliance/pact-act/">Explore &rarr;</a></article>
160
+ <article class="feat-card reveal"><h3>Excise Tax</h3><p>Automated excise-tax calculation, collection, and
161
+ filing.</p><a class="card-link" href="/product/tax/excise-tax/">Explore &rarr;</a></article>
162
+ <article class="feat-card reveal"><h3>Social Profile Verification</h3><p>Confirm and enrich a customer's
163
+ social presence for added trust.</p><a class="card-link" href="/product/social-profile-verification/">Explore
164
+ &rarr;</a></article>
165
+ <article class="feat-card reveal"><h3>Pricing</h3><p>Transparent plans for every verification path and
166
+ volume.</p><a class="card-link" href="/pricing/">See pricing &rarr;</a></article>
167
+ </div>
168
+ </div>
169
+ </section>
170
+
171
+ <section aria-labelledby="cta-heading">
172
+ <div class="container">
173
+ <div class="cta-band reveal">
174
+ <span class="kicker">Get started</span>
175
+ <h2 id="cta-heading">Build trust into every transaction</h2>
176
+ <p>Start free — no credit card needed. Or talk to our team about a compliance workflow for your products
177
+ and jurisdictions.</p>
178
+ <div class="cta-row">
179
+ <a class="btn btn-ent" href="https://app.tokenoftrust.com">Start For Free</a>
180
+ <a class="btn btn-line" href="/contact/">Contact Sales</a>
181
+ </div>
182
+ </div>
183
+ </div>
184
+ </section>
185
+ </main>
186
+
187
+ <footer class="site">
188
+ <div class="container">
189
+ <div class="foot-grid">
190
+ <div>
191
+ <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>
192
+ <p class="foot-note">Customer verification and compliance for regulated ecommerce. 256-bit SSL. We will
193
+ NEVER sell your data. GDPR · CCPA · PIPEDA.</p>
194
+ </div>
195
+ <nav aria-label="Platform footer"><h3>Platform</h3><ul>
196
+ <li><a href="/product/verification/">Identity Verification</a></li>
197
+ <li><a href="/product/age-assurance/">Age Assurance</a></li>
198
+ <li><a href="/product/fraud-prevention/">Fraud Prevention</a></li>
199
+ <li><a href="/product/">All products</a></li>
200
+ </ul></nav>
201
+ <nav aria-label="Industries footer"><h3>Industries</h3><ul>
202
+ <li><a href="/solutions/">All industries</a></li>
203
+ <li><a href="/vlp-cigars-and-tobacco/">Tobacco &amp; Vape</a></li>
204
+ <li><a href="/vlp-alcohol/">Wine &amp; Spirits</a></li>
205
+ <li><a href="/industries/cannabis/">Cannabis</a></li>
206
+ </ul></nav>
207
+ <nav aria-label="Company footer"><h3>Company</h3><ul>
208
+ <li><a href="/company/">Company</a></li>
209
+ <li><a href="/careers/">Careers</a></li>
210
+ <li><a href="/pricing/">Pricing</a></li>
211
+ <li><a href="/contact/">Contact Sales</a></li>
212
+ </ul></nav>
213
+ </div>
214
+ <p class="copyright">© 2026 Token of Trust®. All rights reserved.</p>
215
+ </div>
216
+ </footer>
217
+
218
+ <script>
219
+ (function(){
220
+ var burger = document.getElementById('hamburger');
221
+ var nav = document.getElementById('primaryNav');
222
+ burger.addEventListener('click', function(){ var open = nav.classList.toggle('open'); burger.setAttribute('aria-expanded', open ? 'true' : 'false'); });
223
+ var io = new IntersectionObserver(function(entries){ entries.forEach(function(e){ if(e.isIntersecting){ e.target.classList.add('in'); io.unobserve(e.target); } }); }, {threshold:.12});
224
+ document.querySelectorAll('.reveal').forEach(function(el){ io.observe(el); });
225
+ })();
226
+ </script>
227
+ </body>
228
+ </html>
@@ -0,0 +1,220 @@
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>BigCommerce Integration — Age &amp; Identity Verification | Token of Trust</title>
8
+ <meta name="description" content="Enhance trust and security on your BigCommerce store with Token of Trust's app integration for age and identity verification.">
9
+ <link rel="canonical" href="https://tokenoftrust.com/resources/integrations/bigcommerce-integration/">
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="BigCommerce + Token of Trust Integration">
14
+ <meta property="og:description" content="Age and identity verification for your BigCommerce store — enhance trust, reduce fraud, and stay compliant.">
15
+ <meta property="og:url" content="https://tokenoftrust.com/resources/integrations/bigcommerce-integration/">
16
+ <meta name="twitter:card" content="summary_large_image">
17
+ <meta name="twitter:title" content="BigCommerce + Token of Trust Integration">
18
+ <meta name="twitter:description" content="Age and identity verification for BigCommerce.">
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": "BigCommerce Integration | Token of Trust",
34
+ "url": "https://tokenoftrust.com/resources/integrations/bigcommerce-integration/"
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 href="/product/">Platform</a></li>
51
+ <li><a href="/solutions/">Industries</a></li>
52
+ <li><a href="/company/">Company</a></li>
53
+ <li><a class="active" href="/resources/" aria-current="page">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="crumbs container" aria-label="Breadcrumb">
68
+ <a href="/">Home</a><span class="sep">›</span>
69
+ <a href="/resources/">Resources</a><span class="sep">›</span>
70
+ <a href="/resources/integrations/">Integrations</a><span class="sep">›</span>
71
+ <span aria-current="page">BigCommerce</span>
72
+ </nav>
73
+
74
+ <section class="hero" aria-labelledby="hero-heading">
75
+ <div class="container">
76
+ <span class="eyebrow"><span class="dot"></span>BigCommerce Integration</span>
77
+ <h1 id="hero-heading">BigCommerce + Token of Trust <span class="grad">Integration.</span></h1>
78
+ <p class="lede">
79
+ The most comprehensive identity verification solution for BigCommerce. Add age and identity
80
+ verification to your store to enhance trust and security, reduce fraud, and stay compliant.
81
+ </p>
82
+ <div class="cta-row">
83
+ <a class="btn btn-green" href="https://app.tokenoftrust.com">Start For Free</a>
84
+ <a class="btn btn-line" href="https://help.tokenoftrust.com">Read the docs</a>
85
+ </div>
86
+ </div>
87
+ </section>
88
+
89
+ <section aria-labelledby="steps-heading">
90
+ <div class="container">
91
+ <div class="center reveal">
92
+ <span class="kicker">How to install</span>
93
+ <h2 id="steps-heading">Add verification to BigCommerce in a few steps</h2>
94
+ <p class="section-lede">Connect Token of Trust to your BigCommerce store and start verifying
95
+ customers at checkout.</p>
96
+ </div>
97
+ <div class="steps reveal">
98
+ <div class="step"><span class="num">1</span><h3>Create your account</h3><p>Sign up for Token of Trust and
99
+ set up your organization and verification policy.</p></div>
100
+ <div class="step"><span class="num">2</span><h3>Install the app</h3><p>Add the Token of Trust app to your
101
+ BigCommerce store from the BigCommerce Apps marketplace.</p></div>
102
+ <div class="step"><span class="num">3</span><h3>Configure your rules</h3><p>Choose which products or checkouts
103
+ require age or identity verification and set your workflows.</p></div>
104
+ <div class="step"><span class="num">4</span><h3>Go live</h3><p>Publish and start verifying customers automatically
105
+ at checkout — loyal buyers move through faster.</p></div>
106
+ </div>
107
+ <p class="center" style="margin-top:28px"><a class="btn btn-line" href="https://help.tokenoftrust.com">Read
108
+ the docs</a></p>
109
+ </div>
110
+ </section>
111
+
112
+ <section aria-labelledby="feat-heading">
113
+ <div class="container">
114
+ <div class="center reveal">
115
+ <span class="kicker">Why Token of Trust</span>
116
+ <h2 id="feat-heading">Comprehensive verification for your store</h2>
117
+ <p class="section-lede">Token of Trust offers a wide range of features to help you protect your
118
+ eCommerce site from fraud and abuse, comply with regulations, and archive customer verification
119
+ records securely.</p>
120
+ </div>
121
+ <div class="feature-grid reveal">
122
+ <article class="feat-card accent">
123
+ <h3>Compliance</h3>
124
+ <p>Comply with regulations such as age-restricted products with Token of Trust's identity
125
+ verification software. Our solution is trusted by businesses of all sizes to help them stay
126
+ compliant with regulations like GDPR, CCPA, and HIPAA.</p>
127
+ </article>
128
+ <article class="feat-card accent">
129
+ <h3>Fraud &amp; Chargebacks</h3>
130
+ <p>Reduce fraud risk and chargeback headaches. Our software uses a variety of methods to verify
131
+ users and ensure that only legitimate users are able to create accounts and make purchases on
132
+ your site.</p>
133
+ </article>
134
+ <article class="feat-card accent">
135
+ <h3>Security</h3>
136
+ <p>Archive customer verification records on Token of Trust's secure vault to retrieve in the
137
+ future without storing data on your BigCommerce store. Our vault uses bank-level encryption, so
138
+ you can be confident that your data is safe and secure.</p>
139
+ </article>
140
+ <article class="feat-card accent">
141
+ <h3>Fast lane for loyal customers</h3>
142
+ <p>Token of Trust's patented platform recognizes your loyal customers and provides them with a
143
+ streamlined checkout experience. New customers are checked against authoritative databases in
144
+ seconds, and any customers that require additional information are handled within our automated
145
+ workflows.</p>
146
+ </article>
147
+ <article class="feat-card accent">
148
+ <h3>Reputation Reports</h3>
149
+ <p>View Reputation Reports for each consumer to understand what data was checked, how the checks
150
+ performed, and what decision was made. Access granular verification data while maintaining
151
+ compliance with privacy laws and regulations.</p>
152
+ </article>
153
+ <article class="feat-card accent">
154
+ <h3>Designed for privacy</h3>
155
+ <p>Consumers remain in control of identity and we keep sensitive data safe. Token of Trust uses
156
+ 256-bit SSL encryption 100% of the time on every device, will never sell your data, and is
157
+ compliant with GDPR and global privacy laws.</p>
158
+ </article>
159
+ </div>
160
+ </div>
161
+ </section>
162
+
163
+ <section aria-labelledby="cta-heading">
164
+ <div class="container">
165
+ <div class="cta-band reveal">
166
+ <span class="kicker">Ready to get started?</span>
167
+ <h2 id="cta-heading">Questions about how Token of Trust can fit into your business?</h2>
168
+ <p>Our Sales team can help you find the right solution for your BigCommerce store. Start free, or
169
+ talk to sales.</p>
170
+ <div class="cta-row">
171
+ <a class="btn btn-green" href="https://app.tokenoftrust.com">Start For Free</a>
172
+ <a class="btn btn-line" href="/contact/">Contact Sales</a>
173
+ </div>
174
+ </div>
175
+ </div>
176
+ </section>
177
+ </main>
178
+
179
+ <footer class="site">
180
+ <div class="container">
181
+ <div class="foot-grid">
182
+ <div>
183
+ <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>
184
+ <p class="foot-note">Customer verification and compliance for regulated ecommerce. 256-bit SSL. We will
185
+ NEVER sell your data. GDPR · CCPA · PIPEDA.</p>
186
+ </div>
187
+ <nav aria-label="Platform footer"><h3>Platform</h3><ul>
188
+ <li><a href="/product/verification/">Identity Verification</a></li>
189
+ <li><a href="/product/age-assurance/">Age Assurance</a></li>
190
+ <li><a href="/product/fraud-prevention/">Fraud Prevention</a></li>
191
+ <li><a href="/product/">All products</a></li>
192
+ </ul></nav>
193
+ <nav aria-label="Industries footer"><h3>Industries</h3><ul>
194
+ <li><a href="/solutions/">All industries</a></li>
195
+ <li><a href="/vlp-cigars-and-tobacco/">Tobacco &amp; Vape</a></li>
196
+ <li><a href="/vlp-alcohol/">Wine &amp; Spirits</a></li>
197
+ <li><a href="/industries/cannabis/">Cannabis</a></li>
198
+ </ul></nav>
199
+ <nav aria-label="Company footer"><h3>Company</h3><ul>
200
+ <li><a href="/company/">Company</a></li>
201
+ <li><a href="/careers/">Careers</a></li>
202
+ <li><a href="/pricing/">Pricing</a></li>
203
+ <li><a href="/contact/">Contact Sales</a></li>
204
+ </ul></nav>
205
+ </div>
206
+ <p class="copyright">© 2026 Token of Trust®. All rights reserved.</p>
207
+ </div>
208
+ </footer>
209
+
210
+ <script>
211
+ (function(){
212
+ var burger = document.getElementById('hamburger');
213
+ var nav = document.getElementById('primaryNav');
214
+ burger.addEventListener('click', function(){ var open = nav.classList.toggle('open'); burger.setAttribute('aria-expanded', open ? 'true' : 'false'); });
215
+ var io = new IntersectionObserver(function(entries){ entries.forEach(function(e){ if(e.isIntersecting){ e.target.classList.add('in'); io.unobserve(e.target); } }); }, {threshold:.12});
216
+ document.querySelectorAll('.reveal').forEach(function(el){ io.observe(el); });
217
+ })();
218
+ </script>
219
+ </body>
220
+ </html>