Reputation: 1879
my requirement is to sync third party e-commerce systems(IFS) products into sitecore. Is there a way that i can extend sitecore web service with new method where i can get the products and create them in sitecore? or is there a better way to do this.
I want to create that as sitecore module, so that we can install it on any sitecore website we have to integrate with that e-commerce systems(IFS).
http://yourhost/sitecore/shell/webservice/service.asmx
Any suggestions will be appreciated.
Upvotes: 1
Views: 682
Reputation: 2708
Please take a look on the Sitecore Commerce Connect product. It has been designed for such kind of tasks, see chapter 2.1.7 Product Synchronization:
Product Synchronization
Connect has its own product data model and a Product Synchronization service layer for exchanging product data with one or more external systems. The responsibility of the Product Synchronization service layer is to manage two-way synchronization of essential product data. The goal is to synchronize only the data that is needed to satisfy the most common e-commerce scenarios. In particular cases, the model can be extended. For more information on the default scenarios that are supported, see the developer guide.
Upvotes: 2
Reputation: 16990
You should consider using a Custom Data Provider, it's for fit for the task at hand and will allow you to also manage the external data in a similar way to native Sitecore Items, inc caching and publishing.
There is more information in the Integrating External Data with Sitecore document on SDN and and Nick Wesselmans article on The Black Art of Sitecore Custom Data Providers is a go to reference.
Also these blog posts provide more details on read-only data providers, which is most likely what you will want to use for external data:
Upvotes: 1
Reputation: 31435
You could potentially use the Item Web API (PDF link) that Sitecore comes with, or even roll your own web service that you write and call the native Sitecore API. If you roll your own, you could expose it as a WCF service, or a Web API or any other approach. The service you found and referenced is quite old and not really designed to be extended.
Another approach to what you are trying to do (merge/integration another system into Sitecore) would be to write your own item data provider. Here are some links on that topic:
Upvotes: 2