Configuring payment methods in MageBridge
Configuring payment methods in MageBridge is nothing more than just configuring the payment method as you would in Magento, except that the URLs you might need to configure point to Joomla! instead of MageBridge. Let's walk through all the steps.
The MageBridge URL equals the Magento URL
Make sure SEF is enabled in Joomla!
When you use MageBridge on your site, the usage of SEF URLs is highly recommended. SEF URLs (Search Engine Friendly URLs) can be easily switched on within the Global Configuration in the Joomla! backend, while they are switched on by default within Magento.
Using SEF, MageBridge can fully integrate any Magento URL into Joomla! URLs. It does so by taking the root from the MageBridge shop and appending the Magento URL to it. This way you can easily translate a Magento URL into a Joomla! URL and vice versa. The first step here is to configure a MageBridge Root Menu-Item.
The MageBridge Root Menu-Item
Let's say you have a Joomla! site "http://JOOMLA" running and have a Joomla! menu configured. Within the menu, you will need to point a Menu-Item towards the MageBridge Root (which acts as the Magento homepage). The alias of that Menu-Item is used to create the Joomla! URL. For instance:
http://JOOMLA/shop/
Translating URLs
Now, if you navigate through the webshop, you might end up on the checkout-page which has the following URL:
http://JOOMLA/shop/checkout/cart/
Here, the Magento URL "checkout/cart" is appended to the URL of the MageBridge Root "http://JOOMLA/shop".You can easily navigate to the page within Magento stand-alone by typing the following:
http://MAGENTO/checkout/cart
This method for translating URLs can be very useful when you need to troubleshoot a certain behaviour in MageBridge, or when you need to configure payment methods.
Configuring a Magento payment method
Now, the story above is ment to guide you through the process of translating URLs. But every Magento payment method has its own way of being configured, so for the actual configuration of a payment method we have to refer to the documentation of that payment method.
The main point is that everytime when the manual tells you to enter the URL of your webshop somewhere, it needs to be the translated MageBridge URL and not the original Magento URL.
Understanding Magento multi-site
Working with MageBridge assumes you understand the multi-site mechanism of Magento. The Magento Configuration can be configured on a global level, but also per Website or per Store View. MageBridge will override the configuration in run-time by setting all URLs to their Joomla! equivalent automatically. You don't need to modify the Magento Configuration to make MageBridge behave this way.
Still the multi-site mechanism can be used to configure some settings specifically for MageBridge (using the scope for that specific Website or Store View) while using other settings for the Magento stand-alone configuration. This is not specific for MageBridge, but this is specific for Magento multi-site setups. For more support we have to redirect you to Magento.
Example: PayPal
For instance, with PayPal you will need to configure a Return URL like the following:
http://JOOMLA/shop/paypal/standard/success
Example: Ogone
The same that applies to PayPal, applies to Ogone. Note that there are several different Ogone modules that have different procedures. The example below is for the official Ogone extension:
http://JOOMLA/shop/ogone/api/placeform
If you have configured the Ogone extension and after a MageBridge checkout you arrive in the Ogone portal which gives you an error message "unknown order/1/r/", this means you have not configured the MageBridge URLs correctly in your Ogone control panel.
Example: Google Checkout
The same that applies to PayPal and Ogone, applies to Google Checkout. Make sure the API Callback URL is entered as follows:
http://JOOMLA/shop/googlecheckout/api
Example WorldPay
The same applies to WorldPay. Make sure to configure the following URL as response URL:
http://JOOMLA/shop/worldpay/processing/response/
Procedure for Ebizmarts SagePaySuite module
Ebizmarts has created a Magento extension for usage with SagePay integration. The license that should be used within your Magento setup should be based upon your Magento domain, not your Joomla! domain.
Browse to the Magento System Configuration > Services > MageBridge > System Options and enter the following URLs under Direct Output URLs:
sgps/payment/onepageSaveOrder
sgps/card/registerPost
sgps/ServerPayment/notify
When implementing SSL for the MageBridge checkout-only, you need to make sure that all SagePay URLs are also covered by SSL. To do this, you will need to add the SagePay URLs to the MageBridge option Secure pages in the MageBridge configuration in Joomla!. Instead of defining all URLs, you can just define sgps here:
sgps
Within the MageBridge configuration in the Joomla! backend, you might want to load the extra CSS-files that the Magento extension offers:
skin/frontend/base/default/sagepaysuite/css/growler/growler.css
skin/frontend/base/default/sagepaysuite/css/sagePaySuite_Checkout.css
Alternatively you can also copy the CSS-files to your Joomla! template and load them by modifying your Joomla! template.
Procedure for hardcoded iDEAL-folder
There are various iDEAL solutions, but one of them causes headaches with Magento multisite and therefor also with MageBridge: The iDEAL solution offered by Mollie, TargetPay and/or PHP solutions adds a Magento extension to Magento. But it also puts a physical folder ideal/ containing various PHP-scripts among which setup.php inside the Magento root-folder. The bad thing here is that ideal/setup.php is NOT part of the Magento installation, but still the PHP-code of the Magento extension refers to this PHP-script using a Magento path - which is wrong in architecture, because the ideal/ folder could (theoretically) be placed anywhere.
This dirty architecture requires a dirty hack to work within MageBridge. To make sure the Magento iDEAL-module refers to the right ideal/ folder, you will need to replace the Magento URL-funtion with a hardcoded URL. To do this, locate the file app/code/community/Mage/Ideal/Model/Ideal.php and copy it to app/code/local/Mage/Ideal/Model/Ideal.php. You can now safely modify the copy without altering the original. Make sure to update your copy, when you update the original though.
Now open the PHP-file in an editor and locate the following code - it occurs at least two times in the code:
Mage::getBaseUrl() . 'ideal/setup.php
Replace this code with the code below, but make sure only to replace the mentioned part and not the entire line:
'http://MAGENTO/ideal/setup.php
This should make sure that MageBridge can apply it's own multisite tricks without modifying the physical path to this iDEAL-folder. The documentation shipping with this Magento extension also mentions modifying the etc/system.xml file when Magento is installed in a subfolder. That setting applies only to the usage of the Magento backend, and therefor has no effect on MageBridge-based sites. Also, the htaccess-modifications may be neccessary, but this again applies to Magento sites in general, and not MageBridge sites specifically. Follow their documentation with whatover core-hack they suggest.
Note that this iDEAL extension is offered under different brands, while the same code and therefor the same fix applies:
- Mollie
- TargetPay
- PHP Solutions
- http://www.ideal-checkout.nl/ideal-voor-magento.html
Warning for PAYONE
Make sure the JavaScript https://secure.pay1.de/client-api/js/ajax.js is not stripped by MageBridge. To make sure, the script is still functioning, configure MageBridge so that all scripts are removed except for the script js/ajax.js.
Created on Friday, 24 July 2009Modified on Monday, 05 March 2012
More tutorials in this section
- Setting the MageBridge URLs in Magento
- Disabling user synchronization in MageBridge
- Importing and exporting users
- Using the MageBridgeLinks/JCE-plugin
- Best practices with MageBridge
- Using MageBridge Product Connectors
- Migrating users between Joomla! and Magento
- Using MageBridge stores to load a different Magento theme
- Using the MageBridge Content Plugin
- MageBridge SEO Guide
- Removing MageBridge
- Step-by-step: Adding a custom Magento block
- Managing MageBridge extensions
- How to use URL-suffices with MageBridge?
- Step-by-step: Create a Magento API user
- Step-by-step: Activating MageBridge plugins
- Step-by-step: Creating a MageBridge Menu-Item
- API permissions with MageBridge
- Configuring payment methods in MageBridge
- Using MageBridge modules
- Authentication guide for MageBridge
- Working with MageBridge URL Replacements
- Handling Downloadable Products in MageBridge
- Handling file uploads in MageBridge
- Configuring the MageBridge Root Menu-Item
- Setting MageBridge offline through the database
- How Joomla! works with MageBridge URLs
- Migrating MageBridge from Joomla! 1.5 to Joomla! 2.5
- Using the MageBridge System Plugin
