Sha256: d60aec20ad03fb841a01a9a99ed1c19c65b0b6391cfe4d03674e2151f541531e

Contents?: true

Size: 1.07 KB

Versions: 5

Compression:

Stored size: 1.07 KB

Contents

module Payanyway
  module Request
    class Pay < Base
      @@_params = {
        'MNT_ID'             => :moneta_id,
        'MNT_TRANSACTION_ID' => :order_id,
        'MNT_OPERATION_ID'   => :operation_id,
        'MNT_AMOUNT'         => :amount,
        'MNT_CURRENCY_CODE'  => :currency,
        'MNT_SUBSCRIBER_ID'  => :subscriber_id,
        'MNT_TEST_MODE'      => :test_mode,
        'MNT_SIGNATURE'      => :signature,
        'MNT_USER'           => :user,
        'MNT_CORRACCOUNT'    => :corraccount,
        'MNT_CUSTOM1'        => :custom1,
        'MNT_CUSTOM2'        => :custom2,
        'MNT_CUSTOM3'        => :custom3
      }.invert.to_settings

      def initialize(params)
        super
        @valid_signature = (@pretty_params[:signature] == Payanyway::Helpers::SignatureGenerate.for_pay(@params))
      end

      def success?
        @valid_signature
      end

      def response
        @valid_signature ? 'SUCCESS' : 'FAIL'
      end

      private

      def signature
        Payanyway::Helpers::SignatureGenerate.for_pay(@params)
      end
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
payanyway-1.2.6 lib/payanyway/request/pay.rb
payanyway-1.2.5 lib/payanyway/request/pay.rb
payanyway-1.2.3 lib/payanyway/request/pay.rb
payanyway-1.2.4 lib/payanyway/request/pay.rb
payanyway-1.2.2 lib/payanyway/request/pay.rb