I've never really been comfortable with the idea of taking money for an app that the user has never before seen. What if the person providing the money is unhappy with the finished product? What if I couldn't finish the app quickly enough for their needs? Payment works better when the customer can immediately determine whether the product serves their needs.