Plătiți fără a părăsi pagina.
Un snippet JavaScript drop-in care afișează codul QR sau un buton deep-link direct pe pagina dvs. de checkout — trei rânduri de cod, fără formular de card, fără redirecționare, fără PCI.
Trei rânduri pe pagina dvs., niciun formular de card nicăieri.
Serverul comerciantului creează plata cu suma fixată pe server. Browserul nu deține niciodată decât un paymentId opac — un token de capabilitate, nu un preț.
<script src="https://js.miapos.eu/v1/"></script> <div id="mia-pay"></div> <script> miaPOS.mount('#mia-pay', { paymentId, // created server-side; amount is fixed there onSuccess: () => location = '/thank-you', onFail: (e) => console.warn(e.reason), locale: 'ro' | 'ru' | 'en', }); </script>
Widget-ul rulează în propriul Shadow DOM, monitorizează starea plății și declanșează onSuccess în momentul în care banca confirmă. Backend-ul comerciantului primește în paralel un webhook semnat RSA — aceasta este sursa adevărului pentru comandă. Închiderea tabului cumpărătorului nu pierde niciodată plata.
Cum funcționează.
De la coș la confirmare, pe pagina proprie a comerciantului.
/pay cu cheia secretă și un Idempotency-Key. Suma este fixată aici, pe backend-ul comerciantului. Răspunsul este un paymentId.miaPOS.mount('#el', { paymentId, ... }). Widget-ul citește endpoint-ul public de checkout, limitat la capabilitate, și afișează codul QR (desktop) sau un buton „Plătește în aplicația bancară” (mobil).onSuccess al widget-ului se declanșează în paralel, dar este folosit doar pentru a redirecționa tab-ul cumpărătorului.Un singur snippet, fiecare canal cu webview.
Snippet-ul este agnostic față de canal prin design — fără redirecționări dure, fără cookie-uri, fără cuplaj window.location. Același modul rulează oriunde rulează un webview.
| Canal | Webview | Snippet rulează | Note |
|---|---|---|---|
| Site-ul comerciantului | Browser | Da — așa cum este | Cazul de utilizare principal. |
| Telegram | Mini App | Da — același cod | Widget-ul rulează în interiorul webview-ului Mini App. |
| Instagram și TikTok | Link-out | Da — pe landing | Din linkul bio / Live / Shop către un landing miaPOS care rulează același snippet. |
| Niciun | Nu în chat | Meta nu permite un webview în chat. Backend-ul este reutilizat nemodificat printr-un link CTA către o pagină de checkout găzduită. |
Ce este — și ce nu este.
Embed checkout este unul dintre cele două moduri de e-commerce. Sunt complementare, nu concurente.
Este
- Un snippet JavaScript pe care comerciantul îl integrează în pagina sa de checkout
- O extensie aditivă a protocolului e-commerce existent — plugin-urile de redirecționare continuă să funcționeze nemodificate
- Un nucleu agnostic față de canal — același cod poate rula într-un Telegram Mini App
- Doar rail IP — fără date de card, fără PAN, fără 3DS, fără PCI
- Un endpoint limitat la capabilitate — browserul nu deține niciodată decât
paymentId
Nu este
- Un înlocuitor pentru linkurile de plată — acestea dețin în continuare scenariile no-code / factură / QR pe bon
- Un procesor de carduri — nu sunt implicate carduri în niciun moment
- O pagină pe domeniul nostru într-un iframe — widget-ul își afișează propriul UI
- Sursa adevărului pentru comandă — aceasta este webhook-ul de pe backend-ul comerciantului
- O experiență în chat pe WhatsApp — Meta nu permite un webview acolo
„Cel mai rapid checkout este cel care solicită cele mai puține câmpuri.”
Pentru comercianții care își dețin propriul checkout — și propriile chat-uri.
Snippet-ul embed se potrivește acolo unde brandul este al comerciantului, nu al nostru.
Magazine web D2C
Păstrați cumpărătorul pe pagina brandului de la coș la confirmare. Checkout-ul nu trece niciodată pe un domeniu terț.
HoReCa și servicii
Precomenzi, depozite și fluxuri de rezervare în-bot în Telegram Mini Apps — același snippet rulează acolo.
Bunuri digitale
Decontare instant, deblocare instant. Widget-ul declanșează onSuccess în momentul în care banca confirmă.
Comerț social
Link-out din Instagram și TikTok către un landing care rulează același snippet — un singur nucleu de acceptare.
Abonamente și SaaS
Plățile recurente depind de rail, acolo unde IPS-ul de bază le suportă.
Marketplace-uri și platforme
Integrați snippet-ul în checkout-ul unui tenant fără a face fork la integrare per tenant.