Refactoring payment method