You could merge the concepts of selling pay per download products with object states tutorial , so you could give the permission to create the objects in a non-published state to the user by default, and then, after user payment, you give the permission to change the state of the node he published to a published state. Or you could just alter the object state after user payment.