# Revolut Pay for Business: accept payments from business customers

Your business customers can now pay straight from their Revolut Business account with Revolut Pay - and you decide whether your checkout prioritises, or is restricted to, business or personal flows.

:::info
See the [Revolut Pay documentation](/docs/guides/merchant/accept-payments/online-payments/revolut-pay) for the full picture, or jump straight into the integration guides below.
:::

## What this means for your checkout

Revolut Pay started as the fastest way for personal customers to pay online: one tap from their Revolut account, no card details, no hosted forms. But if your customers run businesses, that speed stopped at the door - they paid from personal accounts, or fell back to cards and manual bank transfers.

Revolut Pay for Business changes that. Business customers now authorise payments directly from their Revolut Business account, so B2B checkouts - invoices, subscriptions, wholesale orders, software seats - get the same instant checkout experience your retail customers already have. Customers are taken to the Revolut Business app to authorise the payment, with an automatic in-app WebView fallback when the app isn't installed.

Every Revolut Pay SDK also gains the `preferredMode` parameter, so you can shape the flow to your audience:

| Mode | Behaviour | Best for |
| --- | --- | --- |
| **Default** | Retail flow is prioritised; customers can switch to their Business account in the checkout. | Mixed retail and business audiences - the default behaviour, unchanged. |
| **Business prioritised** | Business flow opens first; switching to Retail stays available. | Checkouts with mostly business customers. |
| **Business only** | Checkout restricted to the Business flow. | B2B-only checkouts, e.g. invoicing or wholesale. |
| **Retail only** | Checkout restricted to the Retail flow. | Consumer-only checkouts. |

:::note
Revolut Pay for Business must be enabled for your merchant account. `preferredMode` is available in iOS SDK 3.14.0+, Android SDK 3.4.0+, and the latest Web and React Native SDKs. 

Existing integrations are unaffected - the default behaviour is unchanged, and no code changes are required until you opt in.
:::

## Get started

- [:Document: Web integration guide](/docs/guides/merchant/accept-payments/online-payments/revolut-pay/web "Learn how to embed the button and offer business checkout on your website")
- [:CodeRepository: Web SDK reference](/docs/sdks/merchant-web-sdk/payment-methods/revolut-pay "Understand every option, callback, and event the web widget supports")

[//]: # 'break'

- [:Document: iOS integration guide](/docs/guides/merchant/accept-payments/online-payments/revolut-pay/mobile/ios "Learn to add the button and route customers to the right flow in your iOS app")
- [:CodeRepository: iOS SDK reference](/docs/sdks/merchant-ios-sdk/revolut-pay-ios-sdk/methods-parameters "Explore the full iOS toolkit - button configuration, order handling, and flow control")

[//]: # 'break'

- [:Document: Android integration guide](/docs/guides/merchant/accept-payments/online-payments/revolut-pay/mobile/android "Learn to add the button and route customers to the right flow in your Android app")
- [:CodeRepository: Android SDK reference](/docs/sdks/merchant-android-sdk/revolut-pay-android-sdk/methods-parameters "Explore the full Android toolkit - button configuration, order handling, and flow control")

[//]: # 'break'

- [:Document: React Native integration guide](/docs/guides/merchant/accept-payments/online-payments/revolut-pay/mobile/react-native "Learn to add the button to your cross-platform app with Revolut Pay Lite")