İçeriğe geç

Ürünler ve Özellikler

Ne sattığınızı tanımlayın. Bir veya daha fazla varyant ile ürünler oluşturun, yetkilendirme tabanlı erişim denetimi için yeniden kullanılabilir özellikler ekleyin.

Proyecta Commerce üç kavram kullanır: ürünler, varyantlar ve özellikler.

  • Ürün — sattığınız şey (örn. “Pro Plan”, “T-shirt”, “Strateji Görüşmesi”)
  • Varyant — bir ürünün fiyatlandırma kademesi veya yapılandırması (örn. “Pro Aylık $29”, “Pro Yıllık $290”, “T-shirt – Large”)
  • Özellik — uygulamanızın çalışma zamanında kontrol ettiği yeniden kullanılabilir bir yetki anahtarı (örn. pro_features, unlimited_projects, api_access)

Bir ürünün birden fazla varyantı olabilir. Bir ürüne aynı zamanda bir veya daha fazla kaynak eklenir; bunlar genellikle özelliklerdir ve bir müşteri abone olduğunda erişim hakkı tanır.

Dashboard > Commerce > Products bölümünde Create product düğmesine tıklayın (ya da yapay zekaya sorun: "Create a Pro plan at $29/month and a Business plan at $99/month."). Her ürün için şunlar gereklidir:

  • Bir görünen ad (örn. “Pro”)
  • En az bir varyant

Her varyant kendi fiyatlandırmasını taşır:

AlanNotlar
nameVaryantın görünen etiketi (“Monthly”, “Annual”, “Large”)
currencyÜç harfli ISO kodu — USD, EUR, GBP, JPY, BRL, MXN, INR… (SDK 130’dan fazlasını destekler)
unit_amountEn küçük para birimi cinsinden fiyat (kuruş). 2900 = $29.00
recurringİsteğe bağlı — { interval: 'week' | 'month' | 'year' }. Tek seferlik fiyatlar için belirtmeyin. Günlük faturalandırma şu an desteklenmemektedir.
is_defaultKabul edilir ancak henüz uygulanmaz — varsayılan varyant seçimi şu an için etkin değildir.
mediaCDN dosya kimliğiyle resim veya video ekleyin (bkz. Dosyalar)

Fiyatlandırma değiştirilemez. Bir varyant oluşturulduktan sonra fiyatı değiştirilemez; bunun yerine yeni bir varyant oluşturun. Bu, mevcut abonelerin yanlışlıkla fiyat değişikliğinden etkilenmesini önler.

Özellikler, erişim denetiminin temel yapı taşıdır. Bir özelliği bir kez oluşturun, ardından bir veya daha fazla ürüne ekleyin.

// Create a feature
const 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')
});

Bir ürün oluşturduğunuzda, özellikleri “kaynaklar” aracılığıyla ürüne eklersiniz. Bir ürüne abone olan müşteriler, o ürüne eklenmiş her özelliğe erişim kazanır.

Ardından uygulamanızda bir müşterinin erişimi olup olmadığını kontrol edin:

const { has_access } = await proyecta.commerce.check({
customer_id: 'cus_123',
resource_id: 'pro_features',
});

Not: resource_id, özellik nesnesinin features.create() tarafından döndürülen .id özelliği değil, özellik adından türetilen slug olan özellik anahtarı olmalıdır (örn. pro_features).

Uygulamanızda yalnızca Pro kullanıcılara özel sayfaları, API endpoint’lerini veya özellikleri bu şekilde kısıtlayabilirsiniz.

SaaS abonelikleri

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.

Fiziksel ürünler

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

Dijital ürünler

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

Bağışlar

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

Proyecta Commerce şu an fiziksel ürünler için envanter takibi yapmamaktadır. Stoklu ürünler satıyorsanız stok sayılarını uygulamanızın veritabanında yönetin ve checkout akışınızda kontrol edin.

  • Checkout alan özelleştirmesi — alıcılardan ek bilgi toplama
  • İstediğin kadar öde fiyatlandırması
  • Fiziksel ürünler için yerleşik envanter takibi