We had to improve functionality of an already developed website which sells cupcakes locally in USA. It was possible to order shipping or buy them locally. So, the main features that we had to work on were:
The final price shown in the cart subtotal should have shown the total amount, including tip. So when someone is checking out, they should be able to look at their order on the checkout page and enter a tip amount. That field should also show a default of $2 so it's automatically included, but the user can change it (make it higher, lower, whatever.)
When the user looks at the cart, as he enters his payment details, he also had an opportunity to specify the delivery address.
So we customized Wordpress Woocomerce plugin, implemented a possibility for users to adjusted the amount of tips. Changed html form of the email, added shipping address if it was different from the address of the person who made an order. Also test for calculation of the distance from the shop to the shipping address was changed (shipping cost for the distance up to 5 kilometers cost $5, if the distance was bigger then self-delivery was only possible)