Always
compliant.

One barcode. One link. The current batch — at every shelf, on every page, the moment a brand publishes.

How it works

A barcode
is a permanent
address.

The brand owns it. The retailer attaches it once. What it points to is replaced — atomically — when the next batch publishes. No re-uploads. No version drift. No emails.

01
Brand registers a product.
A barcode receives a permanent resolver. It does not change again, regardless of who carries the product or where.
→ labs.raddadlabs.com/c/{barcode}
02
Retailer attaches the link.
A single Shopify metafield, set once per product. The theme renders it as a “Lab Results” link in the buy box. The retailer is finished.
→ rdlabs.coa_url
03
Brand publishes a batch.
The brand drops the new COA from their lab. The resolver pointer flips. Every page everywhere now serves the new document.
→ pointer.flip(batch.id)
04
Every read is current.
Retailer page, regulator lookup, consumer scan — same address, same document. Each read is logged: who, when, from where.
→ append-only audit log
Who it serves

Three sides
of the same record.

A brand publishes once. A retailer attaches once. A distributor watches the permits expire on a calendar. Nothing else moves.

Brands

Publish once. The shelf updates itself.

Drop a COA on a barcode. Every retailer carrying that product points to the new document — across every store and every storefront — before you have left the page. The audit trail writes itself.

Begin as a brand →
Retailers

One link. Set it. Forget it.

A single Shopify metafield per barcode. Once it is set, every new batch flows through it without anyone touching the page again. The Lab Results link in the buy box always points to what is on the shelf right now.

Begin as a retailer →
Distributors

Know who you can sell to today.

Every retailer in your book on a single board. ATC permits sorted by expiry, alerted at sixty, thirty, and seven days. March 31st stops being a fire drill. The orders you take are the orders you can ship.

Begin as a distributor →
The consumer

A small mark
on a jar.

A consumer scans the sticker. They see what the brand published, the day they published it — the current batch, not a PDF from a launch deck, not whatever was on the shelf last quarter. Nothing more is required of them. Nothing less is acceptable from us.