productKey and stripePriceId; it never requires internal PriceOS IDs.
Release workflow
POST /v1/pricing-tablescreates version 1 as a draft.POST /v1/pricing-tables/releases/{releaseId}/publishmakes that draft current.POST /v1/pricing-tables/releases/{releaseId}/duplicatecreates the next draft when you need a change.- Update the draft with
PUT /v1/pricing-tables/releases/{releaseId}, then publish it.
Create a table
Build a custom UI
For any framework, use the public loader to receive the resolved table, plans, prices, features, customer state, and release ID:usePricingTable() without rendering the PriceOS component. Send the selected product key, Stripe price ID, and pricingTable.table.releaseId to your authenticated server checkout route; the PriceOS Next.js helper returns the Stripe Checkout URL.