Troubleshooting
Protecting
Section titled “Protecting”“Oxrion didn’t accept this Encoder Token.” The token is wrong, or a newer token was generated. Only your newest token works; generate a new one in the Oxrion Console if needed. See Account & Encoder Token.
“Service unavailable.” Oxrion Desktop couldn’t reach Oxrion. Check your internet connection, firewall or proxy, and press Refresh.
“Insufficient quota.” More files are selected than you have quota or credits for. Press Select files to protect fewer, wait for your monthly quota to renew, or buy credits. If Use extra credits is on in the Console, only credits are used. See Plans, quota & credits.
“Some options aren’t in your plan.” You turned on options your plan doesn’t include. Turn them off, upgrade, or choose Protect without them. See Options and your plan.
“Protection finished with errors.” Some files couldn’t be protected. The reasons are in View details and in OXRION-FAILED-FILES.txt in the output folder. Fix those files and protect them again.
The output folder is rejected. It must be outside the files you are protecting.
Licenses and email
Section titled “Licenses and email”A license email isn’t sent. Press Send test email on the account in Email & Hooks. Check the server, port and security (SSL/TLS or STARTTLS) with your provider. Gmail and many other providers need an app password instead of your normal password.
Email license and Save .lic again are greyed out. The record was created with an older version of Oxrion Desktop, which didn’t keep the license file. Create a new license for that host.
A webhook shows “Hook not sent”. Press Send test webhook in Email & Hooks to see the error. Your endpoint must answer with a 2xx status within 15 seconds over HTTPS, without redirecting. Then send it again from License History. See the Webhooks reference.
Running protected files
Section titled “Running protected files”Raw code, a blank page, or “Oxrion Loader extension required”. The Loader isn’t active for that PHP. See Verifying: the web server may use a different php.ini than the command line, and needs a restart after installing.
“Oxrion: signature mismatch (file tampered?)”. The file was changed after it was protected — for example by an FTP client in text mode or an editor. Upload the protected file again, unchanged (binary mode).
“Oxrion: this file expired on …”. For example this file expired on 2026-10-07 17:38 (UTC). The file’s expiry has passed: the 30-day limit of the Free plan, or the date you set with Expiry. File expiry is always shown in UTC. Protect the source again. See Expiry explained.
“Oxrion: system clock is earlier than the file’s creation time”. The server’s clock is wrong. Correct it (use NTP).
“Oxrion: this file requires an external key that is not configured on this server.” The file uses Server lock. Set the OXRION_EXTERNAL_KEY_… environment variable shown in the Vault, in the environment PHP runs in (for example the PHP-FPM pool), and restart PHP. On Windows with Apache and mod_fcgid, such as Laragon, a Windows environment variable isn’t enough — see Server lock.
“Oxrion: no license file found for this host”. The file needs a license and none was found for this host. Check that the .lic file:
- is in the project root, or in the protected file’s folder or any folder above it;
- still has its original name;
- was issued for exactly this host —
example.comandwww.example.comare different.
See Licenses.
“Oxrion: license host mismatch: expected …, got …”. The license was issued for a different host. Issue one for the host shown after got.
“Oxrion: license: signature mismatch (tampered?)”. The .lic file was changed — for example edited, or uploaded by an FTP client in text mode. Put the original file back, unchanged.
“Oxrion: license expired on …”. For example license expired on 2026-10-07 20:38 (UTC+3). The license’s expiry has passed; the time is shown as it was chosen when the license was issued, with its time zone. Issue a new license with a later expiry. See Renewing.
“Oxrion: this file needs a license, which is checked against the host of a web request; it can’t run from the command line”. That’s expected: a license is bound to a host, and the command line (or cron) has none.
Recovery
Section titled “Recovery”“Nothing was recovered.” The files were protected without Recovery, or with a different recovery key. Use the recovery private key that matches the public key used when protecting. See Recovery.