Stripe

[TOC]

Overview

The Stripe payment plugin allows customers to pay for their booking using a credit or debit card via Stripe's secure payment infrastructure.

Plugin name: os_stripe

Prerequisites

You need a Stripe account to use this plugin. Sign up at https://stripe.com.

Setup

  1. Log in to the Joomla back-end and go to Components → OS Calendar → Manage Payment Plugins.
  2. Click on os_stripe (or select it and click Edit).
  3. Configure the plugin parameters (see below).
  4. Set Published to Yes.
  5. Click Save.

Plugin Parameters

Parameter Description
Stripe Mode Set to Test Mode to use Stripe test keys for testing, or Live Mode for real payments.
Publishable Key Your Stripe publishable API key. Found in the Stripe Dashboard under Developers → API keys.
Secret Key Your Stripe secret API key. Keep this confidential — never share it publicly.
Currency The currency code for Stripe transactions (e.g. usd, eur, gbp). Must be a currency supported by your Stripe account.

Testing

To test Stripe payments without real money:

  1. Set Stripe Mode to Test Mode.
  2. Use your Stripe test keys from the Stripe Dashboard (keys starting with pk_test_ and sk_test_).
  3. Submit a test booking on the front-end and use Stripe's test card numbers (e.g. 4242 4242 4242 4242).

Refer to the Stripe documentation at https://stripe.com/docs/testing for a full list of test card numbers.

How It Works

  1. Customer submits the booking form and selects Stripe as the payment method.
  2. A Stripe payment form (card number, expiry, CVV) is presented.
  3. OS Calendar uses the Stripe API to process the payment server-side.
  4. After successful payment, OS Calendar updates the order status to Confirmed.
  5. Confirmation emails are sent to the customer and administrator.

Security: Stripe uses its own secure tokenisation — card details are never stored on your server. Ensure your site uses HTTPS (SSL) so that the Stripe payment form is served over a secure connection. Enable Use SSL for Payment in Configuration → Payment tab.