Office 365 Compatibility checker (available since 17.2) has been configured according to Office 365 documentation
However, when customer tries to upgrade an Office 365 License from CCP > Office 365 > Licenses > Upgrade (button), 500 Internal Server error appears after 30 seconds of waiting.
C:\inetpub\wwwroot\O365_Endpoint\App_data\sitelog we can see the following during the upgrade attempt:
DEBUG aps_endpoint: Call GetUpgradeTargetPlans(accountId: 1000001, subsId: 1000003, checkerUrl:https://brandingDomain.com/o365/check.php, categoryList:[13829;]) DEBUG aps_endpoint: Get incompatible plans from /o365/check.php?acc=1000001&cat=13829&subId=1000003 ERROR aps_endpoint: Error: System.Net.WebException: The remote server returned an error: (500) Internal Server Error. at System.Net.HttpWebRequest.GetResponse() at Office365.PBA.PBAProcessor.GetIncomptiblePlans(String checkerUrl, Int32 accountId, Int32 categoryId, Int32 subId) in c:\inetpub\wwwroot\O365App\App_Code\pba\PBAProcessor.cs:line 277
Customer has many Office 365 Service Plans in Billing and check.php script that sends API requests to Billing is executed for more than 30 seconds. The Branding node has max_execution_time for php scripts configured to 30 seconds in /etc/php.ini on the Branding server.
Change max_execution_time in /etc/php.ini on the Branding server and reload
service httpd reload