Accept Online Payments for Course Registration with Stripe

How to set up online payment collection for your training courses using Stripe — secure, PCI-compliant, and automatic.

By Keith Li · 5 min read · Getting Started

Why Trainers Need Online Payments

Bank transfers are the enemy of conversion. Every time you ask a student to "transfer to this account and send me the receipt," you lose registrations. Some forget. Some get distracted. Some decide it is too much hassle. The friction between "I want to attend" and "I have paid" is where you lose the most potential students.

Online card payment removes this friction entirely. The student clicks, enters their card details, and the payment is processed in seconds. No bank app, no transfer receipt, no WhatsApp message. Done.

Why Stripe

Stripe is the global standard for online payments. It is PCI Level 1 compliant (the highest security standard), supports all major card networks (Visa, Mastercard, Amex), and processes payments in 135+ currencies including HKD.

For trainers, Stripe offers several advantages: payments land in your bank account automatically (typically within 7 business days in Hong Kong), refunds can be processed with one click, and every transaction is logged and searchable. You get a complete financial record without maintaining a separate accounting spreadsheet.

Stripe also handles the regulatory complexity. PCI compliance, data encryption, fraud detection, and receipt generation are all built in. You do not need to worry about storing card numbers or meeting security standards — Stripe handles all of it.

How ClassRail Integrates Stripe

ClassRail uses Stripe Checkout — Stripe's hosted payment page. When a student completes the registration form, they are redirected to a Stripe-hosted page to enter their card details. This means card information never touches ClassRail's servers. It goes directly from the student's browser to Stripe.

After successful payment, Stripe notifies ClassRail via a webhook. ClassRail then updates the enrollment status to "paid," sends the confirmation email, and logs the transaction. The entire flow takes about 30 seconds from the student's perspective.

If a payment fails (declined card, insufficient funds), the student sees a clear error message and can retry. A registration is reserved when the student proceeds to payment, holding their spot while they complete checkout. If payment is not completed within two hours, the reservation is automatically released, freeing the spot for other students. This ensures no capacity is permanently lost to abandoned checkouts.

Handling Refunds

Refunds are inevitable in the training business. Students get sick, schedules change, companies cancel. Refunds are processed directly through your Stripe Dashboard — you find the payment, click refund, confirm the amount, and the money is returned to the student's card.

Stripe handles the actual money movement. Refunds typically appear on the student's statement within 5-10 business days. ClassRail records the updated payment status, updates the enrollment record, and sends a refund confirmation email to the student automatically.

Setting Up Payments

To accept payments through ClassRail, you need a Stripe account. Setting up Stripe in Hong Kong takes about 10 minutes — you provide your business details, bank account information, and identity verification. Once approved, you can start accepting payments immediately.

ClassRail connects to your Stripe account securely. Course prices are set in HKD when you create a course. Students see the price, register, pay, and you see the payment in both ClassRail's dashboard and your Stripe dashboard. Simple, transparent, and fully automated. For trainers in Hong Kong, see our guide on [course registration solutions for local trainers](/guide/course-registration-hong-kong). To learn more about why ClassRail is the right choice, read [Why ClassRail](/guide/why-classrail).