Summary: a module to allow customers to generate a warranty RMA claim with the option to first send back defective goods before getting a replacement, or they can opt to have an authorization put on their credit card to receive the replacement before sending defective goods back to us. If the defective goods are never received the authorization will be put through for a charge and "rma" is converted to a regular order.
Back Office: Module's configuration must allow setting which products are allowed for exchange, as well as a time limitation based on the original order date. Some products are 'kits' and composed of multiple sub-items. We would ask them to return and exchange only certain items within that kit rather then the whole kit. So we would need to be able to setup "sub items" from that parent item, and be able to set different items based on attributes (different colors, etc.)
Would need a backoffice tab where employees can set the rma to a "received", "accepted", "denied" status. Accepted would mean that we received the item back from customer and have accepted it so the customer is not charged for their RMA and the credit card authorization expires. "denied" means we have denied the RMA (or individual items in the RMA) and they need to be charged for the replacements that were sent. There also would need to be an expiration (probably through use of a cron task) that would charge their card if no merchandise comes back within a certain time period (20 days). Denied and expired RMA's get converted to regular valid orders since they end up simply paying for the items.
Front office: allow customers to select items from their order history (so long as it is an allowable item and within time frame as configured in module configuration) and add them to an RMA claim. When entering the claim they can select whether to send their defective items back to us first, or preauthorize their credit card and receive new items in advance. We use an [url removed, login to view] clone, and also have code you can 'borrow' to take care of that part of the module. Transaction information needs to be stored in a database as they may need to be finalized later if RMA is denied or expires. Final charge should be put through should the rma 'expire' (they did not return old merchandise, so they pay for the replacements) or we reject/deny their items as not defective.
part 3 - handling rma: actual replacements need to get recorded in orders database so we can ship them out of warehouse like a normal order. Should however be tracked in a seperate database as an rma.. backend needs an interface where we can set the order as received, accepted (item was indeed defective, send out new items or if they pre-authorised then allow authorization to expire) or denied (items were not defective or terms not met, if they pre-authorized an rma then they will be charged for it at this point.
PLEASE DO NOT BID IF YOU HAVE NO EXPERIENCE WITH PRESTASHOP OR YOU ARE JUST ASKING FOR ACCESS TO OUR LIVE SITE