consuming web services from D7

frost's picture

Hi all,

I've got a requirement to add online ordering functionality to a D7 site. All product/services details have to be pulled in real time from an external EPOS system, and all orders taken on the website need to be sent back to the same system (so it can update inventory etc). Communication with the EPOS system is via calls to its web services.

So there are two requirements here:
1. Talking to the EPOS system - maybe using
2. Using the EPOS data to provide e-commerce functionality to web users - probably using custom module alongside

If you've done either/both of these before, I'd appreciate advice/suggestions or links to online resources that might help.

Or if you have the time to work with me on this, I can offer a few quid for your time.




Use Magento or Presto shop,

KoshaK's picture

Use Magento or Presto shop, as they are designed for online shopping. IMHO

Konstantin, Thanks for your

frost's picture

Thanks for your reply.
From what I've heard, Magento is very good for this. However, in this case, the requirement is to enhance an existing Drupal 7 website, so I don't have the option to rebuild the site using another framework.


frost's picture


But u dont have to rebuild

KoshaK's picture

But u dont have to rebuild anything. You can live Drupal as your CMS and have Magento as online shop.
Anyway you will have to do the design and css and configuration for Drupal Ubercart or what ever you use... I think it will take even more time and put much more additional modules and Load for the page...
but maybe, as you wrote, its the only way for you. I would not do such enhansments creating frankenshtein :)))

It depends on how 'real-time'

alanburke's picture

It depends on how 'real-time' the data need to be but you could use migrate api to pull in the data in Drupal - and then use js for the 'real-time' info.
Use Drupal Commerce on the Drupal site for the transactions.

I don't see the need for Magento in this case. - Drupal and Drupal Commerce can handle all this just fine.

Alan, Yes, that fits with the

frost's picture

Yes, that fits with the approach I'd come up with. Basically a list of products can be based on slightly stale data, but adding to cart or checking out require data to be fresh.

which client module?

frost's picture

I've just started looking in more details at two web service client modules:

Web Service Clients
Web Service Client

If you've any experience in either, can you say which is easier to use, more stable, more flexible, or anything else that might steer me to one or the other?

I should add that the web service I need to call requires me to make 100+ calls each time I want to update the website's list of events. This is because there is no service that can provide a full list of events all at once, only one that lists all events for a specific ticket type for a specific day. There are more than a dozen ticket types, so as you can imagine, building up a calendar for a couple of months to display to the user will take a LOT of web service calls. With that in mind, a web service client that can retain anything between calls about the connection (assuming the protocol allows that) will be more efficient. FYI, the web service says that it recognises SOAP, HTTP GET and HTTP POST (I've only tested POST so far).

Thanks again folks!