Frequently Asked Questions (FAQs)
-
The message “No supported SOAP technologies found!” appears in the Admin but I am sure I have PEAR:SOAP installed!
If you get this message then we can categorically say that you either:
- Don't have PEAR:SOAP installed.
- Don't have PEAR on your include_path, or
- You have an open_basedir or safe mode restriction in effect which doesn't allow your PHP installation to use your PEAR files.
These really are the only 3 possible reasons!
Please consult the configuration section to see how to install PEAR:SOAP on your server.
If you are adamant that PEAR:SOAP is installed then you can quickly determine if your PEAR folder is on your include path - and/or whether or not there are any open_basedir restrictions which prevent your PHP installation from accessing that path - by one of the two following methods:
You can make use of the module's debug output functionality to check your server's settings:
- In the Admin, switch the “Transaction Server” to “Test”.
- Change “Enable Debugging Output” to “Yes”.
- Put through a test order in your shop (Add a few items to your cart and complete the checkout process).
- When you get to the Checkout Confirmation page and have clicked “Confirm Order”, instead of seeing the Success or Payment Error pages you will see the Debugging Output.
- In the Debugging Output you can see the include_path and open_basedir restrictions (if any) which apply to your site.
-
- If you don't see the path to your PEAR folder in the include_path then you need to add this path to your include path. Please consult the PHP documentation for information on how to do this or get your host to do it.
- If there are open_basedir restrictions in effect and your PEAR path isn't included in the list of directories which open_basedir allow access to, you need to add it in. Again, please consult the PHP documentation for information on how to do this or get your host to do it.
- Don't forget to disable Debugging Output and put switch the store back to using the appropriate Transaction Server when you are done! :)
or you can upload and run the following test script and send the results to your host so they can fix the access to your server's PEAR installation:
-
<?php
@ini_set('display_errors', '1');
error_reporting(E_ALL);
echo "<p><strong>Include paths for this server: </strong><br />\n" . get_include_path() . "</p>\n";
echo "<p><strong>Safe Mode settings: </strong><br />\n" . (ini_get('safe_mode') == 1 ? 'Warning: safe mode is on!' : 'Safe mode is off') . "</p>\n";
echo "<p><strong>Open_basedir restrictions for this server: </strong><br />\n" . ini_get('open_basedir') . "</p>\n";
echo "<p><strong>Attempting to access PEAR.php</strong></p>";
require('PEAR.php');
echo "<p><strong>Attempting to access SOAP/Client.php</strong></p>";
require('SOAP/Client.php');
?>
-
How can I manually install PEAR:SOAP's files?
If your host has restricted your ability to update the PEAR library on your server then you can manually install the necessary SOAP files if you at least have access to the base PEAR installation by doing the following:
- Download the SOAP package from the PEAR website: Download Files.
- Extract the files from the downloaded archive.
- Create two new folders, both called “SOAP” in your store's filesystem:
- your_store/SOAP
- your_store/admin/SOAP
- (Please Note: If you have changed the name of your admin folder then you must use its name instead of “admin” as used here.)
- Copy the files and folders from the extracted archive into each of the two newly created folders.
- You should end up with something like the following (only a few files are listed but you get the idea):
- your_store/SOAP/Base.php
- your_store/SOAP/...
- your_store/admin/SOAP/Base.php
- your_store/admin/SOAP/...
-
The message “Warning: Your PHP installation does NOT have access to PEAR on your server!” appears but I think I have it installed!
This means that the PEAR library on your server cannot be accessed by your PHP installation. You should sort out the include paths/open_basedir/safe_mode settings on your system. If you can't change the include paths/open_basedir/safe_mode settings, then you can manually install the PEAR files by doing the following:
- Obtain a copy of the PEAR library (for example, from a PHP 5.x archive on php.net).
- Copy the PEAR library into the root folder and the admin folder for your store. This should include files such as PEAR.php and folders such as PEAR.
-
The module isn't showing in the list of payment modules in the admin!
If this is happening, the first thing that should be checked is if there are two payoffline_ipro.php files in includes/modules/payment/.
If you have backed up a previous version of PayOffline iPro in that folder, under a different name, Zen Cart will fail! Zen Cart auto-instantiates every file in the includes/modules/payment / shipping / order_total directories, so when you create a copy of a file in any of those directories, there are two files declaring the same class, which causes PHP to fail with a fatal error (which Zen Cart normally doesn't display!).
-
Delete the duplicate/renamed file to fix this problem. There should only be one PayOffline iPro file in includes/modules/payment.
If the above doesn't apply, the only other option is that the files haven't uploaded properly.
-
Re-upload the files from the module's distribution, overwriting all existing files.
-
-
I have installed the module but it isn't showing in the list of payment options at the checkout!
If this is happening, the first thing that should be checked is the module's configuration settings in the admin. The module will disable itself if a configuration problem is found with the module or the server.
If the module hasn't disabled itself then this problem could result from a “Payment Zone” having been selected in the module configuration or if there is a conflict between the “Sort Order” setting for two different payment modules.
-
If the “Payment Zone” is anything other than “--none--” then the module will only display as a payment option if the customer's address matches the selected zone.
To have the module displayed as a payment option for all customers the “Payment Zone” should be changed to “--none--”.
-
Check the “Sort Order” setting for each of your installed payment modules and make sure no two use the same setting.
-
-
How can I help with the module?
If you have any feedback or a bug report, please send it to us! There's nothing that makes developing more rewarding that feeling that it is appreciated!

