RMM Labs
Integrations 3 min read 28 September 2026 By Fred

Connect Stripe to Xcellerate OPS: let customers pay invoices by card

With your own Stripe secret key, the payment page of every sent invoice in Xcellerate OPS gets a Stripe button. Your customer pays by card and the invoice switches to Paid.

Connect Stripe to Xcellerate OPS: let customers pay invoices by card

Connect your own Stripe account to Xcellerate OPS and your customers can pay sent invoices by card through Stripe Checkout. The money goes to your Stripe account. This guide is for admins of MSPs and service businesses who want to offer card payments without adding another tool.

TL;DR

  • Paste your Stripe secret key under Integrations → Payments and press Save.
  • The payment page of every sent invoice gets a Stripe button for the full invoice total.
  • Ask your customer to finish the payment and return to the payment page. The invoice then switches to Paid.

Before you start

  • You are a workspace admin in OPS. Only admins can set up payment integrations.
  • You have a Stripe account.
  • You invoice from OPS itself. Payment links aren't available while an external e-invoicing platform replaces the built-in invoicing.

Step 1: Copy your secret key in Stripe

In the Stripe Dashboard, go to Developers → API keys and copy the secret key. Starting with a test key (sk_test_…) is a good idea. Switch to your live key (sk_live_…) afterwards. There's nothing else to set up in Stripe.

Step 2: Add Stripe in OPS

In OPS, go to Settings → Integrations. The board groups integrations by category, with the catalog on the right. Stripe appears there with the hint Online invoice payments.

The Integrations board in Xcellerate OPS settings with empty categories and the integrations catalog The Integrations board with empty Mailbox, Authentication, Payments and Billing categories and the catalog on the right.

No Stripe card under Payments yet? Add Stripe from the catalog to the Payments column. The card reads: "Card payments via your own Stripe account (secret key)."

Step 3: Paste the key and save

Paste the key into the field (placeholder sk_live_… / sk_test_…) and press Save. You'll see "Stripe settings saved." The key is never shown again after that.

Step 4: Test with a real invoice

OPS doesn't validate the key when you save it, so run a test payment:

  1. Finalize an invoice so its status is Sent.
  2. Open the invoice's pay link and choose Stripe.
  3. Complete the test payment and wait until you're back on the payment page.
  4. Check that the invoice shows Paid.

Works with your test key? Paste your live key and save again.

What happens after you connect

  • The payment page of every sent invoice shows a Stripe button. Your customer pays through Stripe Checkout.
  • The payment always covers the full invoice total, as one line named Invoice <ref> — <your company>.
  • After paying, Stripe sends your customer back to the OPS payment page. OPS checks the payment with Stripe and sets the invoice to Paid. An expired checkout session is recorded as failed.
  • The payment is recorded on the invoice, with Stripe as the method.

Good to know

  • The money goes to your own Stripe account, not through RMM Labs.
  • Ask payers to finish the payment and wait until they're back on the payment page. See a payment in Stripe that OPS doesn't show as paid? Check it in Stripe and set the invoice status by hand.
  • Partial payments aren't supported.
  • Don't mix test and live keys. Use the key that matches the environment you want to take payments in.
  • Disable clears the key after you confirm.
  • You can run Stripe next to Mollie and PayPal. Each provider becomes its own button on the payment page.

Troubleshooting

  • Your customer sees "The payment could not be started. Please try again later." The Stripe checkout session couldn't be created. Usually the key is wrong, or test and live are mixed up.
  • Paid in Stripe, but not in OPS. The payer didn't return to the payment page. Update the invoice by hand.
  • The card says "Not applicable while external e-invoicing is enabled." Online payment links only work with the built-in invoicing in OPS.

Get paid faster

Read more about sales and billing and our EU integrations. Ready to try it? Get started for free.

Frequently asked questions

Do I need to configure anything else in Stripe?
No. OPS only needs your secret key. Paste it under Integrations and save.
What if my customer closes the window before returning to the payment page?
The invoice may not show as paid yet. Check the payment in Stripe and update the invoice by hand.
Can a customer pay part of an invoice?
No. Every payment covers the full invoice total.
Sources: Verified against the Xcellerate OPS source code by the product team on 2026-09-28. Feature pages: https://rmmlabs.io/en/products/ops/features/integrations-eu; https://rmmlabs.io/en/products/ops/features/sales-billing. Screenshots: real captures of the Xcellerate OPS demo workspace, Sep 2026.

Ready to solve time registration compliance?

Xcellerate OPS covers Belgian 2027 time registration requirements out of the box — no extra module needed.

Related articles