How to charge ethically in an online world