HubSpot Integration: Recurring Donations
Last updated: April 23, 2026
Recurring donation plans (called Scheduled Donations in WeGive) sync to HubSpot as deals in the Recurring Donations pipeline. This article covers the field mapping, how WeGive statuses map to the nine stages in the pipeline, frequency labels, and an important limitation on the pull direction.
How Scheduled Donations Become Deals
When a supporter sets up a recurring gift in WeGive, the scheduled donation plan is pushed to HubSpot as a deal in the Recurring Donations pipeline. The individual payments that come out of that plan sync as separate one time deals in the Donations pipeline (see Article 3).
Matching Logic
Deals are matched using wegive_id on the HubSpot deal and hubspot_id on the WeGive scheduled donation.
Core Fields
Scheduled donation to recurring deal field mapping:
WeGive Field | HubSpot Property | Notes |
|
| Converted from cents to dollars (divided by 100). |
Auto-generated |
| Format: "{Supporter} {Amount}/{Frequency} {Fund}" |
|
| WeGive scheduled donation ID. |
|
| Mirror of |
|
| Supporter ID. |
|
| Primary fund. |
|
| Fund name. |
|
| Campaign attribution. |
|
| |
|
| Human-readable label (see below). |
|
| Raw WeGive status. |
|
| Y-m-d format. |
|
| Y-m-d format. |
|
| Y-m-d format. |
|
| ISO 8601 timestamp. |
|
| Reason the plan was paused. |
|
| ISO 8601. |
Constant |
| Always "Recurring". |
Constant |
| Always true. |
Deal Name Format
Recurring deal names include the frequency so they are easy to scan:
{Supporter Name} ${Amount}/{Frequency} {Fund Name}
For example: Jane Smith $50/Monthly General Fund
Status to Stage Mapping
WeGive scheduled donation status drives the HubSpot deal stage. The Recurring Donations pipeline includes nine stages so that at-risk and lifecycle states (In Arrears, Expiring Soon, Ending Soon) surface clearly in HubSpot.
WeGive scheduled donation status to HubSpot stage:
WeGive Status | HubSpot Stage | Typical Meaning |
| Active | Plan is running and billing on schedule. |
| Paused | Plan has been paused by the donor or an admin. |
| Cancelled | Plan was cancelled. |
| Ended | Plan completed its natural end date. |
| In Arrears | A recent payment failed and the plan has not recovered. |
| Missing | Expected payment did not occur. |
| Archived | Plan was archived from active reporting. |
| Expiring Soon | Payment method on file is about to expire. |
| Ending Soon | Plan end date is approaching. |
Retention workflow idea: Build a HubSpot workflow that triggers when a deal enters the In Arrears, Expiring Soon, or Ending Soon stage. Route those contacts to a donor retention sequence or a CS follow-up task.
Frequency Mapping
The wegive_frequency property carries a human readable label you can use in lists, dashboards, and workflows.
WeGive frequency value to HubSpot label:
WeGive Value | HubSpot Label |
| Weekly |
| Biweekly |
| Monthly |
| Quarterly |
| Semi-Annually |
| Annually |
Pause and End Dates
Paused plans surface the pause reason in
wegive_recurring_paused_reasonand the timestamp inwegive_recurring_paused_at. If the reason is blank, the plan was paused manually without a selected reason.Ending plans carry an
end_atdate inwegive_recurring_end_date. Plans with anend_atwithin a configurable window will appear in the Ending Soon stage.Payment methods about to expire move the plan into the Expiring Soon stage so your team can reach out before billing fails.
Important Limitation: HubSpot to WeGive
The integration does not create new scheduled donations in WeGive from HubSpot deals. This is intentional, so that a HubSpot user cannot accidentally create a billing commitment by dropping a deal into the Recurring pipeline.
Here is what the pull direction does and does not do:
What the HubSpot to WeGive pull does (and does not) do for recurring:
Behavior | Supported? |
Link an existing WeGive scheduled donation to its HubSpot deal (via | Yes |
Update an existing scheduled donation's status or amount from HubSpot | No |
Create a new scheduled donation in WeGive from a HubSpot deal | No |
Skip HubSpot deals that sit in a Donations (one-time) stage | Yes |
To create or edit a recurring plan, always use WeGive. The change will push to HubSpot within seconds.
Reporting on Recurring in HubSpot
A few practical ways to put the recurring sync to work inside HubSpot:
Active MRR: Filter deals where stage is Active in the Recurring Donations pipeline and sum
amount.At risk MRR: Filter deals where stage is In Arrears, Expiring Soon, or Ending Soon and sum
amount.Recurring donor list: Build a contact list where
wegive_is_recurring_donoris true.Recurring by campaign: Group Recurring deals by
wegive_campaign_nameto see which campaigns drive the most recurring revenue.
Common Questions
A donor cancelled in WeGive but the deal is still Active in HubSpot. Why?
Cancels are pushed in near real time, but if there is a sync queue backlog or a temporary HubSpot outage, updates may take a few minutes to appear. Check the integration logs in WeGive.
Can I move a deal from Cancelled back to Active in HubSpot?
Yes, but it will not reactivate the plan in WeGive. Reactivating a recurring plan must be done in WeGive (which often involves the donor re-entering payment information).
What happens when a recurring payment succeeds?
The scheduled donation deal in the Recurring pipeline updates its wegive_recurring_next_date and related rollup properties. A separate one time deal is also created in the Donations pipeline for the individual payment, with the Success stage.