Connecting Revolut Pay
Revolut Pay lets customers pay through Revolut, cards, and the payment methods enabled in your Revolut Merchant checkout. PayRequest uses Revolutβs Merchant API and Merchant Web SDK; payments settle directly to your own Revolut Merchant account.Revolut Pay is tenant-scoped. PayRequest never uses a shared Revolut account for your checkout. The button appears only on payment pages owned by a merchant with an active Revolut connection.
What you need
You need an approved Revolut Merchant account under Revolut Business. The Merchant account is separate from the ordinary Business account and must be approved before production payments can be accepted. From Revolut Business β Settings β APIs β Merchant API, obtain:- Production Public API key (
pk_...) for the browser checkout - Production Secret API key (
sk_...) for server-side API calls - Webhook signing secret from the webhook details page
Connect your account
1
Open Provider Settings
In PayRequest, open Settings β Providers, or go directly to
/provider-settings.2
Choose Revolut Pay
Open the Revolut Pay provider card and click Connect.
3
Enter production credentials
Enter your Public API key and Secret API key. Select Production. Sandbox credentials must only be used with the Sandbox environment.
4
Save the connection
Click Connect Revolut. Your credentials are encrypted before storage and are never shown again in full.
Configure the webhook
Create a Merchant API webhook for:https://payrequest.app/webhooks/revolut
Subscribe at minimum to:
ORDER_COMPLETEDORDER_CANCELLEDORDER_FAILEDORDER_PAYMENT_DECLINEDORDER_PAYMENT_FAILED
Customer checkout
On an eligible PayRequest payment page, customers see a dark Revolut Pay button after entering a valid amount, name, and email address. The checkout uses the Revolut Payments module and creates an order on demand through PayRequestβs server. After a successful payment:- Revolut sends an
ORDER_COMPLETEDwebhook. - PayRequest retrieves the order server-side and verifies the final state.
- The matching invoice and transaction are marked paid idempotently.
- The customer returns to the PayRequest success page.
Current scope
The current Phase 1 integration supports one-time amounts on simple payment pages. It does not yet appear on product URLs such as?product=123, subscriptions, deposits, or existing invoice checkouts. These flows need product/order fulfillment and recurring-payment handling before Revolut can be enabled safely for them.
Revolut Pay can be connected alongside Mollie, Stripe, PayPal, and Payoneer. Each merchantβs payments remain scoped to the provider account they connected.
Sandbox testing
For testing, connect Sandbox public and secret keys and select Sandbox in the provider form. The SDK mode and Merchant API endpoint are selected per connection; production keys cannot be used in Sandbox and vice versa. Revolutβs Sandbox Revolut Pay flow uses a simulated account-creation experience because there is no Sandbox version of the Revolut retail app. Sandbox behavior can therefore differ from production.Disconnecting
Return to Settings β Providers and click Disconnect Revolut. New payment pages stop showing the button immediately. Existing transactions retain their provider reference for reconciliation.Related guides
Payment Methods Overview
Compare PayRequest payment providers and methods.
Create Payment Links
Create the payment page where Revolut Pay appears.