Licensing
How your NeoCharts license works, what to send IOURING and what to ship in your app.
Every app that shows a NeoCharts chart needs a license. The license is one signed key file,
neocharts-key.json, that IOURING issues for your apps and domains. The chart verifies it on
the device or in the browser — there is nothing to configure in code.
What to send IOURING
Your license lists exactly where the chart may run. Send your IOURING contact:
| Platform | Send | Example |
|---|---|---|
| Android | Every application ID you build, including flavours and suffixes | com.acme.trade, com.acme.trade.qa, com.acme.trade.debug |
| iOS | Every bundle ID you build | com.acme.trade, com.acme.trade.qa |
| Web | Every domain the chart page runs on | trade.acme.com, or *.acme.com for all its subdomains |
- A wildcard covers subdomains only:
*.acme.commatchestrade.acme.com, notacme.com. Listacme.comseparately if the page also runs there. localhostand127.0.0.1always work on web, for development.- An app ID, bundle ID or domain that isn't listed shows the license error screen. Adding one later means a new key file.
The key file
IOURING sends you neocharts-key.json. It is signed and encrypted:
- Don't edit, reformat or rename it. Any change makes it invalid.
- It only works for the IDs and domains in your license, so it is fine to keep it in your repository.
- When your IDs or domains change, IOURING sends a new key file. Replace the old one and ship it in your next release.
Where the key file goes
Put it next to your app's pubspec.yaml and list it as an asset:
flutter:
assets:
- neocharts-key.jsonThe SDK downloads its native core from lic-neocharts.nxtoption.com during the build and
verifies its checksum. Your build machines, CI included, need HTTPS access to that host.
When the license fails
Instead of the chart, the screen shows "Your NeoCharts license is invalid or has expired." with a close button.
| Cause | Fix |
|---|---|
| Your app ID, bundle ID or the page's domain isn't in your license | Send it to IOURING for a new key file |
Flutter: neocharts-key.json isn't listed under flutter: assets: | Add it, as shown above |
Web: neocharts-key.json isn't at <bundle>/assets/ | Copy it there |
| The key file was edited, reformatted or renamed | Use the original file IOURING sent |
| Android/iOS: bundles built for a different app | Use the bundles made for your app IDs and bundle IDs |
Web: assets/neocharts_core.wasm is missing, or your Content-Security-Policy blocks it | Deploy it with the bundle; allow 'wasm-unsafe-eval' |
| IOURING stopped the license | Contact your IOURING team |
Flutter build errors:
| Error | Fix |
|---|---|
No NeoCharts core <version> at https://lic-neocharts.nxtoption.com/ … | The build machine can't reach lic-neocharts.nxtoption.com over HTTPS — allow it in your network or CI |
NeoCharts: SHA-256 mismatch for … ; refusing to use it. | The download was altered on the way (often a proxy). Retry, or ask IOURING |