Marketing and loyalty
Loyalty and referrals
Points on delivery, traded for a code, referrals.
Turn the program on in Orders → Loyalty and set the points per unit spent and their value.
Points are credited when the order is delivered and taken back if it's canceled.
Each customer has a referral code on their account: their friend gets a discount on a first order, they earn points on delivery.