I would like to know if any of you have any experiences and advice you'd like to share about middleware systems?

A little background first: the company I work for is based entirely on a closed environment, legacy ERP system. We are looking to build an ecommerce website, this would however be quite impossible with our current system.

A consultant suggested working with a company to build a bespoke middleware platform which we can integrate the website with. So we would essentially extract data from our ERP via CSV exports to the middleware platform, and use that to build the website instead. We would then begin phasing out the legacy system as we expand the capacity of the new platform. The good news is that we already have daily CSV export routines with customer, product and pricing data for another project I recently completed.

I wanted to know if any of you have any experience with anything similar and if you have any useful advice or warnings. This is my first major technical project and do not come from an IT background, so I'm having to learn a lot of things very quickly (as I have a strict deadline to make this happen).

Do you have any example of middleware platforms that I could familiarise myself with?

I realize that this is very fluffy and non-specific, but I do not know any details yet, I'd just like to familiarize myself with these systems, if there are any links or resources you can share I would be very grateful.


This type of strategy is certainly achievable, but the red flags I see are:

bespoke middleware platform

my first major technical project

a strict deadline to make this happen

If you think you can leverage your existing exports, know enough database fundamentals to design the table structure, write the import code, and write the interface between your tables and the (hopefully off the shelf) eCommerce website; then go for it. It will be a great learning experience. The biggest caveat is just that nothing ever happens as quickly as management wants it to, so do not leave yourself as the scapegoat when everything is not working perfectly in one month. List achievable goals, cross them off as completed, and communicate to management what you have completed and what still is to be done. Transparency will mitigate the inevitable complaints when things (who knows which) do not all happen in the ideal time period.

The only other warning I would give is that I do not like CSV as a format. It does not handle embedded commas well. I would use text files with fixed field lengths.

  • Thanks for the advice. As I mentioned previously I have never been involved in computer science however I seem to have a nag for picking these things up pretty quickly! Databases are pretty basic in the fact that everything needs to be explicitly expressed somewhere and everything needs to relate to something for it to make sense. I'm more worried about making structural design decisions that make sense now but may be negative in the future. The CSVs are tab delimited rather than comma delimited. – DDL-SDW Aug 2 '16 at 15:31

Of course your project is certainly technically feasible.

But an ERP should in principle manage and coordinate enterprise resources. In the perspective of e-commerce:

  • registered customers
  • credit limits of customers and its impact on new orders
  • sales orders
  • delivery schedules for ordered products
  • products in stock
  • ongoing and planned production orders/batches that will deliver products that are missing OR ongoing purchase orders/vendor delivery schedules for products bought from third parties

If your ERP should bring any benefit to your company, and if you want to avoid e-commerce customer being unhappy because of delays and unavailability of ordered products (or unability to predict delivery), you should consider a real-time interface.

If you have a hammer in your hand, every problem starts to look like a nail. - The same applies for middleware and interfaces.

If there's a need to replace a legacy ERP, instead of starting with "bespoke midleware" it would be more advisable to first define the target system and then chose the most appropriate transition scenario/interfaces.

After all, shouldn't the feature of your new e-commerce system be designed for the current needs of your customers and your business instead of basing it on the capability of your legacy system with a minimalistic interface ?

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.