Skip to main content

Connect a Payment Provider

Licensr never touches your money. Every charge, refund, and payout settles directly to your account. Your group uses one payment provider at a time.

Pick the guide for the provider you're setting up — each section below is complete on its own; you don't need to read the others:

ProviderBest forConnection model
StripeNorth America, Europe, and most global marketsOAuth (Stripe Connect) — authorize from Stripe's consent screen
Mercado PagoArgentina and the rest of Latin AmericaPaste your application's credentials
PayPalWorldwide buyer trust, plus markets Stripe can't onboardPaste your REST app's credentials (Business account required)

All providers are configured from Settings → My Organization in the admin panel (/admin/my-organization).


Connect Stripe

Stripe connects through Stripe Connect. You authorize Licensr from Stripe's consent screen — no API keys to copy. Open Settings → My Organization → Stripe (/admin/my-organization).

What Licensr will do with your connected account:

  • Create Checkout Sessions when a buyer clicks "Buy" on your storefront.
  • Read your product and price catalog to render the buy page.
  • Listen to payment and subscription webhook events so it can issue and sync licenses.
  • Open a Customer Portal session when a buyer manages their own subscription.

What Licensr will never do:

  • Issue a refund without an explicit click in your admin panel.
  • Edit, archive, or delete products and prices you already have in Stripe.
  • Charge cards outside the Stripe Checkout flow.
  • Read or modify your payout schedule, bank account, or business details.

Steps

  1. Click Connect Stripe in Settings → My Organization (or follow the Setup wizard on first sign-in — it walks through these same steps with inline links).
  2. Review the trust summary, then continue to Stripe's consent screen.
  3. Sign in to an existing Stripe account or create a new one, and approve the connection.
  4. You're redirected back to Licensr, now showing as connected with your business name, country, and account ID.

You can revoke access at any time from your Stripe Dashboard under Settings → Connected applications, or click Disconnect in Licensr. Disconnect is blocked while subscriptions are still active on that account.

Activate payouts (Stripe KYC)

Stripe won't release real payments until it verifies your business. This step happens entirely in the Stripe Dashboard — have ready:

  • Legal entity name and tax ID (EIN, VAT, or local equivalent)
  • Bank account number for payouts
  • A business website (your storefront URL works)
  • A support email customers can reach you at

Once Stripe approves your account (charges_enabled: true), the step turns green automatically — click Retry status check in the wizard if you just finished. See Stripe's Connect onboarding guide for details on the verification flow.


Connect Mercado Pago

Connect with credentials from your own Mercado Pago developer application. You paste an access token, public key, and webhook signing secret into Licensr; checkout and subscriptions run on your Mercado Pago account in your local currency.

Open Settings → My Organization → Mercado Pago (/admin/my-organization).

Steps

  1. Create (or open) an application in the Mercado Pago developer dashboard.
  2. Copy the application's production access token and public key from its credentials page.
  3. Set up the webhook (below) before connecting, so you have the signing secret ready.
  4. Paste the access token, public key, and webhook signing secret into the Mercado Pago panel. Licensr validates the token and switches your group's active provider to Mercado Pago.

Webhook setup (required for subscriptions and chargebacks)

  1. In Settings → My Organization → Mercado Pago, expand How to set up your Mercado Pago webhook and copy the pre-filled notification URL — it already includes your organization ID in the group_id= parameter. (Your organization ID is also shown at the top of My Organization; it is a UUID and is not the same as your storefront slug.)

  2. In the Mercado Pago developer dashboard, open Your integrations → [Your app] → Webhooks and paste that URL as the notification URL.

    If you cannot open the dashboard, the URL format is:

    https://api.licensr.app/v1/webhooks/mercadopago?group_id=<your-organization-id>&source_news=webhooks
  3. Generate a signing secret on that page — paste it into the Mercado Pago panel alongside your token and public key.

  4. Subscribe to: Plans and subscriptions, Payments (legacy), Chargebacks.

Important: do not select Order (Mercado Pago). Licensr processes the classic Payments event; the Orders API is not consumed and no license will be issued for payments sent via that event type.

Disconnect is blocked while subscriptions are still active on this account. After disconnecting, Mercado Pago is no longer your active provider — connect a provider again before accepting new sales.


Connect PayPal

Connect with credentials from your own PayPal REST app. You paste a Client ID, Client secret, and Webhook ID into Licensr; checkout and subscriptions run on your PayPal account.

You'll need a PayPal Business account — personal accounts cannot create merchant REST apps or receive customer payments. (Upgrade or create a Business account.)

Open Settings → My Organization → PayPal (/admin/my-organization).

Steps

  1. Set up the webhook (below) first — PayPal doesn't create it automatically, and you need the Webhook ID it generates before you can connect.
  2. In the PayPal Developer dashboard, create (or open) a REST app and copy its Client ID and Client secret.
  3. Paste the Client ID, Client secret, and Webhook ID into the PayPal panel, and pick Live or Sandbox. Licensr validates the credentials and switches your group's active provider to PayPal.

Webhook setup (required, not created automatically)

  1. In Settings → My Organization → PayPal, expand How to set up your PayPal webhook and copy the pre-filled notification URL — it already includes your organization ID in the group_id= parameter. (Your organization ID is also shown at the top of My Organization; it is a UUID and is not the same as your storefront slug.)

  2. In the PayPal Developer dashboard, open your REST app, scroll to Webhooks → Add Webhook, and paste that URL as the notification URL.

    If you cannot open the dashboard, the URL format is:

    https://api.licensr.app/v1/webhooks/paypal?group_id=<your-organization-id>
  3. Subscribe to these event types: PAYMENT.SALE.COMPLETED, PAYMENT.CAPTURE.REFUNDED, CHECKOUT.ORDER.APPROVED, BILLING.SUBSCRIPTION.SUSPENDED, BILLING.SUBSCRIPTION.PAYMENT.FAILED, BILLING.SUBSCRIPTION.EXPIRED, BILLING.SUBSCRIPTION.CANCELLED, BILLING.SUBSCRIPTION.ACTIVATED.

  4. Save the webhook, then copy the generated Webhook ID exactly as PayPal shows it in the table — an alphanumeric string, e.g. 7UC62530S74913114. Don't add a WH- prefix; that prefix is used on webhook event IDs inside payloads, not on this subscription ID.

Sandbox vs. live: use Sandbox credentials with a sandbox app's webhook while testing, and Live credentials with a live app's webhook in production — the Webhook ID differs between the two.

Disconnect is blocked while subscriptions are still active on this account. After disconnecting, PayPal is no longer your active provider — connect a provider again before accepting new sales.


Questions about connecting a provider? Reach us via the Contact us link in the footer at licensr.app.