# Ensuring Stripe Terminal JavaScript SDK Functionality on Chrome 142

[Chrome 142 (released October 28, 2025)](https://developer.chrome.com/release-notes/142) and later versions require explicit permission before websites can access local network devices like Terminal readers.
If you're using the Terminal JavaScript SDK with Chrome 142+, you may see this error in your browser's developer console, preventing successful reader connection of Stripe smart reader:
`blocked by CORS policy: Permission was denied for this request to access the 'unknown' address space`
### Grant permission
1. Connect to your Terminal smart reader using the Terminal JavaScript SDK on Chrome 142+.
1. Chrome displays a permission prompt.
1. Click **Allow** to grant permission. You only need to do this once per domain. A screenshot of the Chrome permission prompt.
### If you already clicked Block
If you previously blocked access, follow these steps to re-enable it:
1. In your Chrome browser, navigate to [localNetworkAccess settings](chrome://settings/content/localNetworkAccess).
1. Change default behavior to **Sites can ask to connect to any device on your local network**.
1. Refresh the page.
1. Re-discover and connect to the Stripe Terminal smart reader.
### Requirement checklist
Before connecting to a Terminal reader, verify that:
* Your site uses HTTPS (not HTTP)
* Your reader is powered on
* Your reader is on the same network as the device running your Point of Sale
For the full list of connectivity requirements, see our [network requirements documentation](https://docs.stripe.com/terminal/network-requirements#smart-readers).
### Iframe integration requirements
If your Terminal JavaScript SDK integration runs in an iframe, like a checkout form embedded from another domain, additional steps are required:
1. **The top-level page must grant Chrome permissions**. The user sees the permission prompt on the parent page
1. **Both the parent page and iframe must use HTTPS**.
1. **Add the permission to your iframe element** by including the `allow` attribute:
   ```html
   <iframe 
   src="https://your-checkout-domain.com/checkout" 
   allow="local-network-access"
   ></iframe>
   ```
Learn more about [Chrome's Private Network Access](https://developer.chrome.com/blog/local-network-access) for iframe implementation details.
### For Organizations: Chrome Enterprise Policies
If you manage Chrome browsers for your organization, you can pre-configure local network access permissions using Chrome Enterprise policies. This allows you to deploy Terminal integrations without requiring each user to manually grant permissions.
The [LocalNetworkAccessAllowedForUrls](https://chromeenterprise.google/policies/#LocalNetworkAccessAllowedForUrls) policy allows you to specify URL patterns that should be automatically granted local network access.
For more information about managing Chrome policies, see [Google's Chrome Enterprise documentation](https://support.google.com/chrome/a/answer/9037717).
### Additional information
* Learn more about [Chrome’s Local network Access changes](https://developer.chrome.com/release-notes/142#local_network_access_restrictions)
* Read about [Stripe Terminal network requirements](https://docs.stripe.com/terminal/network-requirements).