Validate source on payment if payment method's requires a source

* Fixes a multitude of errors related to creating payments with no source in the checkout flow