Sha256: d53a8830247028b5f524dbe7833fdf0d8febe3120afdf2dd16a221670176a5fa
Contents?: true
Size: 1.18 KB
Versions: 2
Compression:
Stored size: 1.18 KB
Contents
# frozen_string_literal: true module SolidusNexio class AlternativePaymentMethod < SolidusSupport.payment_method_parent_class include NexioPaymentCommons preference(:server, :string, default: 'test') preference(:merchant_id, :string, default: nil) preference(:auth_token, :string, default: nil) preference(:payment_method, :string, default: nil) preference(:save_token, :boolean, default: false) preference(:customer_redirect, :boolean, default: false) def partial_name 'nexio_apm' end alias method_type partial_name def generate_token(options) order = Spree::Order.find_by(number: options.dig(:order, :number)) return unless order amount = order.respond_to?(:order_total_after_store_credit) ? order.order_total_after_store_credit : order.total params = { payment_method: preferred_payment_method, save_token: preferred_save_token, is_auth_only: !auto_capture? }.merge!(options) gateway.generate_token(amount.to_money.cents, params) end def payment_source_class ApmSource end private def gateway_class ActiveMerchant::Billing::NexioApmGateway end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
solidus_nexio-0.7.1 | app/models/solidus_nexio/alternative_payment_method.rb |
solidus_nexio-0.7.0 | app/models/solidus_nexio/alternative_payment_method.rb |