Reference · Tools
Chargebee Trigger
Starts workflow when Chargebee events occur
Chargebee Trigger starts a workflow the moment Chargebee fires a webhook event — covering 34 event types across subscriptions, invoices, payments, customers, cards, transactions, and refunds. You configure which event types to listen for, and only matching events run the workflow. A common use case is automatically sending a Slack alert or updating a CRM record when a subscription is cancelled or a payment fails.
- Node type
- Webhook trigger
- Parameters
- 1
- Outputs
- Output
- Credentials
- Chargebee Webhook Basic Auth
Chargebee Trigger
Trigger workflow from Chargebee webhook events
Overview
Starts a workflow when Chargebee sends a webhook event. Supports 34 event types across subscriptions, invoices, payments, customers, cards, transactions, and refunds. The user configures the webhook URL in the Chargebee dashboard (Settings > Webhooks). Events are filtered based on the selected event types — only matching events trigger the workflow.
Category: Finance
Tool Name: chargebee_trigger
Version: 1
Appearance: Icon: lucide-CircleDollarSign | Color: #ff3300
Node Type
Trigger — webhook (receives incoming HTTP callbacks)
Input / Output
| Direction | Port(s) |
|---|---|
| Input | None (trigger node) |
| Output | Output |
Credentials
This tool requires Chargebee Webhook Basic Auth credentials. See the Credentials Guide for setup instructions.
Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| Events | multiOptions | Yes | [] | Which Chargebee events to listen for. Select specific events or use * for all events. |
Options: * (wildcard — any event), card_added, card_deleted, card_expired, card_expiring (30 days before the expiry date), card_updated, customer_changed, customer_created, customer_deleted, invoice_created (metered billing — a Pending invoice is created before being closed), invoice_deleted, invoice_generated (a new invoice is generated; for metered billing, when a Pending invoice is closed), invoice_updated (shipping/billing address changed, invoice voided, or amount due modified), payment_failed, payment_initiated (via direct debit), payment_refunded, payment_succeeded, refund_initiated (via direct debit), subscription_activated (moved from Trial to Active), subscription_cancellation_scheduled (set to cancel at end of current term), subscription_cancelled, subscription_cancelling (6 days before the scheduled cancellation date), subscription_changed (recurring items changed), subscription_created, subscription_deleted, subscription_reactivated (moved from cancelled back to Active or Trial), subscription_renewal_reminder (3 days before renewal), subscription_renewed, subscription_scheduled_cancellation_removed, subscription_shipping_address_updated, subscription_started (a future subscription begins), subscription_trial_ending (6 days before the trial ends), transaction_created, transaction_deleted, transaction_updated |
Output Data
Each delivered event produces one output item carrying the Chargebee event payload exactly as sent — id, event_type, occurred_at, source, api_version, and content, where content holds the objects the event is about (subscription, customer, invoice, transaction, card, and so on, depending on the event).
Three fields are added to every item:
_trigger— alwayschargebee_webhook_timestamp— ISO 8601 timestamp of when the request arrived_webhookEvent— theevent_typeChargebee reported
Requests without an event_type, and events not in your Events selection, are acknowledged but do not start the workflow. Selecting * accepts every event.
Reference the payload downstream by expression, e.g. {{ $json.content.subscription.id }} or {{ $json.content.customer.email }}.
Usage Examples
- trigger workflow when a new subscription is created in Chargebee
- listen for Chargebee payment failures
- react to invoice generation events from Chargebee
- start workflow when a customer is created or changed
Example Configuration
React to the subscription lifecycle:
{
"type": "chargebee_trigger",
"parameters": {
"events": [
"subscription_created",
"subscription_activated",
"subscription_cancelled"
]
}
}
Watch for billing problems:
{
"type": "chargebee_trigger",
"parameters": {
"events": ["payment_failed", "card_expiring", "card_expired"]
}
}
Receive every Chargebee event and branch downstream:
{
"type": "chargebee_trigger",
"parameters": {
"events": ["*"]
}
}
Trigger Behavior
- Activation: When the workflow is activated, a webhook endpoint is registered with the service.
- Deactivation: The webhook is automatically unregistered when the workflow is deactivated.
- Payload: The incoming webhook payload is parsed and output as workflow items.
- Verification: Supports signature verification where applicable.
Tips
Receives webhook events from Chargebee. Configure the webhook URL in Chargebee dashboard (Settings > Webhooks). Select which event types to listen for, or use the wildcard (*) to receive all events. Outputs the full Chargebee event payload including event_type and content.
- Chargebee webhooks are set up by hand. Activating the workflow does not register anything with Chargebee — copy the node’s webhook URL into Chargebee yourself, under Settings > Webhooks.
- Set Basic Auth on the Chargebee webhook using the same username and password as the credential configured here. Requests that do not match are rejected, which is what keeps the endpoint from being triggered by anyone who learns the URL.
- Selecting
*still delivers everything, so pair it with a Switch node on{{ $json.event_type }}rather than trying to handle all 34 events in one branch. occurred_atis a Unix timestamp in seconds, not an ISO date — convert it before comparing against_timestamp.
Frequently asked questions
How do I connect BusyBot to Chargebee? Does activating the workflow register the webhook automatically?
No — BusyBot does not register the webhook with Chargebee on your behalf. You must copy the node's webhook URL manually and paste it into your Chargebee dashboard under Settings > Webhooks. Only after that will Chargebee start delivering events to this node.
What credential does this node need, and how should I configure Basic Auth on the Chargebee side?
The node uses a Chargebee Webhook Basic Auth credential (username and password). When you create the webhook in Chargebee, enable Basic Authentication and enter the same username and password you put in the BusyBot credential. Requests that do not include matching credentials are rejected, which prevents unauthorized parties from triggering your workflow if they discover the URL.
Can I listen to all 34 event types at once, and if so, how should I route them?
Yes — selecting the wildcard option (*) delivers every event type to the workflow. Because all 34 event types arrive through a single output, the recommended approach is to add a Switch node immediately after and branch on {{ $json.event_type }}. Trying to handle all variants in one branch quickly becomes unmanageable.
The event payload has an occurred_at field. Is that a standard date string I can compare directly?
No — occurred_at is a Unix timestamp expressed in whole seconds, not an ISO 8601 date string. If you need to compare it against another date or the workflow's own timestamp, convert it first (for example, multiply by 1000 to get milliseconds before passing it to a date function).
What does the node actually output? Can I access the full event details downstream?
The node outputs the complete Chargebee event payload as JSON. This includes the event_type field (which identifies what happened) and a content object that contains the full details specific to that event — the subscription object, invoice, payment intent, and so on. Everything Chargebee sends is available to subsequent nodes.
Build with the Chargebee Trigger node
Drop it into a workflow, wire it to an agent, or call it on a schedule. You'll need Chargebee Webhook Basic Auth credentials first.
Open BusyBotLast updated . Spotted something wrong? Tell us.