|
|
@@ -3,10 +3,8 @@ module Payment
|
|
|
def self.charge_from_card(payment, customer, card, pre_auth, saved_card = true)
|
|
|
amount = pre_auth ? 0 : payment[:amount]
|
|
|
event_type = pre_auth ? "pre_authorization" : "credit_card_payment"
|
|
|
- id = {id: "c-#{Billing::WalletTransaction.id_generator}"}
|
|
|
- payment.merge!(id)
|
|
|
request, response = default_gateway.charge_from_card(payment, customer, card, pre_auth, saved_card)
|
|
|
- {event_type: event_type, amount: amount, currency: payment[:currency], metadata: {response: response, request: request, external_id: payment[:id], gateway: default_gateway.to_s, refunded: false}, success: response[:success]}
|
|
|
+ {event_type: event_type, amount: amount, currency: payment[:currency], response: response, request: request, external_id: payment[:id], gateway: default_gateway.to_s, refunded: false, success: response[:success]}
|
|
|
end
|
|
|
|
|
|
def self.cancel_transaction(refundable, pre_auth)
|
|
|
@@ -14,12 +12,12 @@ module Payment
|
|
|
amount = pre_auth ? 0 : -(refundable[:amount])
|
|
|
request, response = default_gateway.cancel_transaction(refundable)
|
|
|
request.merge!({amount: -refundable[:amount]}) if pre_auth
|
|
|
- {event_type: event_type, amount: amount, currency: refundable[:currency], metadata: {"request" => request, "response" => response, external_id: refundable[:id] , gateway: default_gateway.to_s}, success: response[:success]}
|
|
|
+ {event_type: event_type, amount: amount, currency: refundable[:currency], "request" => request, "response" => response, external_id: refundable[:id] , gateway: default_gateway.to_s, success: response[:success]}
|
|
|
end
|
|
|
|
|
|
def self.refund_money(refundable)
|
|
|
request, response = default_gateway.refund_money(refundable)
|
|
|
- {event_type: "credit_card_refund", amount: -(refundable[:amount]), currency: refundable[:currency], metadata: {"request" => request, "response" => response, external_id: refundable[:id], gateway: default_gateway.to_s}, success: response[:success]}
|
|
|
+ {event_type: "credit_card_refund", amount: -(refundable[:amount]), currency: refundable[:currency], "request" => request, "response" => response, external_id: refundable[:id], gateway: default_gateway.to_s, success: response[:success]}
|
|
|
end
|
|
|
|
|
|
def self.query_saved_cards(customer)
|