Set up Stripe, PayPal, Razorpay, or Cashfree
Open **Payments → Payment Gateways → Add Gateway**, select the provider, and choose **Continue**. Enter **Name**, select **Processing Currency**, and complete that provider's required fields below. Use credentials from the same live merchant account and keep secret values private. After reviewing optional settings and **Limits**, choose **Save Gateway**.
Leave provider sandbox or try-environment switches off. Leave optional custom endpoint and SDK URL fields blank to use the built-in integration. The currency and methods must also be enabled by the provider on your merchant account. Common optional fees, **Custom Exchange Rate (1 USD)**, **Mask Description** where present, and **Disable** are described in the gateway setup guides.
Stripe (shown as “Strip” in the provider selector)
**Required provider fields:** **Publishable Key**, **Secret Key**.
**Optional provider fields:** **Webhook Signing Secret**.
Copy **Publishable Key** and **Secret Key** from the same live Stripe account. Choose a processing currency that account accepts. **Webhook Signing Secret** is optional for taking a payment but required for Stripe refund-status webhooks. Save the gateway first, then use its generated **Refund Webhook Setup** details when configuring those callbacks.
PayPal
**Required provider fields:** **Client ID**, **Client Secret**.
**Optional provider fields:** **Webhook ID**.
Use the **Client ID** and **Client Secret** of your live PayPal REST app. Select a currency that your PayPal account may receive and leave **Sandbox Mode** off. **Webhook ID** is used for refund-status callbacks. Use the generated **Refund Webhook Setup** URL and matching live app webhook ID after saving.
Razorpay
**Required provider fields:** **Key ID**, **Key Secret**.
**Optional provider fields:** **Webhook Secret**.
Select INR for domestic payments. Select USD only when international payments are enabled on the Razorpay account. Use the live **Key ID** and **Key Secret** from the same account. **Webhook Secret** is required when configuring refund-status callbacks; use the generated **Refund Webhook Setup** details after saving.
Cashfree
**Required provider fields:** **App ID**, **Secret Key**.
**Optional provider fields:** **Default Customer Phone**.
Use the live **App ID** and **Secret Key**. INR is used for domestic payments; international currencies require the relevant Cashfree approval. Supply valid customer phone details with orders. **Default Customer Phone** is a fallback when an order omits a phone. Refund callbacks use the saved **Secret Key** and generated **Refund Webhook Setup** URL.
Check a new connection
Use a fresh checkout to confirm the expected provider name, processing currency, and total. If saving fails, recheck the required fields, live-account credentials, and currency selection. If the provider records a payment but the order does not update, keep the provider reference and order reference and ask support to review them before asking the customer to pay again. Never include secret values in that request.