Recurly + Salesforce
Sync Recurly Subscriptions with Salesforce for a Complete Revenue Picture
Automate billing data flows between Recurly and Salesforce so your sales, finance, and customer success teams are always working from the same numbers.

Why integrate Recurly and Salesforce?
Recurly and Salesforce are two of the most important platforms in a modern SaaS company's tech stack — one managing the full lifecycle of recurring billing and subscriptions, the other as the system of record for customer relationships and revenue forecasting. When these two systems operate in silos, data like subscription status, MRR, churn events, and invoice history lives in different places, forcing teams to work from incomplete pictures. Connecting Recurly to Salesforce through tray.ai closes that gap so every subscription event shows up in your CRM in real time.
Automate & integrate Recurly & Salesforce
Use case
Sync New Recurly Subscriptions to Salesforce Opportunities and Accounts
When a new subscription is created in Recurly, tray.ai automatically creates or updates the corresponding Account, Contact, and Opportunity in Salesforce — populating plan name, MRR, billing cycle, and start date. Closed-won revenue shows up in Salesforce immediately, no manual data entry required from your finance or sales ops team. Sales reps know which accounts are active paying customers the moment they convert.
Use case
Trigger Churn Alerts in Salesforce When Recurly Subscriptions Are Cancelled
When a subscription is cancelled or expires in Recurly, tray.ai pushes that event to Salesforce, updating the account status, closing or flagging the associated opportunity, and optionally creating a Salesforce task for the assigned customer success manager. Your retention team gets an instant signal to reach out before the customer is fully gone. Proactive churn intervention becomes systematic rather than reactive.
Use case
Update Salesforce Account MRR When Subscription Plans Change in Recurly
Upgrades, downgrades, and plan changes in Recurly directly affect the revenue value of a Salesforce account — but without integration, those changes go unnoticed in the CRM. tray.ai detects plan change events in Recurly and updates the corresponding Salesforce Account and Opportunity fields with the new MRR, plan tier, and effective date. Revenue reporting stays accurate and account managers can see expansion or contraction signals as they happen.
Use case
Sync Recurly Invoice and Payment History to Salesforce for Finance Visibility
Finance teams often need billing history inside Salesforce, but Recurly invoice records rarely make it into the CRM without manual effort. tray.ai syncs invoice creation, payment success, and payment failure events from Recurly into Salesforce as custom objects or activity logs tied to the relevant Account. Sales, finance, and support teams get a complete billing timeline without ever leaving Salesforce.
Use case
Create Salesforce Leads or Contacts from Recurly Trial Sign-Ups
When a prospect starts a free trial managed through Recurly, that intent signal is valuable to your sales team — but it rarely reaches Salesforce automatically. tray.ai watches for new trial subscriptions in Recurly and creates corresponding Leads or Contacts in Salesforce, enriched with plan interest, trial start date, and source data. Sales reps can follow up on active trials before they expire, which tends to move conversion rates in the right direction.
Use case
Sync Recurly Subscription Renewal Dates to Salesforce for Proactive Account Management
Renewal dates are make-or-break moments in the customer lifecycle, but when they live only in Recurly, customer success and sales teams often miss the window to engage. tray.ai maps upcoming renewal dates from Recurly to custom date fields on Salesforce Accounts or Opportunities, so you can build renewal queues, automated reminders, and targeted outreach campaigns directly in Salesforce.
Use case
Reconcile Recurly Coupon and Discount Usage in Salesforce Opportunity Records
When sales reps offer discounts or coupons that get applied in Recurly, that pricing context should be visible in Salesforce for accurate revenue attribution and commission calculations. tray.ai captures coupon and discount application events from Recurly and logs them against the matching Salesforce Opportunity, including discount percentage, coupon code, and effective subscription value. Deal economics stay transparent across sales and finance.
Get started with Recurly & Salesforce integration today
Recurly & Salesforce Challenges
What challenges are there when working with Recurly & Salesforce and how will using Tray.ai help?
Challenge
Matching Recurly Subscribers to Salesforce Accounts Without a Shared ID
Recurly and Salesforce use different identifiers for the same customer — Recurly uses account codes or email addresses, while Salesforce uses its own Account and Contact IDs. Without a shared external key, automated syncs can create duplicate records or fail to match existing accounts, leading to data fragmentation across both systems.
How Tray.ai Can Help:
tray.ai's workflow logic lets you build matching rules that look up Salesforce Accounts by email, company name, or a custom external ID field mapped to the Recurly account code. You can configure duplicate-prevention logic that checks for existing records before creating new ones, and store Salesforce IDs back in Recurly custom fields to create a persistent two-way reference for all future syncs.
Challenge
Handling Subscription Event Volume Without Overloading Salesforce API Limits
High-volume subscription businesses process thousands of billing events per day — renewals, upgrades, retries, and invoices — and pushing every event directly to Salesforce as it occurs can quickly exhaust Salesforce's API rate limits, especially on lower-tier plans. Integrations that make individual API calls per event frequently hit these limits during billing cycle peaks.
How Tray.ai Can Help:
tray.ai supports event batching and rate-limit-aware retry logic, so you can queue high-volume Recurly events and process them in controlled batches that stay within Salesforce API limits. You can also configure event filters to selectively sync only the most business-critical events in real time while batching lower-priority updates for off-peak processing windows.
Challenge
Keeping Historical Recurly Data in Sync When Backfilling Salesforce
When a company first sets up this integration, there's often months or years of Recurly subscription history that needs to be backfilled into Salesforce. Doing this manually is time-consuming and error-prone, and a naive automated backfill can create duplicate records, overwrite valid CRM data, or miss accounts due to pagination handling in the Recurly API.
How Tray.ai Can Help:
tray.ai supports controlled historical backfill workflows that paginate through the Recurly API systematically, apply upsert logic rather than blind inserts, and include checkpointing so a failed run can resume without reprocessing records already synced. You can run backfills in a sandboxed Salesforce environment first and promote to production once the logic is validated.
Challenge
Propagating Subscription Changes to the Correct Salesforce Object Type
Different Salesforce teams model subscription data differently — some track active subscriptions as Opportunities, others as custom Subscription objects, and some use both. An integration that assumes a single Salesforce data model will break or need significant rework when applied to organizations with customized CRM schemas, particularly those that have evolved over several years.
How Tray.ai Can Help:
tray.ai's workflow builder lets you route Recurly events to the right Salesforce object type based on your specific CRM schema without writing custom code. You can configure conditional logic to write to Opportunities, Accounts, custom objects, or all three at once, and adjust field mappings through a visual interface whenever your Salesforce data model changes.
Challenge
Ensuring Data Consistency During Recurly Webhook Failures or Retries
Recurly delivers subscription events via webhooks, which can occasionally fail due to network timeouts, endpoint downtime, or tray.ai processing delays. If a webhook is retried by Recurly and processed multiple times, it can result in duplicate Salesforce records, double-counted MRR, or multiple task assignments — undermining the reliability of the integration over time.
How Tray.ai Can Help:
tray.ai includes built-in idempotency support and event deduplication logic, so workflows can check whether an incoming Recurly event has already been processed before executing Salesforce write operations. Combined with detailed workflow execution logs and error alerting, tray.ai gives you full visibility into webhook delivery status and lets you replay failed events safely without risking data duplication.
Start using our pre-built Recurly & Salesforce templates today
Start from scratch or use one of our pre-built Recurly & Salesforce templates to quickly solve your most common use cases.
Recurly & Salesforce Templates
Find pre-built Recurly & Salesforce solutions for common use cases
Template
New Recurly Subscription → Create or Update Salesforce Account and Opportunity
Automatically creates or matches a Salesforce Account and updates the associated Opportunity when a new subscription is activated in Recurly, populating plan, MRR, and billing cycle fields.
Steps:
- Trigger on new subscription created event in Recurly via webhook
- Search Salesforce for an existing Account matching the subscriber's email or company name
- Create a new Account and Contact in Salesforce if no match is found
- Create or update the associated Opportunity with plan name, MRR, start date, and billing interval
- Set Opportunity stage to Closed Won and log a subscription activation activity
Connectors Used: Recurly, Salesforce
Template
Recurly Subscription Cancellation → Update Salesforce Account and Trigger Task
When a Recurly subscription is cancelled, this template updates the Salesforce Account status, closes the associated Opportunity, and creates a follow-up task for the assigned customer success manager.
Steps:
- Trigger on subscription cancelled or expired event in Recurly
- Look up the corresponding Salesforce Account by subscriber email or account ID
- Update the Account's subscription status field and log the cancellation date
- Close or update the associated Opportunity to reflect lost revenue
- Create a Salesforce Task assigned to the account owner with cancellation details and a follow-up due date
Connectors Used: Recurly, Salesforce
Template
Recurly Plan Change → Update Salesforce Account MRR and Opportunity Value
Detects subscription upgrades and downgrades in Recurly and automatically updates the MRR, plan name, and Opportunity amount fields in Salesforce to keep revenue data accurate in real time.
Steps:
- Trigger on subscription updated event in Recurly indicating a plan change
- Calculate the new MRR based on the updated plan and billing cycle
- Look up the associated Salesforce Account and Opportunity by subscriber identifier
- Update the Opportunity Amount and custom MRR field with the new subscription value
- Log a Salesforce activity note recording the plan change details and effective date
Connectors Used: Recurly, Salesforce
Template
Recurly Failed Payment → Create Salesforce Task and Update Account Health
When a payment fails in Recurly, this template alerts the account owner in Salesforce by creating a high-priority task and updating the account's health score or billing status field.
Steps:
- Trigger on payment failed or invoice past due event in Recurly
- Look up the corresponding Salesforce Account using the subscriber's billing email
- Update a custom Billing Status or Account Health field on the Salesforce Account to flag the issue
- Create a high-priority Salesforce Task assigned to the account owner with payment failure details
- Optionally enroll the account in a Salesforce outreach cadence for dunning follow-up
Connectors Used: Recurly, Salesforce
Template
Recurly Trial Sign-Up → Create Salesforce Lead with Billing Intent Data
Automatically creates a Salesforce Lead when a prospect starts a free trial in Recurly, enriching the record with trial plan, start date, and expiration date to enable timely sales follow-up.
Steps:
- Trigger on new trial subscription created event in Recurly
- Check Salesforce for an existing Lead or Contact with the same email address
- Create a new Lead in Salesforce with name, email, company, and trial plan details
- Set a custom Trial Expiration Date field to enable time-based follow-up workflows
- Optionally enroll the Lead in a Salesforce outreach sequence or assign to a sales rep based on plan tier
Connectors Used: Recurly, Salesforce
Template
Daily Recurly Subscription Sync → Refresh Salesforce Account Subscription Fields
Runs a scheduled daily sync that pulls active subscription data from Recurly and refreshes corresponding Salesforce Account fields, so CRM data reflects the latest billing state even for accounts with no recent events.
Steps:
- Trigger on a scheduled daily interval via tray.ai scheduler
- Pull all active subscriptions from the Recurly API with current plan, MRR, and renewal date
- For each subscription, query Salesforce for the matching Account by email or external ID
- Update subscription status, MRR, plan name, and renewal date fields on each Salesforce Account
- Log a sync summary record in Salesforce or send a Slack notification with update counts and any errors
Connectors Used: Recurly, Salesforce