SilverCart Forum

We moderate this Forum and we're here to help. Have you already run a forum search to check if your problem has already been solved?

You can help us helping you by providing detailed error messages, screenshots and logfile entries.

SebastianRamon

Page: 1
Topic Syncing products through XML 2451 Views

Syncing products through XML

24 November 2011 at 1:35pm

I have a site request for a webshop. The client has all their products (around 15000) in their accounting software.

This software has a module that can make a connection with your webshop. It works more or less like this:

* Accounting software puts all product details in XML-files on an FTP-server
* Webshop connects to FTP-server
* Sales in webshop create XML-files that are uploaded to FTP-server, accounting software processes these

The client also needs to be able to add extra content to products (images etc…) which doesn't need to be re-synchronized with the accounting software.

Do you think SilverCart (with some mods) is capable of something like this?

Re: Syncing products through XML

24 November 2011 at 2:58pm

Hi Stijn,

yes, silverCart can handle this.

This is more or less the workflow we use for www.teleapotheke.de/ already.

In this scenario we are syncing more than 300.000 products and the orders flawlessly via SSH.

Due to the large amount of data and the required processing time we have rewritten the importing mechanism via CGI in SilverCart 1.2, so that we don't run in into script-timeouts anymore. Works great, the customer is happy and we are able to process hundredthousands of products and hundreds of orders per day.

Cheers
Ramon

Re: Syncing products through XML

24 November 2011 at 3:45pm

So you are doing the syncing outside of SilverStripe/SilverCart, right?

Re: Syncing products through XML

24 November 2011 at 4:10pm

Hello Stijn,

not sure what you mean by "syncing outside of SilverStripe/SilverCart". Here's a short break down of the process for the mentioned project.

We're using Silverstripe's ScheduledTasks for the product import and order export. Both tasks get triggered by cronjobs on the webserver.

For the product import job we write an import task notification to the database when the user clicks a button in the admin interface (the user uploads the XML product data via FTP to the webserver beforehand); the ScheduledTask gets triggered by a cronjob every 5 minutes and checks if a new import task notification has been given.

New orders are generated every x minutes by the second ScheduledTask and are saved into a directory on the webserver to which the client's inventory management software has access to; it just downloads the files from that directory then.

Hope that helps a bit :)

Greetings,
Sascha