Sari la conținut

Produse și funcționalități

Definește ce vinzi. Creează produse cu una sau mai multe variante, atașează funcționalități reutilizabile pentru controlul accesului bazat pe drepturi.

Proyecta Commerce folosește trei concepte: produse, variante și funcționalități.

  • Produs — ceea ce vinzi (ex. „Plan Pro“, „Tricou“, „Sesiune de strategie“)
  • Variantă — un nivel de prețuri sau o configurație a unui produs (ex. „Pro Lunar $29“, „Pro Anual $290“, „Tricou – Large“)
  • Funcționalitate — o cheie de acces reutilizabilă pe care aplicația ta o verifică la runtime (ex. pro_features, unlimited_projects, api_access)

Un produs poate avea mai multe variante. Un produs are, de asemenea, una sau mai multe resurse atașate — de obicei funcționalități — care acordă acces atunci când un client se abonează.

Commerce se integrează cu restul platformei, astfel că există două forme pentru „un lucru pe care îl vinzi“ — iar Proyecta o alege pe cea potrivită pentru tine:

  • Produse native Commerce — abonamente, planuri, upgrade-uri unice și funcționalități/drepturi de acces. Definite direct în Admin > Commerce > Products. Acesta este modelul descris în restul acestei pagini.
  • Un catalog de storefront bazat pe conținut — produse cu fotografii, prețuri și descrieri pe care un proprietar de afacere le editează zilnic. Acestea există în CMS ca o colecție vandabilă: fiecare intrare este produsul. Când o intrare este publicată, Proyecta o integrează automat în Commerce ca un produs real, achiziționabil — creând produsul și varianta sa cu preț pentru tine și copiind prețul direct din câmpul de conținut. Storefrontul afișează prețul din conținut, iar checkout-ul taxează varianta asociată; deoarece împărtășesc o singură sursă, ele nu pot diverge niciodată. Gestionezi aceste articole ca și conținut (în Admin-ul aplicației tale, în builder sau pe site-ul publicat), nu în Commerce > Products. Vezi Gestionarea conținutului.

Un catalog simplu care nu acceptă plăți cu cardul — un meniu de navigare sau un magazin al cărui buton „cumpără“ deschide un link de comandă pe WhatsApp — este pur și simplu conținut obișnuit — o colecție catalog obișnuită, fără integrare Commerce. Checkout-ul cu cardul este cel care face o colecție vandabilă.

În Admin > Commerce > Products, apasă Create product (sau întreabă AI-ul: "Create a Pro plan at $29/month and a Business plan at $99/month."). Fiecare produs are nevoie de:

  • Un nume de afișare (ex. „Pro“)
  • Cel puțin o variantă

Fiecare variantă are propriul preț:

Câmp Note
name Eticheta de afișare pentru variantă („Monthly“, „Annual“, „Large“)
currency Cod ISO din trei litere — USD, EUR, GBP, JPY, BRL, MXN, INR… (130+ suportate)
unit_amount Prețul în cea mai mică unitate monetară (cenți). 2900 = $29.00
recurring Opțional — { interval: 'week' | 'month' | 'year' }. Omite pentru prețuri unice. Facturarea zilnică nu este momentan suportată.
is_default Acceptat, dar neimplementat încă — selectarea variantei implicite nu este momentan implementată.
media Atașează imagini sau videoclipuri prin ID-ul fișierului CDN (vezi Fișiere)

Prețurile sunt imuabile. Odată creată o variantă, prețul acesteia nu poate fi modificat — creează o variantă nouă în schimb. Aceasta îi protejează pe abonații existenți de modificări accidentale ale prețului.

Funcționalitățile reprezintă elementul de bază pentru controlul accesului. Creează o funcționalitate o singură dată în Admin > Commerce > Products, apoi atașeaz-o la unul sau mai multe produse. Fiecare funcționalitate are un nume, o descriere opțională și o cheie — litere mici, cifre și liniuțe de subliniere (ex. pro_features) — care este ceea ce verifică aplicația ta.

Când creezi un produs, îi atașezi funcționalități prin intermediul „resurselor“. Clienții care se abonează la un produs obțin acces la toate funcționalitățile atașate acestuia.

Apoi, în aplicația ta, poți restricționa accesul pe baza acelei chei:

const { hasAccess, isLoading } = useEntitlement('pro_features');
if (isLoading) return <Spinner />;
if (!hasAccess) return <UpgradePrompt />;
return <ProOnlyThing />;

Verificarea se execută pe server față de sesiunea autentificată, deci nu poate fi falsificată din browser. Vezi Integrează Commerce în aplicația mea pentru modelul complet.

Notă: Restricționează întotdeauna accesul pe baza cheii funcționalității — slug-ul derivat din numele funcționalității (ex. pro_features) — nu pe baza ID-ului intern al funcționalității.

Astfel poți restricționa accesul la pagini, endpoint-uri API sau funcționalități rezervate pentru Pro în codul aplicației tale.

Abonamente SaaS

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.

Produse fizice

Create a T-shirt product with three variants: Small, Medium, Large at $25 each.

Produse digitale

Create a course product with a single one-time variant at $149.

Donații

Create a donation product with three variants: $25, $50, $100 — all one-time.

Proyecta Commerce nu urmărește momentan inventarul pentru produsele fizice. Dacă vinzi articole stocate, gestionează cantitățile din stoc în baza de date a aplicației tale și verifică-le în fluxul de checkout.

  • Personalizarea câmpurilor de checkout — colectează informații suplimentare de la cumpărători
  • Prețuri „plătești cât vrei“
  • Urmărirea inventarului integrată pentru produse fizice