OurPay checkout currently runs as a hosted page. Add a normal link or button to your site and send the customer to its URL. This works for both one-time PayPal payments and subscriptions and does not expose your OurPay access token in the browser.
An iframe-based checkout is not currently supported by the PayPal integration. Do not load a checkout URL in an iframe: PayPal payer approval is a top-level redirect and may be blocked or fail to return correctly inside an embedded frame.
Create a persistent Checkout Link in the dashboard, then use its URL as the destination of a link or button:
You can style the element with your own CSS. No OurPay browser script is required.

Create a Checkout Session from your backend

Use a short-lived Checkout Session when the product, customer, quantities, or return URL must be chosen dynamically. Keep the access token on your server.
TypeScript
Python
See Checkout Sessions for quantities, discounts, metadata, trials, and customer-prefill options.

Confirm fulfillment on your server

Treat the browser redirect as navigation, not proof of payment. Verify the resulting order or subscription from a signed webhook before granting access. Webhooks can be retried, so make your handler idempotent. See Webhook delivery and Webhook endpoints.