use only payment_id instead id or key
adjust some migrations :P
remove unnecessary condition
more DRY <3
create avaiable_to_automatic_refund scope into contribution
create concern to handle with payment_method / choice methods
use is_pagarme? instead look into payment_method directly