Интеграция коммерции в приложение
Запускай оформление заказов и ограничивай доступ к премиум-функциям прямо из кода приложения.
После подключения Stripe и создания продукта твоё приложение уже может принимать платежи. В приложении, созданном в Proyecta, это работает из браузера через публичный commerce API — тебе не нужно поднимать бэкенд, и секретный ключ здесь не участвует.
Каталоги витрины — это контент. Если твои продукты представляют собой контентную продаваемую коллекцию (см. Продукты и функции), ты читаешь каталог и отображаешь цены через API Контента — данные о продуктах хранятся там. Оформление заказа запускается точно так же, через передачу
variant_idсвязанного Commerce-продукта.
import * as platform from '@/lib/platformClient.ts';import { useEntitlement } from '@/hooks/useEntitlement.ts';Запуск оформления заказа
Заголовок раздела «Запуск оформления заказа»commerceCheckout создаёт checkout-сессию, размещённую на стороне Stripe, и возвращает URL, куда нужно отправить покупателя. Клиента предварительно создавать не нужно — платформа записывает его по самому оформлению заказа:
const { url } = await platform.commerceCheckout({ lineItems: [{ variantId: 'var_pro_monthly', quantity: 1 }], successUrl: 'https://myapp.com/welcome', cancelUrl: 'https://myapp.com/pricing', customerEmail: shopperEmail, // optional — prefills Stripe checkout});
window.location.href = url;Поддерживается несколько позиций в заказе. Для подписок quantity означает количество мест. Если покупатель ввёл промокод, передай его дальше — сервер проверит код и рассчитает скидку по твоим данным Commerce, а не по сумме, присланной из браузера.
Ограничение доступа к премиум-функции
Заголовок раздела «Ограничение доступа к премиум-функции»const { hasAccess, isLoading } = useEntitlement('pro_features');
if (isLoading) return <Spinner />;if (!hasAccess) return <UpgradePrompt />;return <ProOnlyThing />;Ключ — это slug функции (например, pro_features), а не id её объекта. Проверка выполняется на сервере и привязана к авторизованной сессии, поэтому подделать её из браузера нельзя. Подробнее о модели прав доступа см. в разделе Продукты и функции.
Поручи всё это AI
Заголовок раздела «Поручи всё это AI»"Build a /pricing page that shows my products and starts a checkout when a button is clicked.""Gate the /pro route so only customers with pro_features access can see it.""Add a cart with a coupon code field and a Checkout button."