For this project we teamed up with rocket-media.
The big challenge was the task to implement a custom subscription solution. Customers should be able to choose recurring orders with their shopping carts. To handle this we had to think about and handle different scenarios:
we have to manage the subscription process and let the customer choose the next delivery days.
the connection to the payment provider payone has to be handled different from regular orders.
we have to think about holidays and what has to happen on days with no shipping.
there must be automated processes to regenerate child orders for the subscriptions. These orders have to be checked for new prices and and general validity.
error management: what happens if the payment method is not valid anymore?
customize the checkout: different additional information has to be collected during the checkout prozess.
combination with vouchers: calculate the correct price.
For all these tasks we created a custom Shopware plugin, which is able to handle all the processes and brings its own surface to manage all the subscription topics.
For stability in such a complex system, we have used automated tests to ensure quality and composer to manage all the different dependencies.