Refound your company for the AI era at ZapConnect 2026. Save your spot β
Google Calendar + Xero integrations
Create Xero invoices for new Google Calendar events
The events you add to a calendar are what you need to invoice; get paperwork taken care of as you focus on the scheduling. Once this Google Calendar-Xero integration is active, any new event you add to your chosen Google Calendar will automatically trigger the creation of a new invoice on Xero, filling in the event's details.
How It Works
- A new event is created on Google Calendar
- Zapier automatically adds a new invoice on Xero
What You Need
- Google Calendar account
- Xero account
- When this happens...

New EventTriggers when an event is created.TriggerInstant - automatically do this!

Create Sales InvoiceCreates a new sales invoice (Accounts Receivable).ActionWrite
- Free forever for core features
- 14 day trial for premium features & apps
More things you can do with Google Calendar and Xero
Discover other triggers and actions you can use with Google Calendar and Xero
New CalendarTriggers when a calendar is created.
Try ItTriggerThis is the start of your ZapPollingZapier checks for new data every 15 min on the Free plan- CalendarRequired
- Search_term
Try ItTriggerThis is the start of your ZapPollingZapier checks for new data every 15 min on the Free plan- CalendarRequired
- Expand Recurring Events
Try ItTriggerThis is the start of your ZapInstantThis event starts a Zap instantly.- CalendarRequired
- Search_termRequired
- Trigger on newly created events only?
Try ItTriggerThis is the start of your ZapPollingZapier checks for new data every 15 min on the Free plan- NameRequired
- Description
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.- CalendarRequired
- Summary
- Description
- Location
- Add Conferencing?
- Start Date & TimeRequired
- End Date & TimeRequired
- Repeat Frequency
- Repeat Until
- Repeat How Many Times?
- All day
- Color
- Use custom event colors?
- Attendees
- Visibility
- Use Default Reminders?
- Reminders
- Minutes Before Reminders
- Show me as Free or Busy
- Guests Can Modify Event
- Event Type
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.- Source CalendarRequired
- EventRequired
- Destination CalendarRequired
- Send Notifications
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.- CalendarRequired
- EventRequired
- Summary
- Description
- Location
- Start Date & Time
- End Date & Time
- Repeat Frequency
- Repeat Until
- Repeat How Many Times?
- All day
- Color
- Use custom event colors?
- Attendees
- Notify Attendees?
- Visibility
- Use Default Reminders?
- Reminders
- Minutes Before Reminders
- Show me as Free or Busy
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.- CalendarRequired
- Event IDRequired
ActionThis is an event a Zap performs.SearchFind existing data in your app- Calendar
- Start Time
- End Time
ActionThis is an event a Zap performs.SearchFind existing data in your app- CalendarRequired
ActionThis is an event a Zap performs.SearchFind existing data in your app- OrganizationRequired
- Days_overdueRequired
Try ItTriggerThis is the start of your ZapPollingZapier checks for new data every 15 min on the Free plan- Trigger_info
- OrganizationRequired
- PayRun Status
- PayRun Period Start Date
- PayRun Period End Date
Try ItTriggerThis is the start of your ZapPollingZapier checks for new data every 15 min on the Free plan- OrganizationRequired
- Purchase Order Status
Try ItTriggerThis is the start of your ZapPollingZapier checks for new data every 15 min on the Free plan- OrganizationRequired
- Payment_type
Try ItTriggerThis is the start of your ZapPollingZapier checks for new data every 15 min on the Free plan- OrganizationRequired
- Status
- Change
- Contact
- Trigger_preference
- Copy
Try ItTriggerThis is the start of your ZapInstantThis event starts a Zap instantly.- OrganizationRequired
- InvoiceRequired
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.- OrganizationRequired
- Item CodeRequired
- NameRequired
- Description
- Is SoldRequired
- Sales Unit Price
- Sales Account
- Sales Tax Type
- Is PurchasedRequired
- Purchase Description
- Purchase Unit Price
- Purchase Account
- Purchase Tax Type
- Is TrackedRequired
- Inventory Asset Account
- Cost of Goods Sold Account
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.- OrganizationRequired
- Transaction_typeRequired
- ContactRequired
- Bank AccountRequired
- Date
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.- OrganizationRequired
- Contact NameRequired
- Account_number
- Sales Default Account Code
- Purchases Default Account Code
- Contact Requirements
- Primary Person - First Name
- Primary Person - Last Name
- Primary Person - Email
- Secondary Person - First Name
- Secondary Person - Last Name
- Secondary Person - Email
- Include secondary person in emails sent to contact?
- Phone - Country Code
- Phone - Area Code
- Phone Number
- Fax - Country Code
- Fax - Area Code
- Fax - Number
- Mobile - Country Code
- Mobile - Area Code
- Mobile - Number
- Direct Dial - Country Code
- Direct Dial - Area Code
- Direct Dial - Number
- Address__type_of
- Address - Attention
- Address - Line 1
- Address - Line 2
- Address - City/Town
- Address - State/Region
- Address - Postal/Zip Code
- Address - Country
- Tax_number
- Bank Account Number
- Groups
- Contact_number
- Company_number
- Payment Terms - Invoice Due (days)
- Payment Terms - Type for Sales Invoices
- Payment Terms - Bill Due (days)
- Payment Terms - Type for Purchase Invoices
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.- OrganizationRequired
- ContactRequired
- Date
- Expiry
- Quote Number
- Reference
- Theme
- Title
- Summary
- Currency
- Amounts Are
- Terms
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.- OrganizationRequired
- Warning_message
- Credit Note IDRequired
- Allocation IDRequired
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.- Info
- OrganizationRequired
- First NameRequired
- Middle Names
- Last NameRequired
- Date of BirthRequired
- Title
- EmailRequired
- Gender
- Phone Number
- Mobile Number
- Twitter Username
- Job Title
- Classification
- Termination Date
- Termination Reason
- Income Type
- Employment Type
- Status
- CopyEmployment
- Employment Basis
- Start Date
- Payroll Calendar
- Employee Group Name
- Is Authorised to Approve Leave
- Is Authorised to Approve Timesheets
- Super Fund
- Employee Number
- CopyTaxDeclaration
- Tax File Number
- TFN Exemption Type
- Residency Status
- Tax Scale Type
- Tax Offset Estimated Amount
- Upward Variation Tax Withholding Amount
- Approved Withholding Variation Percentage
- CopyBankAccount
- Statement Text
- Account Name
- BSB Number
- Account Number
- Remainder
- CopyAddress
- Address Line 1
- Address Line 2
- City/Suburb
- State/Region
- Postal Code
- Country
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.- OrganizationRequired
- Contact_nameRequired
- Email_address
- Status
- Date
- Due_date
- Currency
- Url
- Attachment
- Branding_theme
- Reference
- Line_items_type
- Item Code
- Description
- QuantityRequired
- Unit Price
- Account
- Tax Rate
- Tracking
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.- OrganizationRequired
- Document Type
- Document ID or NumberRequired
- Paid ToRequired
- Date
- Currency_rate
- AmountRequired
- Reference
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.- OrganizationRequired
- Contact (supplier)Required
- Date
- Delivery_date
- Order Number
- Reference
- Theme
- Currency
- Tax_type
- Delivery_address
- Attention
- Telephone
- Delivery_instructions
- Attachments
- Purchase Order Status
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.- Info
- OrganizationRequired
- EmployeeRequired
- First NameRequired
- Middle Names
- Last NameRequired
- Date of BirthRequired
- Title
- EmailRequired
- Gender
- Phone Number
- Mobile Number
- Twitter Username
- Job Title
- Classification
- Termination Date
- Termination Reason
- Income Type
- Employment Type
- Status
- CopyEmployment
- Employment Basis
- Start Date
- Payroll Calendar
- Employee Group Name
- Is Authorised to Approve Leave
- Is Authorised to Approve Timesheets
- Super Fund
- Employee Number
- CopyTaxDeclaration
- Tax File Number
- TFN Exemption Type
- Residency Status
- Tax Scale Type
- Tax Offset Estimated Amount
- Upward Variation Tax Withholding Amount
- Approved Withholding Variation Percentage
- CopyBankAccount
- Statement Text
- Account Name
- BSB Number
- Account Number
- Remainder
- CopyAddress
- Address Line 1
- Address Line 2
- City/Suburb
- State/Region
- Postal Code
- Country
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.- OrganizationRequired
- Quote IDRequired
- Quote Number
- Status
- ContactRequired
- Date
- Expiry
- Reference
- Theme
- Title
- Summary
- Currency
- Amounts Are
- Terms
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.- OrganizationRequired
- Resource typeRequired
- FileRequired
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.- OrganizationRequired
- Search_byRequired
ActionThis is an event a Zap performs.SearchFind existing data in your app- OrganizationRequired
- Email
ActionThis is an event a Zap performs.SearchFind existing data in your app- OrganizationRequired
- Search ByRequired
- Order ID or NumberRequired
ActionThis is an event a Zap performs.SearchFind existing data in your app- OrganizationRequired
- Invoice IDRequired
ActionThis is an event a Zap performs.SearchFind existing data in your app- OrganizationRequired
- Search_byRequired
ActionThis is an event a Zap performs.SearchFind existing data in your app- OrganizationRequired
- Search_byRequired
- Contact NameRequired
- Account_number
- Sales Default Account Code
- Purchases Default Account Code
- Contact Requirements
- Primary Person - First Name
- Primary Person - Last Name
- Primary Person - Email
- Secondary Person - First Name
- Secondary Person - Last Name
- Secondary Person - Email
- Include secondary person in emails sent to contact?
- Phone - Country Code
- Phone - Area Code
- Phone Number
- Fax - Country Code
- Fax - Area Code
- Fax - Number
- Mobile - Country Code
- Mobile - Area Code
- Mobile - Number
- Direct Dial - Country Code
- Direct Dial - Area Code
- Direct Dial - Number
- Address__type_of
- Address - Attention
- Address - Line 1
- Address - Line 2
- Address - City/Town
- Address - State/Region
- Address - Postal/Zip Code
- Address - Country
- Tax_number
- Bank Account Number
- Groups
- Contact_number
- Company_number
- Payment Terms - Invoice Due (days)
- Payment Terms - Type for Sales Invoices
- Payment Terms - Bill Due (days)
- Payment Terms - Type for Purchase Invoices
ActionThis is an event a Zap performs.Search or writeFind existing data in your app, or create a new record if no data is found
- CalendarRequired
- Time Before
- Time Before (Unit)
- Search_term
Try ItTriggerThis is the start of your ZapPollingZapier checks for new data every 15 min on the Free plan- CalendarRequired
- EventRequired
- Attendee/sRequired
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.- CalendarRequired
- EventRequired
- Notify Attendees?
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.- CalendarRequired
- Describe EventRequired
- Attendees
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.- CalendarRequired
- EventRequired
- Attendee/sRequired
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.- Api_docs_info
- Stop on errorRequired
- HTTP MethodRequired
- URLRequired
- Query string parameters
- Additional request headers
- Body
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.- CalendarRequired
- Expand Recurring Events
- Search_term
- Attendee email
- Start Time Before
- End Time After
- Event Type
ActionThis is an event a Zap performs.SearchFind existing data in your app- Show Hidden Calendars
- Show Deleted Calendars
- Minimum Access Role
ActionThis is an event a Zap performs.SearchFind existing data in your app- CalendarRequired
- Expand Recurring Events
- Search_term
- Attendee email
- Start Time Before
- End Time After
- Event Type
- Summary
- Description
- Location
- Add Conferencing?
- Start Date & TimeRequired
- End Date & TimeRequired
- Repeat Frequency
- Repeat Until
- Repeat How Many Times?
- All day
- Color
- Use custom event colors?
- Attendees
- Visibility
- Use Default Reminders?
- Reminders
- Minutes Before Reminders
- Show me as Free or Busy
- Guests Can Modify Event
- Event Type
ActionThis is an event a Zap performs.Search or writeFind existing data in your app, or create a new record if no data is found- OrganizationRequired
- Status
- Type
Try ItTriggerThis is the start of your ZapPollingZapier checks for new data every 15 min on the Free plan- OrganizationRequired
- Report TypeRequired
Try ItTriggerThis is the start of your ZapPollingZapier checks for new data every 15 min on the Free plan- OrganizationRequired
- Payment_type
Try ItTriggerThis is the start of your ZapPollingZapier checks for new data every 15 min on the Free plan- OrganizationRequired
- Project State
Try ItTriggerThis is the start of your ZapPollingZapier checks for new data every 15 min on the Free plan- OrganizationRequired
- Quote Status
Try ItTriggerThis is the start of your ZapPollingZapier checks for new data every 15 min on the Free plan- OrganizationRequired
- Status
Try ItTriggerThis is the start of your ZapInstantThis event starts a Zap instantly.- OrganizationRequired
- Invoice IDRequired
- NoteRequired
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.- OrganizationRequired
- Credit Note IDRequired
- Invoice IDRequired
- AmountRequired
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.- OrganizationRequired
- From AccountRequired
- To AccountRequired
- AmountRequired
- Date
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.- OrganizationRequired
- CodeRequired
- NameRequired
- TypeRequired
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.- OrganizationRequired
- TypeRequired
- ContactRequired
- Date
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.- OrganizationRequired
- Invoice IDRequired
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.- OrganizationRequired
- Mark Item as a Sales Item?
- Mark Item as a Purchase Item?
- Item Name
- Item CodeRequired
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.- OrganizationRequired
- Contact_nameRequired
- Email_address
- Contact_account_number
- Primary Person - First Name
- Primary Person - Last Name
- Phone - Country Code
- Phone - Area Code
- Phone Number
- Fax - Country Code
- Fax - Area Code
- Fax - Number
- Mobile - Country Code
- Mobile - Area Code
- Mobile - Number
- Direct Dial - Country Code
- Direct Dial - Area Code
- Direct Dial - Number
- Contact Address Type
- Address - Attention
- Address - Line 1
- Address - Line 2
- Address - City/Town
- Address - State/Region
- Address - Postal/Zip Code
- Address - Country
- Contact_tax_number
- Bank Account Number
- Contact Number
- Status
- Date
- Due_date
- Currency
- Url
- Attachment
- Branding_theme
- Number
- Reference
- Sent_to_contact
- Shipping_cost_copy
- Shipping Cost
- Shipping Description
- Shipping Cost Tax Rate (If Applicable)
- Line_items_type
- Item Code
- Description
- QuantityRequired
- Unit Price
- Discount %
- Discount Amount
- Account
- Tax Rate
- Tracking
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.- OrganizationRequired
- ContactRequired
- Project NameRequired
- Deadline for the project
- Project Estimate
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.- OrganizationRequired
- ContactRequired
- Repeated Invoice Schedule
- Invoice Creation: Frequency TypeRequired
- Invoice Creation: Frequency (Period)Required
- Due Date Type: Payment TermsRequired
- Set Due Dates (Days)Required
- Start Date:Required
- End Date
- StatusRequired
- Currency
- Branding_theme
- Reference
- Mark as approved for sending?
- Email a copy to Sender?
- Include PDF
- Line Amount Types
- Shipping_cost_copy
- Shipping Cost
- Shipping Description
- Shipping Cost Tax Rate (If Applicable)
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.- OrganizationRequired
- Purchase OrderRequired
- Contact
- Update Method for Line Items
- Date
- Delivery_date
- Line Amount Types
- Purchase Order Number
- Reference
- Branding Theme
- Currency
- Status
- Sent to Contact
- Delivery Address
- Attention To
- Telephone
- Delivery Instructions
- Expected_arrival_date
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.- Info
- OrganizationRequired
- Invoice_idRequired
- Contact
- Status
- Date
- Due_date
- Expected_payment_date
- Reference
- Branding_theme
- Url
- Currency
- Sent_to_contact
- Attachments
- Invoice_number
- Line_amount_types
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.- Stop on errorRequired
- HTTP MethodRequired
- URLRequired
- Query string parameters
- Additional request headers
- Body
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.- OrganizationRequired
- Search_byRequired
ActionThis is an event a Zap performs.SearchFind existing data in your app- OrganizationRequired
- Invoice IDRequired
- Include PDF File
- Include Online Invoice URL
ActionThis is an event a Zap performs.SearchFind existing data in your app- OrganizationRequired
- Contact ID
- Quote Number
- Status
ActionThis is an event a Zap performs.SearchFind existing data in your app- OrganizationRequired
- Search_byRequired
- Include Online Invoice URL
ActionThis is an event a Zap performs.SearchFind existing data in your app- OrganizationRequired
- Search_byRequired
ActionThis is an event a Zap performs.SearchFind existing data in your app- OrganizationRequired
- Search_byRequired
- Mark Item as a Sales Item?
- Mark Item as a Purchase Item?
- Item Name
- Item CodeRequired
ActionThis is an event a Zap performs.Search or writeFind existing data in your app, or create a new record if no data is found
Google Calendar lets you organize your schedule and share events with co-workers and friends. With Google's free online calendar, it's easy to keep track of your daily schedule.
Xero is an accounting app that lets you track businesses expenses and accounting with intuitive mobile apps and web interfaces for point-of-sale, ecommerce, time-tracking, and more.
Related categories







