/
/
Reach cancelling Stripe customers before access ends
For customer success and support teams who want a save call booked in HubSpot for every Stripe subscription set to cancel, by asking their AI assistant.
On this page
Connector
Connect HubSpot, pick your AI tool and paste the prompt.
The problem
Cancelling customers leave before anyone reaches out
When a customer sets a Stripe subscription to cancel at period end, there is a short window to talk to them. Spotting those subscriptions, valuing them and getting a call onto the right HubSpot record by hand is slow, so many go without contact.
Without PopdockAI
- Find subscriptions set to cancel in Stripe
- Work out what each one is worth
- Find the customer in HubSpot by email or domain
- Create a call task before access ends
With PopdockAI
- Subscriptions set to cancel in your window are read
- Monthly recurring revenue is worked out without mixing currencies
- Customers are matched in HubSpot and existing save tasks are skipped
- You confirm the table, highest value first, before tasks are created
The prompt
Use this prompt
Copy it into any AI tool connected to PopdockAI. Swap the values in braces for your own.
**Objective:** For Stripe subscriptions set to cancel at the end of a period that ends in the next `{days-ahead}` days (default 30), create one HubSpot save task per subscription on the customer's contact and company, so someone talks to them before access ends. Nothing is written until the user confirms.
**Step 1: Find cancelling subscriptions in Stripe**
Call `stripe-get-subscription` with `cancel-at-period-end` set to true, `current-period-end.to` set to today plus `{days-ahead}` days (30 if empty) and `max-records` 100. Keep rows whose `current-period-end` is today or later, with `subscription-id`, `customer-email`, `customer-name`, `status`, `current-period-end` and `canceled-at`. For each one, call `stripe-get-subscription-item` with `subscription-id` set to it and work out MRR as `price-unit-amount` x `quantity` divided by 100, normalised by `price-recurring-interval` (month as is, year / 12, week x 52 / 12, day x 365 / 12). Never add currencies together.
**Step 2: Find the customer in HubSpot**
The join is the Stripe `customer-email` against the HubSpot contact `email`, compared case-insensitively after trimming. Call `hubspot-get-contacts` with `email` set to it and keep `record-id` and `company-id`. If no contact comes back, call `hubspot-get-companies` with `company-domain-name` set to the email's domain (skip free mail domains) and keep its `record-id`. If nothing matches, or several records match, list the subscription as unmatched and do not create a task for it.
**Step 3: Skip subscriptions that already have a task**
Call `hubspot-get-tasks` with `task-title.contains` set to the `subscription-id`. If a task comes back whose `task-status` is not completed, skip the subscription and show that task.
**Step 4: Confirm**
Show a table, highest MRR first: customer, email, subscription id, MRR and currency, period end, date the cancellation was requested, and the task due date (7 days before `current-period-end`, or today if that has passed). Ask for an explicit yes and offer to exclude rows. Do not continue without a yes.
**Step 5: Write and verify**
For each confirmed subscription, call `hubspot-add-task` once with `subject` set to "Save Stripe subscription <subscription-id>", `body` set to the MRR, currency, period end and cancellation date, `due-date` as above, `status` NOT_STARTED, `priority` HIGH, `type` CALL, `contact-ids` set to the contact `record-id` when there is one and `company-ids` set to the company id when there is one. Set `owner-id` only when `{owner-id}` is a numeric HubSpot owner ID; otherwise leave it unset, because no tool turns a person's name into an owner ID. Then call `hubspot-get-tasks` with `task-title.contains` set to each subscription id and confirm the task exists. Report created, failed and skipped rows.
**Rules & Guidelines:**
* `stripe-get-subscription` and `stripe-get-subscription-item` are on the stripe server; `hubspot-get-contacts`, `hubspot-get-companies`, `hubspot-get-tasks` and `hubspot-add-task` are on the hubspot server.
* The only write tool allowed is `hubspot-add-task`, once per confirmed subscription and only after the confirmation in Step 4. Call no other hubspot-add, hubspot-update, hubspot-rename, hubspot-remove, hubspot-subscribe, hubspot-unsubscribe or hubspot-import tool, and do not use the engagement task tools.
* The stripe server has no write tools; only the stripe read tools named here are used, and nothing is charged, refunded or sent to the customer. This prompt does not undo a cancellation; it only schedules the conversation.
**Validation:**
* If no subscription is set to cancel in the window, say so and stop.
* If the user declines or does not answer, stop with nothing written.
* Never create a second open task for the same subscription.Who it's for
One answer, three teams that use it
Customer success managers
Reach customers before they leave
Get a save call task for each cancelling subscription while there is still time to talk.
Create HubSpot save tasks for Stripe subscriptions set to cancel in the next 14 days.
Retention specialists
Start with the most valuable accounts
See cancelling subscriptions ranked by monthly revenue, so the biggest are called first.
Which Stripe subscriptions set to cancel this month are worth the most per month?
Account managers
Know when your customer plans to cancel
A cancellation in Stripe becomes a call task on your HubSpot record, not a surprise at renewal.
Are any Contoso or Fabrikam subscriptions in Stripe set to cancel? Add save tasks in HubSpot if so.
How it works
What PopdockAI does when you ask
Your AI assistant finds Stripe subscriptions set to cancel and the matching HubSpot records. Save call tasks are created only after you confirm, and the cancellation itself is not undone.
01
Find
It reads Stripe subscriptions set to cancel at period end and works out their monthly value.
02
Match
It finds each customer in HubSpot by email or domain and skips ones with an open save task.
03
Confirm
You review the table, highest value first, and say yes.
04
Create
It creates one save call task per subscription and checks each one exists.
What PopdockAI provides
The tools behind the answer
Ready made tools for HubSpot and one secure connection to your AI tool. No code, no exports.
stripe-get-subscription
stripe-get-subscription-item
hubspot-get-contacts
hubspot-get-companies
hubspot-get-tasks
hubspot-add-task
This report is built from Get data tools only. PopdockAI applies the row, field and parameter rules your admin sets, and every query is written to the audit trail.
The outcome
A save call for every cancelling customer
Related use cases
More ways to put this data to work
One prompt template with infinite possibilities.
Your AI assistant adapts its approach, tone, and capabilities to match each unique context while you maintain a single, manageable workflow.
Join forward-thinking companies that are transforming their operations with intelligent, secure AI automation.

.webp)
