Payment Providers
Vidori supports Stripe, Adyen, PayPal, and Pix as payment providers for membership payments. Your subscribers are charged directly through your own merchant account — Vidori never touches the funds.
You only need to configure one provider. Once connected, you can link pricing to your membership tiers.
Choosing a Provider
Section titled “Choosing a Provider”| Feature | Stripe | Adyen | PayPal | Pix |
|---|---|---|---|---|
| Best for | Startups, small-to-mid businesses | Enterprise, global merchants | Global reach, buyer trust | Brazilian audiences |
| Pricing management | Products & prices managed in Stripe | Prices set directly in Vidori | Prices set directly in Vidori | Prices set directly in Vidori |
| Checkout | Stripe Checkout (hosted) | Adyen Drop-in component | PayPal Buttons (inline) | Copia e Cola (copy & paste) |
| Test environment | Test mode via sk_test_ keys | Separate test/live environments | Sandbox / Live environments | Sandbox URL via PSP |
| Geography | Global | Global | Global | Brazil only |
Stripe Setup
Section titled “Stripe Setup”-
Create a Stripe account
Sign up at stripe.com if you don’t have an account. Complete the onboarding to activate your account.
-
Get your API keys
Go to Stripe Dashboard → Developers → API keys.
- Publishable key — starts with
pk_test_orpk_live_. Click to copy. - Secret key — starts with
sk_test_orsk_live_. Click Reveal test key (or Reveal live key) to copy.
- Publishable key — starts with
-
Enter credentials in Vidori
In the admin panel, go to Memberships → Payments. Select Stripe and enter the Secret Key and Publishable Key. Click Save Stripe Configuration.
-
Create a webhook
After saving, Vidori displays a Webhook URL. Copy it, then:
- Go to Stripe Dashboard → Developers → Webhooks.
- Click Add endpoint.
- Paste the Webhook URL.
- Under Select events to listen to, add:
checkout.session.completedcustomer.subscription.deleted
- Click Add endpoint to save.
-
Copy the webhook secret
On the endpoint details page, click Reveal under Signing secret. Copy the
whsec_...value and paste it into the Webhook Secret field in Vidori. Save again. -
Test the connection
Click Test Connection in the admin panel to verify your credentials are valid.
Linking Stripe Prices to Tiers
Section titled “Linking Stripe Prices to Tiers”After connecting Stripe:
- Create subscription products with recurring prices in your Stripe Dashboard.
- In the admin panel, go to Memberships → Tiers.
- Click the pricing action on a tier and select a Stripe price to link.
Adyen Setup
Section titled “Adyen Setup”-
Get your Adyen credentials
Log in to the Adyen Customer Area and gather:
- Merchant Account — found under Account → Merchant accounts.
- API Key — go to Developers → API credentials, select your credential, and generate a server-side API key.
- Client Key — in the same API credential page, find the client key (used for the Drop-in component).
- HMAC Key — go to Developers → Webhooks, create a Standard webhook, and copy the HMAC key.
-
Enter credentials in Vidori
In the admin panel, go to Memberships → Payments. Select Adyen and fill in all fields. Choose Test or Live environment.
If using the Live environment, you also need to enter your Live Endpoint Prefix (found in the Adyen Customer Area, e.g.
1797a841fbb37ca7-YourCompany). -
Configure the webhook
After saving, Vidori displays a Webhook URL. In the Adyen Customer Area:
- Go to Developers → Webhooks.
- Add a Standard webhook.
- Set the URL to the Webhook URL from Vidori.
- Enable the
AUTHORISATIONandCANCELLATIONevents. - Save and note the HMAC key if you haven’t already.
-
Test the connection
Click Test Connection in the admin panel to verify your credentials.
Setting Adyen Prices on Tiers
Section titled “Setting Adyen Prices on Tiers”Unlike Stripe, Adyen prices are configured directly in Vidori:
- Go to Memberships → Tiers.
- Click the pricing action on a tier.
- Enter the amount, currency, and billing interval.
PayPal Setup
Section titled “PayPal Setup”-
Create a PayPal Business account
Sign up at paypal.com/business if you don’t have a business account.
-
Create an app in the Developer Dashboard
Go to the PayPal Developer Dashboard → Apps & Credentials.
- Click Create App.
- Name your app (e.g., “Vidori Memberships”).
- Select Merchant as the app type.
- After creation, you’ll see your Client ID and Client Secret.
-
Enter credentials in Vidori
In the admin panel, go to Memberships → Payments. Select PayPal and enter the Client ID and Client Secret. Choose Sandbox or Live environment. Click Save PayPal Configuration.
-
Create a webhook
After saving, Vidori displays a Webhook URL. Copy it, then:
- Go to PayPal Developer Dashboard → Webhooks.
- Click Add Webhook.
- Paste the Webhook URL from Vidori.
- Subscribe to these events:
PAYMENT.CAPTURE.COMPLETEDCHECKOUT.ORDER.APPROVEDPAYMENT.CAPTURE.REFUNDED
- Click Save.
-
Copy the Webhook ID
After creating the webhook, copy its Webhook ID (shown in the webhook list) and paste it into the Webhook ID field in Vidori. Save again.
-
Test the connection
Click Test Connection in the admin panel to verify your credentials are valid.
Setting PayPal Prices on Tiers
Section titled “Setting PayPal Prices on Tiers”Like Adyen, PayPal prices are configured directly in Vidori:
- Go to Memberships → Tiers.
- Click the pricing action on a tier.
- Enter the amount, currency, and billing interval.
Pix Setup
Section titled “Pix Setup”Pix is Brazil’s national instant payment system, operated by the Central Bank of Brazil (Bacen). Payments settle in seconds, 24/7/365, directly from the subscriber’s bank account to yours — no card required.
Requirements: You must have a Brazilian bank account with a Pix key registered, and API credentials from a PSP (Payment Service Provider) that implements the Bacen Pix API. Compatible PSPs include EFI Bank, Mercado Pago, and Sicoob, among others.
How subscribers pay: When checking out, the app displays a payment code. The subscriber copies it, opens their banking app, goes to Pix → Copia e Cola (or equivalent), pastes the code, and confirms. Payment is received in seconds. All Brazilian banking apps are required by Bacen to support this flow.
-
Open a PSP account
Create a developer/business account with your chosen PSP. EFI Bank is a popular choice with straightforward API access — sign up at sejaefi.com.br.
-
Get your API credentials
In your PSP’s developer area, create an application and note:
- Client ID — your app’s OAuth2 client identifier.
- Client Secret — your app’s OAuth2 secret (keep this private).
- PSP API Base URL — the Bacen API base URL for your PSP.
- EFI Bank production:
https://pix.api.efipay.com.br - EFI Bank sandbox:
https://pix-h.api.efipay.com.br
- EFI Bank production:
-
Register a Pix key
In your bank or PSP dashboard, register a Pix key for your account. This can be a CNPJ, CPF, email address, phone number, or a random key. This is the key that will receive payments.
-
Enter credentials in Vidori
In the admin panel, go to Memberships → Payments. Select Pix and fill in:
- Client ID — from your PSP application.
- Client Secret — from your PSP application.
- Chave Pix — the Pix key registered on your receiving account.
- PSP API Base URL — your PSP’s Bacen API base URL.
Click Save Pix Configuration.
-
Register the webhook
After saving, Vidori displays a Webhook URL. Copy it, then register it in your PSP’s developer dashboard as the URL to notify when a payment is received (
POSTwith Pix notification payload). The exact steps vary by PSP — refer to your PSP’s documentation for “Pix webhook” or “notificação Pix”. -
Test the connection
Click Test Connection in the admin panel to verify your credentials are valid.
Setting Pix Prices on Tiers
Section titled “Setting Pix Prices on Tiers”Pix prices are configured directly in Vidori:
- Go to Memberships → Tiers.
- Click the pricing action on a tier.
- Enter the amount and currency (BRL).
Switching Providers
Section titled “Switching Providers”You can switch between providers at any time, but note:
- Existing subscriptions will be cancelled at the end of their current billing period.
- Subscribers will need to re-subscribe using the new provider.
- Tier pricing configuration will need to be reconfigured for the new provider.
Disconnecting a Provider
Section titled “Disconnecting a Provider”To disconnect your current provider, click Disconnect on the Payments page. This does not cancel active subscriptions immediately — they will expire at the end of their billing period.
Troubleshooting
Section titled “Troubleshooting”| Issue | Solution |
|---|---|
| Connection test fails | Double-check your API keys. Ensure you’re using the correct mode (test vs live). For Pix, verify the PSP Base URL matches your environment (sandbox vs production). |
| Webhooks not arriving | Verify the Webhook URL is correctly entered in your provider dashboard. Check that the required events are enabled. For Pix, ensure the webhook URL is registered in your PSP’s developer area. |
| Payments not processing | Confirm your provider account has completed onboarding and is activated for live payments. For Pix, confirm your Pix key is correctly registered on your receiving bank account. |
| Subscription not created | Ensure a price is linked to the tier (Stripe) or a price is set on the tier (Adyen/PayPal/Pix). |
| Pix payment not activating membership | The PSP webhook may not be reaching Vidori. Verify the webhook URL is registered and that your PSP is configured to send notifications for completed payments. |