Przejdź do głównej zawartości

Klienci

Zarządzaj użytkownikami rozliczanymi w swojej aplikacji w zakładce Dashboard > Commerce > Customers lub przez SDK.

Klient to podmiot w Twojej aplikacji, który jest obciążany kosztami — zazwyczaj użytkownik, organizacja lub projekt. Tworzysz go w Proyecta w momencie, gdy odpowiadający mu rekord pojawi się w Twojej własnej bazie danych, a następnie zapisujesz zwrócone id, aby móc się do niego odwoływać później.

Otwórz Dashboard > Commerce i przełącz się na Customers, aby zobaczyć wszystkich rozliczanych klientów bieżącej aplikacji. Każdy wiersz pokazuje:

  • Adres e-mail
  • Imię i nazwisko
  • Datę utworzenia

Pole wyszukiwania oraz filtrowanie według adresu e-mail lub daty utworzenia są dostępne przez SDK; bardziej rozbudowane opcje w panelu są w planach.

import Proyecta from '@proyecta-ai/sdk';
const proyecta = new Proyecta({ apiKey: process.env.PROYECTA_API_KEY });
const customer = await proyecta.commerce.customers.create({
email: 'alice@example.com',
name: 'Alice Liddell',
phone: '+14155551234', // E.164 format
address: {
line1: '123 Wonderland Ave',
city: 'San Francisco',
state: 'CA',
postal_code: '94110',
country: 'US',
},
});
// Single customer
const customer = await proyecta.commerce.customers.get({ customerId: 'cus_123' });
// Paginate
const result = await proyecta.commerce.customers.list({ limit: '20' });
for (const customer of result.data) {
console.log(customer.name, customer.email);
}
await proyecta.commerce.customers.update({ customerId: 'cus_123', email: 'new@example.com', address: { ... } });

Tworzenie klienta Proyecta podczas rejestracji użytkownika

When a new user finishes signup, call proyecta.commerce.customers.create
with their email and name. Store the returned id on the user record as
proyecta_customer_id.

Budowanie panelu administracyjnego z listą klientów

Build an admin page at /admin/customers that lists every Proyecta customer
with their email, name, created date, and a link to view their detail page.
Use proyecta.commerce.customers.list to paginate through all customers.

Czy powinienem tworzyć klienta Proyecta dla każdego użytkownika, czy tylko dla płacących?

Twórz go dla każdego użytkownika. Jest to bezpłatne, idempotentne (wywołania z tym samym adresem e-mail zwracają tego samego klienta) i sprawia, że jesteś gotowy w chwili, gdy użytkownik przejdzie na płatny plan — bez potrzeby uzupełniania danych po fakcie.

Czy klient może mieć wiele subskrypcji?

Tak. Subskrypcje należą do klientów, a nie odwrotnie. Użyj commerce.checkout(), aby utworzyć nową sesję checkout dla subskrypcji.

Jak sprawdzić, co klient ma wykupione w subskrypcji?

Obecnie: przez wbudowany panel Stripe lub wywołując commerce.check() dla każdej interesującej Cię funkcji. Widok historii subskrypcji w panelu jest na roadmapie.