Magento application programming interface allows third party applications to programatically interact with Magento instance. Magento supports two API standards, SOAP/XML-RPC and REST. Distinctive characteristics of SOAP (Simple Object Access Protocol) is that it uses XML as it's message format, and when used over HTTP it delivers data trough POST request method. My personal preference lies with REST APIs, but in my experience with version 2 of Magento SOAP API, I can freely say that it's one of the most enjoyable SOAP APIs I had privilege of working with. Only thing that bothers me is that Magento currently doesn't provide feature for allowing developers to peek inside SOAP envelope when something isn't working as it should. Essentially it isn't possible to easily debug SOAP API calls Magento receives. In this article I'm bringing Magento extension allowing you to capture SOAP API requests and log them into file.
Continue readingTag Archives: Magento
Programmatically add new order state and status in Magento
Recently my task was to allow client to have different "type" of order in Magento. Requirement was that these orders need to have their own grid in Magento admin, and also that they need to be processed somewhat differently than regular orders. I have solved this task by adding new order states and statuses to be used only for this type of orders. To support this design it was also required to create new payment method so that orders of this type can be initiated into new order state automatically after being placed using this payment method. In this article I'm bringing you some code snippets and notes on how to implement this kind of solution.
Continue readingBash script to generate list of events for Magento installation
When developing for Magento, there are two ways to modify code provided by other modules - doing rewrites and observing events. If appropriate event is available for observing, it is preferred to use second method to alter other module's behavior. More precisely it is preferred to observe event of your interest, and when this event occurs, to trigger execution of your own code. But how are you supposed to know the list of events that are available for observing on your Magento installation? If you're interested to find out answer to this question, take the red pill, and I'll show you how deep the rabbit-hole goes.
Continue readingOpen source PHP E-Commerce platforms
Install Magento on Ubuntu and fix PHP Extensions "0" must be loaded error with PHP 5.4
Event though I follow MVC pattern in many of my web related projects, like every PHP web developer I came to the point when I have to dive into some well established MVC PHP framework. This is something backend developer must do if he wants to stop being a lone wolf and start working inside a team of developers. Web frameworks of my choice are fast Codeigniter and powerful Zend Framework. Getting to know about Codeigniter wasn't hard, but mastering Zend is still work in progress especially since Zend Framework 2 has been recently released. Talking about Zend, recently I got interested in getting to know about open source eCommerce solutions and I choose to get acquainted with Zend based Magento. In this article I'll show you how to install Magento on a Debian based distributions like Ubuntu and provide workaround for the PHP Extensions "0" must be loaded error thrown by Magento installer running on PHP 5.4.
Continue reading