Beta. The Recurly connector is built and tested against Recurly's documented webhook events. It has not yet run against a live Recurly site in production.
Recurly
Connect Recurly so its payments and refunds fold into your CashSDK revenue, and an expired Recurly subscription ends the access it had.
Recurly is enterprise-grade subscription management: flexible billing models, intelligent dunning, and revenue recovery that claws back failed payments before they become churn. Connect it to CashSDK and Recurly's payments fold into one revenue view, so recovered and recurring revenue show up alongside your in-app purchases.
Keep Recurly as your billing engine. Its webhooks carry identifiers only, so CashSDK reads each payment, and its subscription's plan, from Recurly's API with your API key. The webhooks carry no subscription period either, so CashSDK does not grant access from Recurly. A subscription that expires ends the access it had.
How it works#
Connect Recurly from your app's Marketplace page with a private API key, your site subdomain and a webhook username and password.
Each Recurly plan code matches a CashSDK product.
Successful payments become revenue, each refund comes back out by its own amount, and an expired subscription ends access.
Connect Recurly#
In Recurly, go to Integrations → API Credentials and copy your Private API key.
In the dashboard, open your app's Marketplace page, choose Recurly and
select Connect. Pick Sandbox for a Recurly sandbox site or
Production for your live site. Enter the key, your site subdomain (acme
for acme.recurly.com), and a username and password for the webhook's HTTP
Basic authentication. Credentials are stored encrypted at rest.
Copy the connection's webhook URL from the Connected list and add it in Recurly under Integrations → Webhooks as a JSON endpoint with the same Basic authentication username and password. Send the payment succeeded, payment refunded and subscription expired events.
Back in CashSDK, select Activate on the connection.
Map your catalog#
Payments for plans your app does not sell are skipped, so for each Recurly plan
create a product in CashSDK whose identifier is the plan
code. To point a plan code at an existing product instead, map it with
map_marketplace_catalog (prompt setup). Payments are
attributed to the Recurly account code. Link it to your app user with the
link_marketplace_user tool on the MCP server.
Test and go live#
With a Sandbox connection to your Recurly sandbox site, create a test subscription and confirm its payment appears under Transactions.
Add a Production connection with your production site's key, its own webhook and credentials. Your CashSDK publishable key does not change.