> ## Documentation Index
> Fetch the complete documentation index at: https://mintlify.com/calcom/cal.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Integrations overview

> Connect Cal.com with your favorite calendar, video conferencing, payment, and productivity apps.

Cal.com's App Store offers 100+ integrations to streamline your scheduling workflow. Connect calendars, video conferencing platforms, payment processors, and productivity tools to create a seamless booking experience.

## Integration categories

<CardGroup cols={2}>
  <Card title="Calendar apps" icon="calendar" href="/integrations/calendar-apps">
    Sync with Google Calendar, Outlook, Apple Calendar, and more to check availability and create events automatically.
  </Card>

  <Card title="Video conferencing" icon="video" href="/integrations/video-conferencing">
    Generate meeting links for Zoom, Google Meet, MS Teams, and other platforms when bookings are confirmed.
  </Card>

  <Card title="Payment apps" icon="credit-card" href="/integrations/payment-apps">
    Accept payments through Stripe, PayPal, and other processors for paid bookings and events.
  </Card>

  <Card title="App Store" icon="store" href="/integrations/app-store">
    Browse the full catalog of CRM, analytics, automation, and other integrations.
  </Card>
</CardGroup>

## How integrations work

Integrations in Cal.com are modular apps that extend your scheduling functionality:

<Steps>
  <Step title="Connect your account">
    Install an integration from the App Store and authenticate with OAuth or API credentials.
  </Step>

  <Step title="Configure settings">
    Set up integration-specific options like calendar selection, payment amounts, or meeting preferences.
  </Step>

  <Step title="Use in event types">
    Enable integrations per event type to control which bookings use which services.
  </Step>

  <Step title="Automatic sync">
    Cal.com handles the rest - creating events, generating links, processing payments automatically.
  </Step>
</Steps>

## Popular integrations

### Calendar sync

* **Google Calendar** - Two-way sync with Google Workspace
* **Outlook Calendar** - Microsoft 365 and Exchange integration
* **Apple Calendar** - iCloud calendar support
* **CalDAV** - Connect any CalDAV-compatible calendar

### Video conferencing

* **Zoom** - Generate Zoom meeting links automatically
* **Google Meet** - Create Meet rooms for bookings
* **MS Teams** - Microsoft Teams integration (requires work/school account)
* **Cal Video** - Built-in video powered by Daily.co

### Payment processing

* **Stripe** - Accept credit cards, digital wallets, and bank transfers
* **PayPal** - Process payments through PayPal
* **Alby** - Accept Bitcoin payments via Lightning Network

### CRM and automation

* **HubSpot** - Sync contacts and deals
* **Salesforce** - Enterprise CRM integration
* **Zapier** - Connect to 5000+ apps
* **Make** - Advanced workflow automation

## Integration architecture

All integrations are located in `packages/app-store/` in the Cal.com monorepo:

```
packages/app-store/
├── googlecalendar/       # Individual app packages
│   ├── _metadata.ts      # App configuration
│   ├── api/              # OAuth and API handlers
│   ├── lib/              # Core functionality
│   └── static/           # Icons and assets
├── zoomvideo/
├── stripepayment/
└── ...
```

<Note>
  Each integration is a self-contained package with its own metadata, API endpoints, and business logic.
</Note>

## Authentication types

Integrations use different authentication methods:

* **OAuth 2.0** - Most calendar and video apps (Google, Zoom, Microsoft)
* **API Keys** - Payment processors and some SaaS tools
* **Static URLs** - Simple video conferencing links (Whereby, FaceTime)
* **Username/Password** - CalDAV and Exchange servers

## Managing integrations

### Installation

1. Navigate to Settings > Apps in your Cal.com dashboard
2. Browse categories or search for a specific integration
3. Click "Install" and complete the authentication flow
4. Configure integration-specific settings

### Per-event configuration

After installing an integration, enable it for specific event types:

1. Edit an event type
2. Go to the Apps tab
3. Enable the integration and configure its settings
4. Save your event type

### Disconnecting apps

To remove an integration:

1. Go to Settings > Apps
2. Find the installed integration
3. Click "Disconnect" or "Uninstall"
4. Confirm the removal

<Warning>
  Disconnecting a calendar integration may affect availability checking. Disconnecting payment apps may prevent collecting payments on paid event types.
</Warning>

## Environment variables

Self-hosted instances require environment variables for certain integrations:

```bash theme={null}
# Google Calendar & Meet
GOOGLE_API_CREDENTIALS='{"web":{"client_id":"...","client_secret":"..."}}'

# Zoom
ZOOM_CLIENT_ID=your_zoom_client_id
ZOOM_CLIENT_SECRET=your_zoom_client_secret

# Stripe
STRIPE_CLIENT_ID=your_stripe_client_id
NEXT_PUBLIC_STRIPE_PUBLIC_KEY=your_stripe_public_key
STRIPE_PRIVATE_KEY=your_stripe_private_key

# Daily.co (Cal Video)
DAILY_API_KEY=your_daily_api_key
```

<Info>
  Cal.com Cloud users don't need to configure environment variables - all integrations work out of the box.
</Info>

## Building custom integrations

Developers can create custom integrations using the app-store CLI:

```bash theme={null}
cd packages/app-store
yarn app-store:create
```

Follow the prompts to scaffold a new integration with:

* Metadata configuration
* OAuth flow (if needed)
* API endpoint handlers
* UI components
* Type definitions

See the [App Store CONTRIBUTING.md](https://github.com/calcom/cal.com/blob/main/packages/app-store/CONTRIBUTING.md) for detailed development guidelines.

## Next steps

<CardGroup cols={2}>
  <Card title="Calendar apps" icon="calendar" href="/integrations/calendar-apps">
    Set up two-way calendar sync
  </Card>

  <Card title="Video conferencing" icon="video" href="/integrations/video-conferencing">
    Connect video platforms
  </Card>

  <Card title="Payment apps" icon="credit-card" href="/integrations/payment-apps">
    Accept payments for bookings
  </Card>

  <Card title="App Store" icon="store" href="/integrations/app-store">
    Browse all integrations
  </Card>
</CardGroup>
