You have chosen to sponsor your bid up to a maximum amount of .
I have a pre-written custom extension to integrate Amazon Orders with Magento.
It runs ok, but two background processes are badly-coded (in logic) and tae 20-40 minutes to run (in the Magento cron) each time.
There are basically a few steps to this extension:
1) Pulling amazon orders into Magento. This works.
2) As it pulls in those orders it should change the Magento stock. This works.
3) It compares inventory at amazon and in magento. The reasoning here is to create a product in Magento if that doesn't already exist (but it does in Amazon) so that it can import orders correctly. This works.
4) It marks orders that are shipped in Magento as shipped in Amazon, passing over the tracking number. This works but takes a while and has incorrect logic which needs fixing.
5) On a regular cron (I think every 45 minutes) it then should upload the current stock levels from magento to the various amazon stores. This is timing out or otherwise not completing successfully. This is the other problem part that needs fixing.
I have 3 amazon accounts, each has their own config section in this extension backend. 2 are for one group of products (have their own website in Magento), the other 1 is for another site's products (also with its own website in Magento - ie this is a multi-site setup).
So, for number 5) above, I think this can be optimised for a start - right now it sends all products to all amazon stores, for qty and price updates.
- What would be good is to have a selectable part of each config section where you select which stores products it sends
- so that it only sends relevant products to the appropriate amazon account.
- It also sends qty and price at the same time; this cron action needs splitting - price updates once a day, qty updates once an hour.
For number 4) above, I think it keeps trying to mark as shipped orders which for some reason cannot be marked as shipped. It should have a 'max attempts' of 5, and should send an email after that to admin warning of the error.
So the job is basically to improve the logic and speed of the background processes involved with this custom extension.