Skip to main content

Booking Confirmed Trigger

The Booking Confirmed trigger starts a workflow when a booking is confirmed for the first time in your CaptainBook system.

Jerome Bajou avatar
Written by Jerome Bajou
Updated this week

Overview

The Booking Confirmed trigger starts a workflow when a booking is confirmed for the first time in your CaptainBook system.

When It Triggers

  • A booking transitions to confirmed status

  • The booking is confirmed for the first time (not on subsequent updates)

Use Cases

  • Send confirmation emails to customers

  • Notify staff about new bookings

  • Create follow-up tasks

  • Update external systems

  • Send booking details to partners

  • Generate invoices or receipts


Configuration

This trigger requires no additional configuration. It automatically triggers when any booking is confirmed in your system.


Available Data

When this trigger fires, it provides a booking object with comprehensive booking information.

Booking Object Structure

The booking object includes:

Basic Information

  • id - Booking ID

  • quantity - Number of items/guests booked

  • created_at - When the booking was created

  • confirmed_at - When the booking was confirmed

Pricing Information

  • direct_price - Direct price

  • gross_price - Gross price

  • net_price - Net price

  • retail_price - Retail price

  • commission - Commission amount

  • tip - Tip amount

  • application_fee - Application fee

Relationships

  • customer_id - Customer ID

  • customer_type - Customer type

  • provider_id - Provider ID

  • reseller_id - Reseller ID

Status & Notes

  • checked_in - Check-in status

  • thank_you_note - Thank you note

  • private_notes - Private notes

  • comments - Public comments

  • is_refundable - Whether booking is refundable

Cancellation Information

  • cancelled_at - Cancellation date (if cancelled)

  • cancelled_reason - Cancellation reason

  • cancelled_reason_details - Detailed cancellation reason

Accessing Booking Data

In your workflow actions, you can access booking data using variables:

{booking.id} 
{booking.customer_id}
{booking.gross_price}
{booking.confirmed_at}

Example Workflows

1. Send Confirmation Email

Workflow Steps:

  1. Trigger: Booking Confirmed

  2. Action: Send Notification

    • To: {booking.customer.email}

    • Subject: "Booking Confirmed - {booking.product.title}"

    • Body: Include booking details

2. Notify Team

Workflow Steps:

  1. Trigger: Booking Confirmed

  2. Condition: If {booking.gross_price} greater than 1000

  3. Action (True): Send Notification to team

  4. Action (False): Log booking

3. Create Follow-up Task

Workflow Steps:

  1. Trigger: Booking Confirmed

  2. Action: Delay (24 hours)

  3. Action: Send Notification (follow-up email)


Testing

When testing this trigger:

  1. Select a confirmed booking from your system

  2. The workflow will use that booking's data

  3. Review execution logs to see the booking data used

Test Data

The trigger provides access to the last 20 confirmed bookings for testing purposes.


Best Practices

  1. Filter when needed - Use conditions to only process relevant bookings

  2. Handle edge cases - Check if customer email exists before sending

  3. Use delays - Add delays before follow-up actions

  4. Log important data - Store booking IDs for tracking


Related Documentation

Did this answer your question?