If your ExpressionEngine or Craft CMS site connects to any external service, whether that’s Stripe for payments, HubSpot or Salesforce for CRM, Mailchimp for email, or any other third-party platform, you have a dependency that you probably don’t think about until it fails.
Integrations break. Not always, not constantly, but often enough that they need to be actively monitored rather than assumed to be working. Here’s why they fail and what to do about it.
APIs change
Every third-party service operates an API, a programming interface through which your site communicates with their platform. These APIs are updated regularly. Endpoints get deprecated, authentication methods change, response formats are modified. When Stripe changes its API version requirements or HubSpot updates its OAuth implementation, any integration built against the old version may stop working.
Major API changes are usually announced with a deprecation period, but if no one on your side is monitoring for those announcements, you won’t know until something stops working.
Authentication expires or changes
Many integrations use API keys or OAuth tokens for authentication. API keys can be revoked or expire. OAuth tokens need to be refreshed. If an API key is rotated as part of a security policy change on the third-party side, any integration using the old key will fail immediately.
The cascade problem
An integration failure can have consequences that go beyond the obvious. A Stripe payment form that stops working means customers can’t complete transactions. A HubSpot form integration that breaks means sales enquiries aren’t being captured. A Mailchimp integration failure means people who sign up to your mailing list aren’t being added to it.
In each case, the visible failure is just the top layer. The real problem is often the downstream effect: lost revenue, lost leads, or accumulated data that was never captured.
How to monitor for breakage
The basic level is having someone who checks the integrations regularly, not just the form or feature from the user side, but also the data appearing in the connected system. If form submissions are arriving in HubSpot, the integration is working. If they’re not, it isn’t.
For payment integrations, Stripe provides clear logging and alerting. Setting up notifications for failed webhook deliveries is straightforward and catches problems before they accumulate.
What to do when an integration breaks
First, establish when it broke and what has changed. The API changelog and release notes for the third-party service are the starting point. If a version of the API has been deprecated, the fix is to update the integration to the current API version.
If the integration was built by a developer who is no longer involved with your site, the new developer will need to audit the existing code before making changes.
The key point
Integrations are not set-and-forget. They require the same kind of periodic attention as any other part of your site infrastructure. Building an integration properly is only the beginning. Keeping it working over time is the ongoing responsibility.
If a third-party integration on your site has broken, or you want to stop that happening again, get in touch with Karl.