/
/
Catch HubSpot wins that never got billed in Stripe
For finance teams who want every closed won deal checked for a live Stripe subscription, by asking their AI assistant.
On this page
Connector
Connect HubSpot, pick your AI tool and paste the prompt.
The problem
Closed won deals that never got billed
Deals marked closed won in HubSpot do not always become a Stripe subscription, and some are billed for a different amount than was sold. Finding the gaps by hand usually waits until revenue does not reconcile.
Without PopdockAI
- List recent closed won deals
- Look each buyer up in Stripe by email
- Compare subscriptions with deal amounts
- Find the gaps at month end
With PopdockAI
- Recent closed won deals are read with buyer domains and emails
- Buyers are matched to Stripe by email and domain only
- Deals are grouped as no customer, no live subscription or billed off by over 10 percent
- Very recent deals are marked, and nothing is changed
The prompt
Use this prompt
Copy it into any AI tool connected to PopdockAI. Swap the values in braces for your own.
**Objective:** Find HubSpot deals closed won in the last `{closed-since-days}` days (default 60) whose company has no Stripe customer or no live Stripe subscription, so billing gaps after a sale are caught.
**Step 1: Find closed won deals in HubSpot**
Call `hubspot-get-deal-pipeline-stages` to learn the exact closed won stage label(s). Then call `hubspot-get-deals` with `deal-stage-name` = each closed won label and `close-date.from` = today minus `{closed-since-days}` days (default 60), `max-records` 200. If `{pipeline}` is given, also pass it as `pipeline-name`.
If no deals come back, say so and stop.
**Step 2: Get the buyer's emails and domain in HubSpot**
For each deal's `company-id`, call `hubspot-get-companies` with `record-id` = that id to get `domain`, and `hubspot-get-contacts` with `company-id` to get contact emails. If the deal has no company but has a `contact-id`, call `hubspot-get-contacts` with `record-id` = that id.
**Step 3: Look for the customer and subscription in Stripe**
Call `stripe-get-customer` with `email.contains` = the company domain (skip free mail domains), then with `email` = each contact email not yet matched. If no customer matches, classify the deal as "No Stripe customer".
For each matched `customer-id`, call `stripe-get-subscription` with `customer-id`. If none has status active or trialing, classify as "Customer but no live subscription". Otherwise classify as "Billing in place" and compare the deal `amount` with the subscription's annualised value from `stripe-get-subscription-item` (MRR x 12).
**Step 4: Report**
1. No Stripe customer: deal name, company, close date, amount, deal owner.
2. Customer but no live subscription: as above plus Stripe customer-id and subscription statuses seen.
3. Billing in place but annualised value differs from the deal amount by more than 10 percent: deal amount, annualised Stripe value, difference.
4. Count of deals with billing in place and matching.
**Rules & Guidelines:**
* `hubspot-get-deal-pipeline-stages`, `hubspot-get-deals`, `hubspot-get-companies` and `hubspot-get-contacts` are on the hubspot server. `stripe-get-customer`, `stripe-get-subscription` and `stripe-get-subscription-item` are on the stripe server.
* Read-only. Do not call `hubspot-update-deal`, `hubspot-add-deal-note` or any other HubSpot add or update tool.
* A deal may legitimately be one-time (no subscription). If the deal's `deal-type` or name suggests a one-off service, say so instead of flagging it as a gap.
**Validation:**
* Match on email and domain only, never on company name alone.
* If the deal closed in the last 3 days, mark it "recent, may not be billed yet".
* If a parameter is empty, use its default; ignore `{pipeline}` when empty.Who it's for
One answer, three teams that use it
Billing specialists
Catch wins that were never set up
Find closed won deals with no Stripe customer or live subscription before the first invoice is missed.
Which HubSpot deals closed won in the last 30 days have no Stripe customer?
Revenue operations
Spot billing that does not match the sale
See subscriptions billed more than 10 percent away from the deal amount, so pricing can be checked.
Which closed won deals this quarter are billed in Stripe for a different amount than the HubSpot deal?
Finance controllers
Reconcile bookings and billing
Check sales against subscriptions within weeks of the sale, not at month end.
Compare HubSpot closed won deals in the Enterprise pipeline from the last 90 days with Stripe subscriptions.
How it works
What PopdockAI does when you ask
You give a lookback period and your AI assistant checks recent HubSpot wins against Stripe customers and subscriptions. You get the gaps by type, and neither system is changed.
01
Ask
You give a lookback period and optionally a pipeline.
02
Read
It reads recent closed won deals and each buyer's domain and contact emails.
03
Match
It finds Stripe customers by email and domain only, never company name.
04
Report
You get the gaps by type, with very recent deals marked, changing nothing.
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.
hubspot-get-deal-pipeline-stages
hubspot-get-deals
hubspot-get-companies
hubspot-get-contacts
stripe-get-customer
stripe-get-subscription
stripe-get-subscription-item
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
Nothing sold goes unbilled
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)
