Produkter & funktioner
Definiera vad du säljer. Skapa produkter med en eller flera varianter, koppla återanvändbara funktioner för behörighetsbaserad åtkomstkontroll.
Proyecta Commerce använder tre begrepp: produkter, varianter och funktioner.
- Produkt — det du säljer (t.ex. “Pro-plan”, “T-shirt”, “Strategisamtal”)
- Variant — en prisnivå eller konfiguration av en produkt (t.ex. “Pro månadsvis 29 $”, “Pro årsvis 290 $”, “T-shirt – Large”)
- Funktion — en återanvändbar behörighetsnyckel som din app kontrollerar vid körningstid (t.ex.
pro_features,unlimited_projects,api_access)
En produkt kan ha flera varianter. En produkt har också en eller flera resurser kopplade till sig — vanligtvis funktioner — som ger åtkomst när en kund prenumererar.
Skapa en produkt
Section titled “Skapa en produkt”I Dashboard > Commerce > Products, klicka på Create product (eller fråga AI:n: "Create a Pro plan at $29/month and a Business plan at $99/month."). Varje produkt behöver:
- Ett visningsnamn (t.ex. “Pro”)
- Minst en variant
Varianter
Section titled “Varianter”Varje variant har sin egen prissättning:
| Fält | Kommentarer |
|---|---|
name | Visningsetikett för varianten (“Monthly”, “Annual”, “Large”) |
currency | Trebokstavs ISO-kod — USD, EUR, GBP, JPY, BRL, MXN, INR… (SDK:et stöder 130+) |
unit_amount | Pris i den minsta valutaenheten (ören/cent). 2900 = 29,00 $ |
recurring | Valfritt — { interval: 'week' | 'month' | 'year' }. Utelämna för engångspriser. Daglig fakturering stöds inte för närvarande. |
is_default | Accepteras men tillämpas inte ännu — val av standardvariant är inte implementerat för tillfället. |
media | Koppla bilder eller videor via CDN-fil-ID (se Filer) |
Prissättning är oföränderlig. När en variant har skapats kan dess pris inte ändras — skapa en ny variant i stället. Detta skyddar befintliga prenumeranter från oavsiktliga prisändringar.
Funktioner (behörigheter)
Section titled “Funktioner (behörigheter)”Funktioner är den grundläggande åtkomstkontrollmekanismen. Skapa en funktion en gång och koppla den sedan till en eller flera produkter.
// Create a featureconst pro = await proyecta.commerce.features.create({ name: 'Pro features', description: 'Unlocks the Pro tier capabilities', // optional custom id — lowercase alphanumeric and underscores only (e.g. 'pro_features')});När du skapar en produkt kopplar du funktioner till den via “resurser”. Kunder som prenumererar på en produkt får åtkomst till alla funktioner som är kopplade till den.
Kontrollera sedan i din app om en kund har åtkomst:
const { has_access } = await proyecta.commerce.check({ customer_id: 'cus_123', resource_id: 'pro_features',});Obs:
resource_idmåste vara funktionens nyckel — sluggen som härleds från funktionens namn (t.ex.pro_features), inte funktionsobjektets.id-egenskap som returneras avfeatures.create().
Så här begränsar du åtkomsten till Pro-exklusiva sidor, API-endpoints eller funktioner i din appkod.
Vanliga produktformer
Section titled “Vanliga produktformer”SaaS-prenumerationer
Create products: Free ($0/month), Pro ($29/month, $290/year), Business ($99/month, $990/year).Attach a 'pro_features' feature to Pro and Business so I can gate access in my code.Fysiska varor
Create a T-shirt product with three variants: Small, Medium, Large at $25 each.Digitala varor
Create a course product with a single one-time variant at $149.Donationer
Create a donation product with three variants: $25, $50, $100 — all one-time.Proyecta Commerce spårar för närvarande inte lager för fysiska produkter. Om du säljer lagerförda artiklar hanterar du lagersaldon i din apps databas och kontrollerar dem i ditt checkout-flöde.
Kommer snart
Section titled “Kommer snart”- Anpassning av checkout-fält — samla in ytterligare information från köpare
- Betala-vad-du-vill-prissättning
- Inbyggd lagerspårning för fysiska produkter