Skip to main content

OSPI — Open Standard Product Identification

Build with OSPI

OSPI issues globally unique, checksum-verified product identifiers and gives organizations a shared, documented REST API for product master data, inventory, cross-organization sharing, search and ordering.

Checksum verified

Product Identity

Every product and variant gets a single, checksum-verified global identifier — mintable in the same call that creates the product.

OSPI-ACME-123456-00012345-0001-00000001-1-47J

Scoped by Sharing Grant

Cross-Organization Sharing

A Connection between two organizations plus a scoped Sharing Grant control exactly which products, categories and data a partner can see.

dataCategories: ["PRODUCT_DATA", "INVENTORY"]

No auth required

Public Code Resolver

Scan a code, no login: resolve an OSPI code to its product, manufacturer, variants and public documents without authentication.

GET /api/v1/search/resolve/:code

What the platform covers

The MVP scope defined in the Project Constitution, plus every domain chapter implemented on top of it: Identity & Organizations, Producer & OSPI Codes, Products & Variants, Categories & Attributes, Documents, Inventory, Connections & Sharing, Search & Discovery, Ordering & Commerce, and a Digital Product Passport scaffold.

Identity & OSPI Codes

Producer Codes and OSPI Codes give every product and variant a single, checksum-verified global identifier — mintable in the same call that creates a product.

Product master data

Products, variants, categories and a schema-driven attribute engine, with completeness scoring that gates publication.

Cross-organization sharing

Connections between organizations plus scoped Sharing Grants control exactly which products, categories and data are visible to a partner.

Search, resolve & order

Full-text product search, a public OSPI code resolver, and a complete offer → order → order group → fulfilment flow.

Every route is versioned

Every resource lives under /api/v1/…, uses a single Authorization: Bearer header for both user JWTs and ospi_<clientId>.<secret> API keys, and returns errors as { error: { code, message, requestId } }.

Read the authentication guide