Basis Theory incident

JS Elements CDN Intermittent Loading Issues

Minor Resolved View vendor source →

Basis Theory experienced a minor incident on February 21, 2025 affecting 🌎 Global (🌎 Elements), lasting 1h 30m. The incident has been resolved; the full update timeline is below.

Started
Feb 21, 2025, 02:30 AM UTC
Resolved
Feb 21, 2025, 04:00 AM UTC
Duration
1h 30m
Detected by Pingoru
Feb 21, 2025, 02:30 AM UTC

Affected components

🌎 Global (🌎 Elements)

Update timeline

  1. investigating Feb 21, 2025, 02:30 AM UTC

    At 8:30 p.m. CST on February 20, 2025, we observed increased errors in loading Basis Theory Elements in our js.basistheory.com service. This prevented customers from loading Elements when using the CDN-hosted version. NOTE: This does not affect customers using our NPM modules to load elements.

  2. resolved Feb 21, 2025, 04:00 AM UTC

    Problem Description, Impact, and Resolution At 8:30 p.m. CST on February 20, 2025, we observed increased errors in loading Basis Theory Elements in our js.basistheory.com service. This prevented customers from loading Elements when using the CDN-hosted version. The issue was caused by an incorrect base URL configuration when building the static version of basis-theory-js for the js.basistheory.com CDN version, which was deployed at 4:00 p.m. CST and slowly rolled out to customers over the next 3 hours as the cache was invalidated. This resulted in Elements not loading correctly for customers relying on the CDN version. By 9:00 p.m. CST, we determined that the problem affected all customers using the CDN version. We deployed a fix at 9:57 p.m. CST, and by 10:00 p.m. CST, errors immediately decreased as our CDN cache and browser caches began to retrieve the new version. Mitigation Steps and Future Preventative Measures To prevent this issue, we have already implemented versioning for our packaged Elements (web-elements and react-elements) and all versions (down to patch) of our new web-elements package in the CDN - enabling customers to pin to a specific version of Elements from our CDN. Additionally, we will immediately add monitoring for the following: Enhance our automated smoke tests for js.basistheory.com elements in our pre-deploy steps. Implement enhanced monitoring for failures to load files from js.basistheory.com. Increase visibility on pinning specific patch versions of web-elements in developer documentation and add a check for version pinning to our production checklist.