diff --git a/packages/billing/core/src/create-billing-schema.ts b/packages/billing/core/src/create-billing-schema.ts index 159f4616e..ce4f9c875 100644 --- a/packages/billing/core/src/create-billing-schema.ts +++ b/packages/billing/core/src/create-billing-schema.ts @@ -173,7 +173,12 @@ export const PlanSchema = z ) .refine( (item) => { - const ids = item.lineItems.map((item) => item.id); + // metered line items can be shared across plans + const lineItems = item.lineItems.filter( + (item) => item.type !== LineItemType.Metered, + ); + + const ids = lineItems.map((item) => item.id); return ids.length === new Set(ids).size; },