Welcome to Syncfy Documentation
Learn how to connect your Stripe and HubSpot accounts to automatically sync customer revenue data in real-time.
Quick Start Guide
Connect Stripe
Link your Stripe account to pull customer and subscription data
Connect HubSpot
Authorize Syncfy to write revenue data to your HubSpot CRM
Configure Matching
Set how Stripe customers match to HubSpot companies (by email or Stripe ID)
Run Full Sync
Sync all existing customers, then enjoy real-time webhook updates
What Gets Synced
Monthly Recurring Revenue (MRR)
Calculated from all active subscriptions for each customer, normalized to monthly amounts.
- Handles monthly, yearly, and custom billing intervals
- Supports tiered pricing
- Updates in real-time via webhooks
Total Spend (Lifetime Value)
Sum of all successful charges minus refunds for each customer.
- Includes one-time and recurring charges
- Excludes refunded amounts
- Historical data included
Subscription Status
Current subscription state for each customer.
- Active, Trialing, Canceled, Past Due
- Updated when subscription changes
Last Synced Timestamp
When each company record was last updated by Syncfy.
- Useful for debugging
- Audit trail for changes
Connecting Stripe
Syncfy uses Stripe Connect to securely access your Stripe data. When you click "Connect Stripe", you'll be redirected to Stripe to authorize the connection.
Permissions Required:
- Read customers - Access customer email and metadata
- Read subscriptions - Calculate MRR from active subscriptions
- Read charges - Calculate total lifetime spend
Note: Syncfy only has read-only access. We cannot modify your Stripe data, create charges, or access sensitive payment information.
Connecting HubSpot
Click "Connect HubSpot" to authorize Syncfy to write to your HubSpot CRM. You'll be redirected to HubSpot to grant permissions.
Permissions Required:
- CRM Companies - Read and update company records
- CRM Contacts - Search for contacts by email
Custom Properties Created:
Syncfy will create these custom properties on your HubSpot companies (if they don't exist):
stripe_mrr- Monthly Recurring Revenuestripe_total_spend- Lifetime Valuestripe_subscription_status- Subscription Statusstripe_customer_id- Stripe Customer IDstripe_last_synced- Last Sync Timestamp
Customer Matching
Syncfy needs to match Stripe customers to HubSpot companies. You can configure how this matching works in Settings → Matching Rules.
Match by Email (Default)
Uses the Stripe customer's email to find a HubSpot company with a contact that has the same email address.
✓ Works automatically with existing data
Match by Stripe Customer ID
Matches using the stripe_customer_id property on HubSpot companies.
⚠ Requires setting up the property on HubSpot companies first
Tip: If a match isn't found, the sync will show "Not Found" status. Create the matching HubSpot company first, then re-sync.
Real-time Webhooks
After initial setup, Syncfy automatically listens for Stripe webhook events to keep your HubSpot data up-to-date in real-time.
Events We Listen For:
customer.subscription.createdcustomer.subscription.updatedcustomer.subscription.deletedinvoice.paidcharge.refunded
When any of these events occur, Syncfy automatically recalculates and updates the corresponding HubSpot company record.
Sync Preferences
In Settings → Sync Settings, you can choose which fields to sync to HubSpot. Toggle off any fields you don't need.
- Monthly Recurring Revenue (MRR)
- Total Spend (Lifetime Value)
- Subscription Status
- Stripe Customer ID
- Last Synced Timestamp
Security & Privacy
- OAuth tokens are encrypted at rest using AES-256 encryption
- We never store credit card numbers or sensitive payment data
- Read-only access to Stripe - we cannot make charges or modify your data
- You can disconnect at any time from the Connections page
- All data is isolated per organization - multi-tenant architecture
Frequently Asked Questions
Why are my syncs showing "Not Found"?
This means Syncfy found the Stripe customer but couldn't find a matching company in HubSpot. Make sure your HubSpot companies have contacts with matching email addresses, or set up matching by Stripe Customer ID.
How often does data sync?
After the initial full sync, data updates in real-time via Stripe webhooks whenever subscriptions change or payments are made. You can also manually trigger a full sync anytime.
Will this work with Stripe Connect / Platforms?
Currently, Syncfy works with standard Stripe accounts. Support for connected accounts in Stripe Connect platforms is on our roadmap.
Can I sync to HubSpot Contacts instead of Companies?
Currently, Syncfy syncs to HubSpot Companies. Contact-level syncing may be added in a future update.
What happens if I disconnect and reconnect?
Your sync history is preserved. After reconnecting, run a Full Sync to update all records.
Is there a limit on how many customers I can sync?
Limits depend on your plan. Check the Billing page to see your current plan limits and upgrade if needed.
Ready to get started?
Head to Connections to link your Stripe and HubSpot accounts.
Go to Connections