Make private methods where appropriate.

Validate payment amount not null when saving and processing payment.

Log response status by appropriate severity (info or error).

Provide functional test for credit card payment amount null.