Available payment integrations
Stripe
Most popular - accept credit cards, digital wallets, and more
PayPal
Process payments through PayPal accounts
Alby
Accept Bitcoin via Lightning Network
HitPay
APAC payment methods and e-wallets
Other payment options
- BTCPay Server - Self-hosted Bitcoin payment processor
- Razorpay - India-focused payment gateway (via Stripe integration)
- PayPal Business - Advanced PayPal features for businesses
How payment integrations work
When a payment app is enabled for an event type:Payment prompt
Before confirming, they’re redirected to the payment processor to enter payment information.
Payment processed
The payment processor charges the amount you specified and returns success or failure.
Stripe
Stripe is the most popular payment processor for Cal.com, supporting credit cards, debit cards, Apple Pay, Google Pay, and many regional payment methods.Setup instructions
Create a Stripe account
Sign up at stripe.com if you don’t have an account. Complete identity verification to accept live payments.
Install Stripe integration
Go to Settings > Apps in Cal.com, search for “Stripe”, and click Install.
Connect your Stripe account
Click “Connect with Stripe” and authorize Cal.com to create payment intents and charges.
Features
- Multiple payment methods - Credit cards, debit cards, Apple Pay, Google Pay, ACH, SEPA, and 40+ others
- Global currency support - 135+ currencies
- Automatic tax - Calculate and collect tax with Stripe Tax
- Subscriptions - Charge recurring fees (requires custom setup)
- Refunds - Process refunds from Stripe dashboard
- Security - PCI compliant, 3D Secure support
- Detailed reporting - Revenue analytics and financial reports
Configuration
When enabling Stripe for an event type:Stripe charges fees per transaction: 2.9% + $0.30 for US cards. International and currency conversion fees may apply. See stripe.com/pricing for details.
Testing Stripe integration
Stripe provides test mode for development:- Test card numbers
- Switching to live mode
- Success: 4242 4242 4242 4242
- Decline: 4000 0000 0000 0002
- 3D Secure: 4000 0027 6000 3184
Troubleshooting
Payment page not loading
Payment page not loading
- Verify Stripe integration is connected in Settings > Apps
- Check that event type has a price configured
- Ensure Stripe account is activated (not in restricted mode)
- Re-authenticate by disconnecting and reconnecting Stripe
Payments failing
Payments failing
- Check Stripe dashboard for error messages
- Verify you’re not in test mode when accepting real payments
- Confirm your Stripe account can accept the payment method being used
- Check for sufficient funds or card limits on the customer’s end
Refund requests
Refund requests
Process refunds in the Stripe dashboard:
- Go to Payments > All payments
- Find the charge
- Click Refund
- Cal.com booking remains unless manually cancelled
PayPal
PayPal integration lets customers pay with their PayPal balance, linked bank accounts, or credit cards via PayPal checkout.Setup instructions
Create PayPal Business account
Sign up for a PayPal Business account at paypal.com/business. Personal accounts cannot accept Cal.com payments.
Features
- PayPal balance payments - Customers can pay from PayPal accounts
- Credit card processing - Accept cards without Stripe
- Buyer protection - PayPal’s purchase protection for customers
- International support - Available in 200+ countries
- Multi-currency - Accept payments in 25+ currencies
PayPal fees vary by country and transaction type. Typical US rate: 2.9% + $0.30 per transaction. Check paypal.com/fees for your region.
Alby (Bitcoin Lightning)
Alby lets you accept Bitcoin payments via the Lightning Network - instant, low-fee Bitcoin transactions.Setup instructions
Features
- Lightning Network - Instant settlement, minimal fees
- No chargeback risk - Bitcoin transactions are final
- Global payments - No geographic restrictions
- Privacy-focused - Pseudonymous transactions
- Low fees - Typically < 1% compared to 3% for credit cards
Alby charges a small service fee. Lightning Network transaction fees are typically less than 1 cent.
HitPay
HitPay specializes in APAC payment methods, including popular e-wallets and banking apps in Asia.Setup instructions
Create HitPay account
Sign up at hitpayapp.com for your country (Singapore, Hong Kong, Malaysia supported).
Supported payment methods
- E-wallets - GrabPay, PayNow, AliPay, WeChat Pay
- Bank transfers - FPX (Malaysia), PayNow (Singapore)
- Credit cards - Visa, Mastercard, Amex
- Buy Now Pay Later - Atome, Grab PayLater
BTCPay Server
BTCPay Server is a self-hosted, open-source Bitcoin payment processor - no third-party accounts required.Setup instructions
Deploy BTCPay Server
Self-host BTCPay Server following btcpayserver.org documentation. Requires a server and Bitcoin node.
Features
- Self-hosted - Complete control over your payment processing
- No KYC - No account registration with third parties
- No fees - Only Bitcoin network transaction fees
- Privacy - Your server, your data
- Lightning support - Accept Lightning Network payments
- Altcoins - Optional support for other cryptocurrencies
BTCPay Server is ideal for privacy-conscious users and Bitcoin maximalists who want complete payment sovereignty.
Configuring paid event types
Setting up pricing
To make an event type paid:Pricing options
Payment on booking page
When users book a paid event:- They fill out booking form (name, email, etc.)
- Click “Continue” or “Book”
- Redirected to payment processor
- Enter payment information
- Submit payment
- Redirected back to Cal.com with confirmation
Refunds and cancellations
Refund policy
Cal.com does not automatically process refunds. You must handle refunds manually:- User cancels booking (optional)
- You decide whether to issue refund based on your policy
- Process refund in payment processor dashboard (Stripe, PayPal, etc.)
- Cal.com booking can be cancelled separately
Processing refunds
- Stripe
- PayPal
- Bitcoin (Alby, BTCPay)
- Go to Stripe Dashboard > Payments
- Find the charge for the booking
- Click “Refund” button
- Choose full or partial refund
- Confirm refund - customer receives funds in 5-10 business days
Payment security
PCI Compliance - Cal.com never stores payment card data. All card processing happens on payment processor servers.
SSL/TLS - All payment flows use HTTPS encryption.
SCA support - Stripe integration supports Strong Customer Authentication (3D Secure) for EU compliance.
Fraud detection - Payment processors have built-in fraud detection and prevention.
Best practices
Clear pricing - Display price prominently in event type title or description
Refund policy - State your cancellation and refund policy upfront
Test payments - Use test mode to verify payment flow before going live
Tax compliance - Configure Stripe Tax or calculate tax in your pricing
Multiple currencies - Create separate event types for different currencies if needed
Backup payment method - Have a secondary processor in case of outages
Environment variables (self-hosted)
Self-hosted Cal.com requires API credentials for payment integrations:Cal.com Cloud users don’t need to configure environment variables - all payment processors work out of the box.
Troubleshooting
Payment integration won’t connect
- Verify you’re using a Business account (for PayPal)
- Check that API credentials are correct (for self-hosted)
- Ensure your payment processor account is activated
- Try disconnecting and reconnecting
- Check browser console for error messages
Bookings created without payment
- Verify “Require payment” is enabled in event type settings
- Check that a payment processor is selected
- Ensure price is set to a value > 0
- Test the booking flow end-to-end
Webhooks not working (self-hosted)
For Stripe webhooks:- Configure webhook endpoint:
https://yourdomain.com/api/integrations/stripepayment/webhook - Select events:
checkout.session.completed,payment_intent.succeeded - Copy webhook secret to environment variable:
STRIPE_WEBHOOK_SECRET
Comparing payment processors
| Feature | Stripe | PayPal | Alby (Bitcoin) | HitPay |
|---|---|---|---|---|
| Setup difficulty | Easy | Easy | Medium | Medium |
| Transaction fee | 2.9% + $0.30 | 2.9% + $0.30 | < 1% | 2.5% - 3.5% |
| Payment methods | 40+ | PayPal + Cards | Bitcoin only | E-wallets + Cards |
| Global support | 46 countries | 200+ countries | Worldwide | APAC only |
| Settlement time | 2-7 days | Instant (PayPal) | Instant | 1-3 days |
| Chargeback risk | Yes | Yes | No | Yes |
| Self-hostable | No | No | Yes (BTCPay) | No |
Next steps
Event types
Configure pricing for event types
App Store
Explore other integrations