Checkout public
Endpoint-uri publice pentru fluxul de checkout. Nu necesita autentificare.
Aceste endpoint-uri alimenteaza pagina publica de checkout de la https://paylinks.ro/p/{slug}.
GET /paylinks/public
Listeaza paylink-urile publice active pentru sitemap/indexare.
curl https://api.paylinks.ro/api/v1/paylinks/public
Raspuns (200):
{
"items": [
{
"slug": "premium-course",
"updatedAt": "2026-02-17T10:00:00.000Z"
}
]
}
GET /paylinks/public/:slug
Obtine un singur paylink public dupa slug.
curl https://api.paylinks.ro/api/v1/paylinks/public/premium-course
Raspuns (200): Obiectul complet al paylink-ului public.
Raspuns (404): PayLink negasit.
POST /paylinks/public/:slug/payment-intents
Creaza un Stripe payment intent pentru checkout.
curl -X POST https://api.paylinks.ro/api/v1/paylinks/public/premium-course/payment-intents \
-H "Content-Type: application/json" \
-d '{
"email": "[email protected]",
"phone": "+40712345678",
"amount": 49.99
}'
Corpul cererii:
| Camp | Tip | Obligatoriu | Descriere |
|---|---|---|---|
email | string | Nu | Email-ul cumparatorului (obligatoriu daca paylink-ul colecteaza email) |
phone | string | Nu | Telefonul cumparatorului |
amount | number | Nu | Suma in unitati majore (obligatorie pentru FLEXIBLE) |
address | object | Nu | Campuri de adresa de facturare |
Raspuns (200):
{
"client_secret": "pi_1234567890_secret_abc123",
"connectedAccountId": "acct_1234567890"
}
Foloseste client_secret cu Stripe.js pentru confirmarea platii.
POST /paylinks/public/:slug/leads
Revendica un paylink gratuit (nu necesita plata).
curl -X POST https://api.paylinks.ro/api/v1/paylinks/public/free-ebook/leads \
-H "Content-Type: application/json" \
-d '{"email": "[email protected]", "name": "Maria"}'
Corpul cererii:
| Camp | Tip | Obligatoriu | Descriere |
|---|---|---|---|
email | string | Nu | Adresa de email (email sau telefon este obligatoriu) |
phone | string | Nu | Telefon (email sau telefon este obligatoriu) |
name | string | Nu | Numele |
Raspuns (201):
{"success": true}
POST /paylinks/public/:slug/subscriptions
Creeaza sau confirma un abonament pentru un paylink recurent.
curl -X POST https://api.paylinks.ro/api/v1/paylinks/public/monthly-plan/subscriptions \
-H "Content-Type: application/json" \
-d '{
"email": "[email protected]",
"name": "Ion",
"paymentMethodId": "pm_1234567890"
}'
Corpul cererii:
| Camp | Tip | Obligatoriu | Descriere |
|---|---|---|---|
email | string | Nu | Email-ul abonatului (obligatoriu daca paylink-ul colecteaza email) |
name | string | Nu | Numele abonatului |
paymentMethodId | string | Nu | ID-ul metodei de plata Stripe (pasul 2) |
customerId | string | Nu | ID client Stripe existent (pasul 1) |
phone | string | Nu | Telefon abonat |
address | object | Nu | Campuri de adresa de facturare |
Raspuns (200, pasul 1):
{
"step": "setup",
"client_secret": "seti_1234567890_secret_abc123",
"customerId": "cus_1234567890",
"connectedAccountId": "acct_1234567890"
}
Raspuns (200, pasul 2):
{
"step": "complete",
"subscriptionId": "sub_1234567890",
"status": "active",
"client_secret": null,
"paymentIntentStatus": null,
"connectedAccountId": "acct_1234567890"
}