Sari la conținut

Integrare Stripe

Integrare Stripe România — Checkout, Elements și subscriptions

Implementăm Stripe pentru firme RO: Checkout hosted, Elements custom cu Stripe.js, Payment Links, subscriptions cu metered billing și webhook handling complet pentru payment_intent.succeeded. Fees 1.4-2.9%, fără abonament lunar. De la 300€.

3DS SCA conform PSD2
Webhook handler verificat
Subscriptions + metered
Cod sursă livrat

Ce primesti

Implementare Stripe completă — de la cont configurat la webhook live

Cont Stripe configurat pentru firmă RO

Setup cont Stripe cu detaliile firmei (CUI, IBAN, beneficiar real conform ANAF), verificare identitate cu acte fondator, conectare cont bancar pentru payout-uri săptămânale, configurare statement descriptor pentru extrasul de card al clienților. Documentat ce am setat și de ce.

Stripe Checkout sau Elements custom

Checkout hosted (redirect pe pagină Stripe gata făcută, conversie bună, zero PCI scope) sau Elements custom integrat în brand-ul tău cu Stripe.js client-side și PaymentIntent server. Alegerea o facem după nevoile UX vs efort. Ambele suportă 3DS automat.

Webhook handler cu verificare semnătură

Endpoint /api/webhooks/stripe care verifică obligatoriu semnătura cu stripe.webhooks.constructEvent și STRIPE_WEBHOOK_SECRET. Procesează payment_intent.succeeded pentru fulfillment, payment_intent.payment_failed pentru recovery, charge.refunded pentru contabilitate. Idempotent.

Subscriptions cu metered billing

Pentru SaaS: planuri recurente cu trial, proration la upgrade/downgrade, metered billing (Stripe Billing API) pentru cantități variabile pe lună (ex: API calls, storage GB). Customer Portal Stripe pentru self-service cancel și update card.

Refund flow în admin

Panou admin (Next.js sau WP) pentru refund total/parțial via /v1/refunds cu motiv documentat (requested_by_customer, duplicate, fraudulent). Sincronizare automată cu sistemul tău de comenzi și notificare client prin email.

Strong Customer Authentication 3DS

Handling complet 3D Secure 2 conform PSD2 SCA (Strong Customer Authentication). Stripe.js declanșează automat challenge bancar când e necesar, frontend nostru așteaptă confirmCardPayment și redirectează corect. Reduce decline rate cu 15-25%.

Integrare SmartBill pentru facturi

Conectare cu API SmartBill: la webhook payment_intent.succeeded generăm automat factură fiscală cu numele/CUI clientului (dacă e PJ) și o trimitem prin email. Compatibilă cu ANAF e-Factura pentru tranzacții B2B obligatorii din 2025.

Multi-currency și carduri internaționale

Configurare pentru a accepta plăți în EUR, RON, USD, GBP, cu conversie automată la curs Stripe (fees 1% peste exchange). Carduri Visa, Mastercard, American Express, plus Apple Pay și Google Pay pentru conversie mobilă maximă.

Cum functioneaza

De la „vreau Stripe” la primele plăți live în 1-3 săptămâni

Zilele 1-2

Discovery + alegere arhitectură

Discutăm volumul lunar estimat, currency principal, dacă vrei recurring (SaaS) sau one-off (e-commerce), unde plătesc majoritatea clienților (RO/EU/global). Alegem: Payment Links, Checkout hosted sau Elements custom. Estimăm fees Stripe lunar.

Zilele 3-4

Setup cont Stripe + verificare firmă

Creare cont Stripe România, completare detalii firmă (CUI, IBAN, beneficiar real), upload acte ANAF pentru verificare, conectare cont bancar pentru payout. Stripe verifică firma în 1-3 zile lucrătoare — în paralel începem dezvoltarea în test mode.

Zilele 5-10

Implementare endpoints + UI

Server: route /api/checkout care apelează /v1/checkout/sessions cu line_items și metadata order. Client: butoane plată sau formular Elements cu Stripe.js. Webhook handler /api/webhooks/stripe cu verificare semnătură. Pagini success/cancel cu retrieval session.

Zilele 11-13

Testare cu carduri test mode

Testare end-to-end cu carduri Stripe test (4242 4242 4242 4242 succes, 4000 0000 0000 9995 decline, 4000 0027 6000 3184 3DS required). Verificare webhook delivery cu Stripe CLI local. Testare refund flow și subscription cancel din Customer Portal.

Zilele 14-16

Go-live + monitorizare

Switch chei test → live (env vars separate), prima tranzacție reală în supervised mode cu echipa ta, monitorizare Sentry + Healthchecks.io pentru webhook, dashboard intern KPI plăți. Primele 7 zile checking zilnic, apoi monitoring automat.

Detaliu tehnic

Endpoints Stripe pe care le integrăm în arhitectura ta

/v1/checkout/sessions

Checkout Session

Creează sesiune Stripe Checkout cu line_items, metadata order ID, success_url și cancel_url. Server-side, apelat din /api/checkout route handler. Returnează URL redirect pentru client.

payment_intent.succeeded

Webhook event

Webhook handler la /api/webhooks/stripe ascultă acest event, verifică semnătura cu STRIPE_WEBHOOK_SECRET, marchează order paid în baza ta de date, declanșează fulfillment și factură SmartBill.

/v1/refunds

Refund flow

Endpoint admin pentru rambursări total sau parțial cu motiv documentat. Trimite charge.refunded webhook automat care actualizează status order și notifică client prin email.

Pe partea de client folosim Stripe.js (încărcat async pentru zero impact PageSpeed) pentru a permite formulare Elements custom în brand-ul tău, cu handling automat 3DS prin confirmCardPayment. Toate apelurile server folosesc idempotency keys pentru a evita duplicate charges la retry-uri network.

Stack suportat

Integrăm Stripe pe orice stack — alegem după cazul tău

WooCommerce

Plugin oficial Stripe Payments + customizare hooks pentru metadata order și webhook handler suplimentar pentru SmartBill.

Shopify

Gateway Stripe nativ (alternativă la Shopify Payments). Util când vrei brand transparent fără mențiuni „powered by Shopify”.

PrestaShop

Modul oficial Stripe + adaptare templates checkout pentru flow optim conversie și suport 3DS PSD2.

Magento 2

Extension oficială Stripe Payments cu suport subscriptions și marketplace multi-vendor pentru proiecte enterprise.

Next.js custom

App Router route handlers /api/checkout și /api/webhooks/stripe, Stripe SDK npm, Server Components pentru retrieval. Recomandat pentru SaaS.

Astro

API endpoints Astro pentru Stripe Checkout, integrare cu CMS headless (Sanity, Strapi) pentru produse dinamice și conversie maximă.

WordPress headless

WP back pentru gestiune produse + frontend Next.js cu Stripe.js. Best of both worlds pentru clienți non-tehnici cu site rapid.

PHP custom

stripe-php SDK oficial pentru aplicații Laravel, Symfony sau PHP vanilla. Util pentru aplicații enterprise existente unde rescrierea nu se justifică.

Preturi

Trei pachete pentru integrare Stripe — alegi după nevoile reale

Payment Links

300€

livrare 1-3 zile

  • Setup cont Stripe firmă RO
  • Generare Payment Links produse
  • Statement descriptor configurat
  • Pagini success / cancel basic
  • Integrare cu email marketing
  • Documentație + training 30 min
  • 30 zile suport bug-uri
Cere oferta

Checkout + Webhook

600-900€

livrare 7-14 zile

  • Stripe Checkout hosted
  • Webhook handler cu verificare semnătură
  • payment_intent.succeeded → fulfillment
  • Refund flow în admin
  • Integrare SmartBill facturi
  • 3DS SCA handling automat
  • Monitoring Sentry + Healthchecks
  • 90 zile suport + documentație
Cere oferta

Elements + Subscriptions

1200-1500€

livrare 14-21 zile

  • Stripe Elements custom în brand
  • Stripe.js + PaymentIntent flow
  • Subscriptions cu metered billing
  • Proration upgrade/downgrade
  • Customer Portal self-service
  • Multi-currency EUR/RON/USD
  • Dashboard KPI plăți
  • 90 zile suport + mentenanță 2h/lună
Cere oferta

Ce influențează prețul exact

  • Numărul de produse / planuri în catalog — peste 50 produse cresc setup-ul
  • Dacă vrei sau nu metered billing și prorations în subscriptions
  • Integrarea cu sisteme existente: SmartBill, NextUp, CRM, ANAF e-Factura
  • Multi-currency și carduri non-EU implică testare suplimentară
  • Stack-ul existent: WooCommerce e mai rapid, custom PHP legacy mai lent
  • Volumul de tranzacții estimat (peste 1000/lună necesită monitoring avansat)
  • Cerințe compliance suplimentare (PCI DSS SAQ A vs SAQ A-EP)
  • Brand customization la Stripe Elements (custom CSS + flow complet)

Notă fees Stripe (separate de implementare): 1.4% + 0.25€ per tranzacție pentru carduri SEPA emise în EU, 2.9% + 0.25€ pentru carduri non-EU. Fără abonament lunar, fără cost setup la Stripe. Plătești doar pe tranzacții reușite.

Cui se potrivește Stripe

  • SaaS-uri cu clienți internaționali și subscriptions recurente
  • Magazine online care vând în EUR/USD către clienți din EU/global
  • Servicii digitale (cursuri online, software, conținut premium)
  • Marketplace-uri unde nevoie de Stripe Connect pentru split payments
  • Startup-uri care vor stack modern Next.js cu Stripe.js Elements
  • Firme care apreciază dashboard analytics + API matur peste UI românesc

Când recomandăm altceva

  • E-commerce 100% RO cu clienți care preferă BT Pay / Garanti — alegi NETOPIA
  • Volume mici (sub 500€/lună) — fixed fee 0.25€ mănâncă marja
  • Produse high-risk (CBD, supplements, gambling) — Stripe TOS le interzice
  • ONG-uri cu donații recurente low-ticket — Donorbox sau PayPal Giving
  • Firme care vor cash on delivery dominant (Stripe e doar online)
  • Cei care nu vor să gestioneze cont separat Stripe + SmartBill pentru ANAF

Întrebări frecvente

Ce ne întreabă firmele despre integrare Stripe

Cât costă real să integrezi Stripe pentru un site românesc în 2026?

Implementarea o facem între 300€ (Payment Links simple pentru abonamente sau 1-2 produse) și 1500€ (Stripe Elements custom cu Stripe.js, webhook handler complet, subscriptions cu metered billing, panou admin pentru refund-uri). Cele mai multe magazine SMB se încadrează în 600-900€ pentru Stripe Checkout hosted + webhook payment_intent.succeeded + integrare cu SmartBill pentru facturi automate. La asta se adaugă fees Stripe: 1.4% + 0.25€ pentru carduri SEPA emise în EU și 2.9% + 0.25€ pentru carduri non-EU. Nu există abonament lunar Stripe, plătești doar pe tranzacție.

Stripe vs NETOPIA Payments vs PayU — care e potrivit pentru firma mea din România?

Stripe: fees mai mici pentru SEPA (1.4% vs 2.5-3% la procesatoarele RO), API matur cu SDK pentru orice limbaj, dashboard excelent, subscriptions built-in, dar nu acceptă plata din BCR/BT direct (doar card), nu emite facturi pentru ANAF (folosești SmartBill separat). NETOPIA: integrare nativă cu băncile RO, suport BT Pay/Garanti Pay/Apple Pay local, facturare integrată, dar fees 2-2.5% și API mai puțin elegant. PayU: ceva la mijloc. Recomandare: Stripe pentru SaaS/digital + clienți internaționali, NETOPIA pentru e-commerce fizic cu clienți 100% RO.

Cât durează implementarea Stripe pe site-ul meu?

Depinde de scope: Payment Links (zero cod, doar link de plată generat în dashboard Stripe) — 1-2 zile pentru setup cont + testare. Stripe Checkout hosted (redirect către pagină Stripe) pentru magazin online — 3-7 zile cu integrare WooCommerce/Shopify și webhook. Stripe Elements custom (formular plată în site-ul tău) — 7-14 zile cu Stripe.js client-side, server route pentru PaymentIntent, webhook handler, 3DS handling. Subscriptions cu metered billing și prorations — 14-21 zile. Toate includ testare cu carduri Stripe test mode (4242 4242 4242 4242) înainte de go-live.

Ce înseamnă exact integrare Stripe — ce livrăm noi concret?

Livrăm: 1) Cont Stripe configurat cu detaliile firmei RO (CUI, IBAN, beneficiar real conform ANAF). 2) Endpoint /api/checkout care creează Stripe Checkout Session via /v1/checkout/sessions cu metadata pentru order ID. 3) Webhook handler la /api/webhooks/stripe care verifică semnătura cu STRIPE_WEBHOOK_SECRET și procesează payment_intent.succeeded, payment_intent.payment_failed, charge.refunded. 4) Pagini success și cancel cu retrieval session pentru afișare confirmare. 5) Refund flow în admin via /v1/refunds cu motiv documentat. 6) Logging Sentry pentru erori și dashboard intern cu KPI plăți. 7) Documentație pentru echipa ta.

Ce stack-uri suportați pentru integrare Stripe? WooCommerce, Shopify, Next.js, custom?

Toate. WooCommerce: plugin oficial Stripe Payments + customizare hooks pentru order metadata și webhook. Shopify: gateway Stripe nativ (dar Shopify Payments e default — Stripe doar dacă vrei brand transparent). PrestaShop și Magento 2: module oficiale + adaptare templates. Next.js / Astro custom: Stripe SDK npm (@stripe/stripe-js client + stripe Node server), App Router cu route handlers pentru /api/checkout și /api/webhooks/stripe. WordPress headless: WP Plugin pentru produse + Stripe handling în frontend Next.js. PHP custom: stripe-php SDK direct. Pentru subscriptions complex preferăm stack custom Next.js sau Astro — mai curat decât plugin-uri WordPress.

Care sunt erorile cele mai frecvente la integrare Stripe și cum le evitați?

1) Webhook fără verificare semnătură — atacatorul trimite payment_intent.succeeded fake și marchezi comanda plătită. Fix: stripe.webhooks.constructEvent(payload, sig, secret). 2) Cardul cere 3DS și flow-ul nu îl gestionează — picătură comenzilor. Fix: handleNextAction cu stripe.confirmCardPayment client-side. 3) Idempotency lipsă la PaymentIntent creation — duplicate charges la network retry. Fix: idempotency_key în header. 4) Test mode vs live mode mixed — chei amestecate, plăți care nu apar. Fix: env vars separate STRIPE_SECRET_KEY_TEST și _LIVE cu environment guards. 5) Currency hardcoded EUR când vinzi în RON — confuzii contabilitate. Fix: currency din settings firmă.

Ce suport oferiți după ce livrați integrarea Stripe?

90 zile suport bug-uri inclus în implementare: dacă picătură rate plăților sub baseline, dacă webhook nu primește events, dacă apar dispute care necesită răspuns în 7 zile Stripe — intervenim gratuit. Monitoring uptime al endpoint-ului webhook cu Healthchecks.io alertare în 2 minute dacă Stripe nu poate livra. Pentru Stripe API breaking changes (rare, anunțate cu 12 luni înainte): pachet anual 60€/lună include migrările forțate. Documentația noastră permite oricărui dev Stripe să intervină — nu te legăm. Pentru subscription churn analysis și optimizare conversie checkout: pachet consultanță separat.

Când NU recomand Stripe pentru firma mea?

Stripe nu e potrivit dacă: 1) Vinzi exclusiv în RON către clienți din România fără card internațional — NETOPIA Payments e mai potrivită cu BT Pay, Garanti BBVA local, facturare integrată ANAF e-Factura. 2) Ai volum mic (sub 500€/lună tranzacții) — fixed fee 0.25€ per tranzacție mănâncă marja. 3) Firma ta e ONG cu plăți donații recurente low-ticket — preferă Donorbox sau PayPal Giving. 4) Vinzi produse high-risk (CBD, supplements, adult, gambling) — Stripe le interzice prin TOS, cont blocat la prima sesizare. 5) Nu ai stomac pentru hold-uri 7-14 zile la primele plăți noi când Stripe verifică firma — alternativ folosește MultiSafepay sau Mollie.

Integrări complementare

Stripe e doar piesa de plăți — restul ecosistemului

Hai să integrăm

Vrei integrare Stripe pe site-ul tău?

Trimite-ne URL-ul site-ului, volumul lunar estimat și currency principal. Recomandăm Payment Links, Checkout sau Elements și trimitem ofertă detaliată în 4 ore.