Keep products in sync with another backend (ECommerce)

Posted by Community Admin on 04-Aug-2018 10:49

Keep products in sync with another backend (ECommerce)

All Replies

Posted by Community Admin on 21-Sep-2011 00:00

Hi,

I want to keep my products in sync with some other backend system. The other backend system will likely contain a subset of the product fields defined in Sitefinity.
I see some solutions:
1: use some synchronization process in the background (SQL Server replication, Microsoft Sync Framework or whatever). Updates on shared fields would be possible on both sides. Adding new products can be a problem when there are required fields with no defaults on one of the both sides.
2: or created an inherited data provider of OpenAccessCatalogDataProvider. On the CommitTransaction() the appropriate actions should be done on the other backend system. (Is this even possible? What about doing this as one transaction on the 2 databases? In this would be a distributed transaction). This whould imply that the products should be maintained from Sitefinity always.

Any suggestions about a good solution?
Does somebody see other solutions?

Thanks, Jaap

Posted by Community Admin on 04-Oct-2011 00:00

If updates do not need to be realtime, I would look in to custom publishing pipes.

Using pipes, I implemented the following scenarios:

1. Publish a custom XML feed of products from my custom sitefinity products module to a file uploaded to FTP.
   ProductInboundPipe (based on ContentInboundPipe) -> FtpOutboundPipe (custom)

2. Download File from FTP and update products in my custom module.
  FtpInboundPipe (custom) -> ProductUpdateOutboundPipe (custom)

Here are some blog posts that helped me get started:
http://www.sitefinity.com/blogs/teodorgeorgiev/posts/11-08-18/publishing_system_brief_walkthrough.aspx
http://www.sitefinity.com/blogs/ivanpelovski/posts/11-08-16/registering_custom_pipes_in_sitefinity.aspx

While your scenario sounds more complicated than mine, i think the publishing system is how Telerik recommends integrating external systems with the publishing system.

Thanks,

JASON CHESTER

Technology Director
629 Euclid Avenue / Cleveland, OH 44114
E jason.chester@rosetta.com
rosetta.com
ROSETTA | Pilots, inventors and builders for a connected world.™

This thread is closed