New checkout

Its intention is to allow the user to complete the checkout process without being charged. This should happen after a manual use of `PaymentGenerator` class (or using a future feature).

Closes #94, #95 and maybe issues to be opened yet.