+7 (700) 700 71 77 info@oneit.kz

1C-Bitrix and PHP upgrade

Moving your 1C-Bitrix website to PHP 8.3 without halting sales

Since 1 February 2026, 1C-Bitrix installs updates only on PHP 8.2 and above, and version 8.2 itself stops receiving security fixes on 31 December 2026. We move your site straight to PHP 8.3 or 8.4: we check the code and modules on a staging copy, fix incompatibilities and switch over with no downtime.

Moving a 1C-Bitrix website from old PHP to PHP 8.3: testing on a staging copy, fixing incompatible code, 1C-Bitrix updates available again
8.2Minimum for updates1C-Bitrix requirement since 1 February 2026
8.3Recommended right awayPHP support until the end of 2027, 8.4 until the end of 2028
0Experiments on the live siteeverything is tested on a staging copy
12Years with 1C-Bitrixwe know the core, modules, 1C exchange and payments inside out

Is it time?

Four signs your site needs a newer PHP

An old PHP version does not break a site overnight. It builds up debt: updates stop installing, security holes stay open, and the upgrade gets more expensive every year.

1C-Bitrix updates won’t install

Most common

The updates section of the admin panel says the PHP version is too old. Until PHP is 8.2 or higher, neither bug fixes nor new module features will install.

Officially: 1C-Bitrix restricted support for its products on PHP below 8.2 from 1 February 2026.

Your PHP version is no longer supported

Security

PHP 7.4, 8.0 and 8.1 no longer receive security fixes; 8.2 stops on 31 December 2026. A vulnerability found in them will never be patched.

Support periods: PHP 8.3 until the end of 2027, 8.4 until the end of 2028, according to php.net.

The site went down after a version switch

Already happened

Your host switched PHP, or you did it yourself in the control panel — and now there is a blank white screen, a 500 error in the admin panel, or the cart or payment has stopped working.

What we do: we roll back to the working version, then fix the code on a copy and switch again — this time with no surprises.

The site hasn’t been updated for a long time

Technical debt

Purchased modules, customisations by different contractors, no documentation. A site like that is scary to touch — so nobody touches it, and the debt keeps growing.

What we do: an audit shows what will break during the upgrade before it breaks — and how much it will cost to fix.

Typical errors

What breaks when moving to PHP 8

Upgrading PHP itself is easy. The hard part is that code written for older versions stops working afterwards: your own customisations, purchased modules, templates. Here is what we fix most often — with examples from our own upgrades.

01

Non-static methods called statically

Event handlers and class methods declared without static but called statically. In PHP 8 this is a fatal error.

function OnBuildGlobalMenu()
static function OnBuildGlobalMenu()

From our work: in an online store, a single handler like this kept the admin panel from opening, and the bonus-points Bitrix agents had been silently failing since October 2023.

02

Curly braces for string offset access

The $str{0} syntax was removed in PHP 8.0. A file containing such a line fails to load entirely — along with everything declared in it.

$path{$len-1}
$path[$len-1]

From our work: in a payment module, one such line crashed the card payment form — the customer saw an error at the very last step.

03

Passing null and wrong types

count(), in_array() and string functions no longer tolerate null, or arrays where a string is expected. What used to be a warning is now an error.

count($arResult["ITEMS"])
count($arResult["ITEMS"] ?? [])

Where it occurs: component templates, result_modifier.php, form handlers.

04

Removed functions and old syntax

each(), create_function(), the reversed argument order of implode() and other things that raised warnings for years have been removed in PHP 8.

while (list($k, $v) = each($arr))
foreach ($arr as $k => $v)

Where it occurs: old modules and customisations from the PHP 5 era.

05

Encoded modules

Modules protected with ionCube run only on the PHP versions their author encoded them for. Such code cannot be fixed — you need a new version from the developer or a replacement.

From our work: during a trial switch, a store’s filter module refused to load — we caught it on the copy, not on the live site.

06

Cron, CLI and extensions

The site runs on the new PHP, but scheduled tasks still run on the old one from the command line. Or the required extensions are not enabled in the new version: mysqli, mbstring, gd.

From our work: one store’s site ran on PHP 8.2, but all 1C-Bitrix cron jobs were launched on 7.4 and crashed — Bitrix agents and mailings had stalled.

How the upgrade works

Why you can’t just switch the version in the control panel

You can — and in half of all cases the site will go down. The other half looks fine until a customer reaches the payment step or a scheduled task runs. That’s why we do the upgrade on a copy and finish by testing user scenarios, not just the home page.

PHP upgrade diagram: code and module audit, staging copy, fixes, scenario testing, switchover with a rollback ready
Scroll the diagram sideways →

1Straight to 8.3 or 8.4

Moving to 8.2 means another upgrade a year later: support for 8.2 ends on 31 December 2026. The difference in effort is usually small, and you gain two years of headroom.

2MySQL 8.0 at the same time

1C-Bitrix requires MySQL 8.0 or higher. If your database is older, we upgrade it in the same maintenance window and check the queries in your customisations.

3Error log down to zero

The definition of done is not ‘the home page loads’ but an empty error log after running every scenario: catalogue, cart, payment, 1C exchange, Bitrix agents.

4Rollback in minutes

We switch over at night, with a backup and a rollback plan. If something goes wrong, we return to the working version rather than fixing things on the live site.

What we work with:PHP 8.2 · 8.3 · 8.4MySQL 8.0 · MariaDB1C-BitrixBitrix24 on-premiseBitrixEnvFastPanelcPanelionCubeOPcache

Pricing

How much a PHP upgrade costs

A site without customisations can be moved in a few hours; a site with a dozen modules from different contractors takes a few days. So first comes the audit, then a precise estimate, and only then the work.

Compatibility audit

20 000 ₸ / hour

The first step: we review the code, modules, cron and server. You get a list of what will break and an estimate of the upgrade in hours.

  • core, module and PHP versions
  • search for incompatible code
  • encoded modules and extensions
Order an audit
Core work

Turnkey upgrade

quoted after the audit

Staging copy, fixes, 1C-Bitrix and module updates, scenario testing and a switchover with rollback.

  • fixed estimate before we start
  • you test the copy yourself
  • overnight switchover
Discuss the upgrade

Ongoing maintenance

from 50 000 ₸ / month

So the debt doesn’t build up again: monthly updates, monitoring, backups and security.

  • 1C-Bitrix and server updates
  • 24/7 monitoring
  • verified backups
Maintenance packages
  • Planned work is 20 000 ₸ per hour; urgent work, if the site is already down, is 30 000 ₸ per hour. Prices exclude VAT.
  • Installing updates requires an active 1C-Bitrix licence. If your update period has expired, renewal is at the vendor’s price; see licence editions and prices.
  • New versions of encoded modules are paid for to their authors unless the module is free.

What the upgrade includes

  • a staging copy of the site and database on a separate server;
  • the new PHP and, if needed, MySQL 8.0;
  • fixing incompatible code in customisations, templates and modules;
  • updating the 1C-Bitrix core and modules;
  • configuring cron, CLI PHP, extensions and OPcache;
  • scenario testing and switchover with a rollback plan.

What is charged separately

  • renewing the 1C-Bitrix licence;
  • buying new versions of paid modules;
  • rewriting modules their authors no longer support;
  • customisations unrelated to the upgrade;
  • moving to another host if the current one doesn’t offer the required PHP version — for example, to ONEHOST.

From our work

What we found during upgrades

Cases from this year. We don’t name our clients.

since 2023no bonus points credited
Online storeUpgrade to PHP 81C-Bitrix

An upgrade that uncovered an old fault

While sorting through errors after the upgrade, we found that the bonus-points Bitrix agents hadn’t worked since October 2023: the bonus module called methods in a way PHP 8 doesn’t allow. We fixed the bonus module, the admin menu and the payment form — 11 module files were converted to static methods.

Found what nobody had noticed
7.4 → 8.2cron lagged two versions behind
Online storeCronOPcache

Site on the new PHP, tasks on the old one

The site had long been running on PHP 8.2, but scheduled jobs were launched with the old PHP 7.4 and kept crashing. We moved cron to the right version and raised the OPcache size from 128 to 512 MB — it had been full, so PHP kept recompiling the code.

We check more than just the site
ionCubemodule failed to load
Online storeEncoded module

A module that can’t be fixed

During a trial version switch, an encoded filter module refused to load: it had been encoded for a different PHP version. We restored the working version within minutes and kept the site on the version where the module works until an update is released.

This is why you need a copy
2sites back after a 500 error
ONEHOST hostingPHP extensions

New version, old set of extensions

After a PHP version change, two sites were missing mysqli and mbstring: they responded with an error, and the log showed hundreds of fatal errors a day. We enabled the required extensions in the new version’s settings and the errors disappeared.

A small thing that takes a site down

Website maintenance →Bitrix24 administration →Website development →

FAQ

Frequently asked questions

Which PHP version should we choose: 8.2, 8.3 or 8.4?

8.2 is the minimum 1C-Bitrix currently requires, but its support ends on 31 December 2026. We recommend 8.3: it is supported until the end of 2027 and is compatible with most modules. Choose 8.4 if all of the site’s modules already support it — the audit will show this.

Will the site be unavailable during the upgrade?

No. All the work is done on a staging copy. We switch the live site over at night, when there are the fewest orders; the switch itself takes minutes, and a rollback to the previous version is prepared in advance.

Why not just switch PHP in the hosting control panel ourselves?

You can, if the site has no customisations or third-party modules. Otherwise you are likely to get a blank white screen, a 500 error in the admin panel or broken payments. Worst of all, some errors don’t show up immediately — they surface in scheduled tasks, the 1C exchange or Bitrix agents.

Do we need an active 1C-Bitrix licence?

For installing updates, yes. If the update period has expired, the licence is renewed at the vendor’s price; the PHP upgrade itself doesn’t require a licence, but without one the core and modules will stay outdated. Editions and prices are on the licences page.

What about modules that don’t support the new PHP?

First we look for a new version from the author. If the module has been abandoned, we fix open code ourselves, and replace encoded (ionCube) modules with an alternative or write our own. All of this becomes clear during the audit, before any work begins.

Does MySQL need upgrading too?

If your version is below 8.0, yes: that is the current 1C-Bitrix requirement. We upgrade it in the same maintenance window and check the queries in your customisations, which may behave differently in the new version.

Our hosting doesn’t offer PHP 8.3. What should we do?

Ask your hosting provider about timelines, or move. ONEHOST hosting in Kazakhstan offers current PHP versions, and we handle the move together with the upgrade, in the same maintenance window.

Our site has already gone down after a version change. Can you help urgently?

Yes. First we restore the previous PHP version so the site works again, then we calmly work through the errors on a copy. Urgent work is 30 000 ₸ per hour.

Check your site

Send us your site address — we’ll assess the upgrade

We’ll look at which PHP and 1C-Bitrix versions the site runs on, which modules are installed and where it is hosted. Then we’ll tell you what the audit should cover and which PHP version to choose.

  • We reply within one business day.
  • If your site is already down after a PHP change, call us and we’ll deal with it urgently.
  • We work under a contract with our LLP, payment by invoice; offices in Almaty and Astana.

Have a screenshot of the error or a list of modules? Send it to info@oneit.kz (PDF, DOCX, XLSX up to 20 MB) — and mention it in your message.

0/500