Skip to content
PerionPayments

Web, frameworks & mobile

Choose the checkout that fits your app.

Your server talks to the PerionPayments API. Client platforms differ in how safely they can show checkout, keep order state, and come back after the payer approves with their provider.

SurfaceUse it forClient receives
Hosted checkoutBrowser redirects, native and hybrid apps, and frameworks that do not need an inline payment region.The checkout URL only.
Embedded checkoutHTTPS browser pages that can reserve a 320–480 px PerionPayments-owned region and survive top-level provider navigation.A short-lived checkout-session client_secret passed only to PerionPayments.js.
Payment linkWhatsApp, SMS, QR, email, social commerce, and remote assisted sales.The share URL or continuation code.
WEB

React, Next.js, Vue, Angular, and Svelte

Create the checkout on your server. Load the pinned SDK in a client-only component after hydration, keep it mounted during requires_action and processing, call destroy() when it finally unmounts, and read the order from your server after completion.

APP

iOS, Android, React Native, Flutter, and Capacitor

Create a hosted checkout without embed_origin, open its returned HTTPS URL in the operating system browser or secure browser session, and use a verified HTTPS Universal Link or App Link as the merchant return. Re-read order status through your server when the app resumes.

LINK

Messaging, QR, and social commerce

Share only the payment link URL. Keep track of the order on your server, expect the link to be opened more than once, and fulfill once after a verified event or a server-side read.

Native packages and embedded WebViews are not supported yet.

PerionPayments does not publish iOS, Android, React Native, Flutter, Capacitor, Vue, Angular, or Svelte packages yet. Use hosted checkout in the system browser until we publish a package for your platform, and never put checkout secrets or server credentials in a WebView bridge.

Coming back to your app does not prove payment.

Universal Links, App Links, browser returns, iframe events, and deep links only bring the payer back. Your server still checks the status, amount, currency, environment, and order before fulfilling it once.

Next: Recurring payments