Mehmet Aydoğdu преди 3 години
родител
ревизия
60d5e4dd92
променени са 2 файла, в които са добавени 3 реда и са изтрити 2 реда
  1. 2 0
      lib/paratika.rb
  2. 1 2
      lib/paratika/response.rb

+ 2 - 0
lib/paratika.rb

@@ -10,6 +10,8 @@ require 'paratika/card'
 require 'active_support/all' unless defined?(Rails)
 
 module Paratika
+  ERROR_MAP = {ERR20052: :insufficient_funds, ERR20051: :retry_later, ERR20011: :do_not_retry}
+
   class Error < StandardError; end
 
   def self.config

+ 1 - 2
lib/paratika/response.rb

@@ -3,12 +3,11 @@ module Paratika
   class InvalidSignatureError < ::StandardError; end
   class InvalidResponseCodeError < ::StandardError; end
   class Response
-    STALE_ERROR_CODES = %w[ ERR20019 ERR20051 ]
     attr_reader :data
     def initialize(response)
       @data = JSON.parse(response.body).transform_keys!{ |k| snake_case(k) }.symbolize_keys
       @data.merge!({ time: DateTime.now, success: data[:response_code] == '00' })
-      @data.merge!({ stale: (STALE_ERROR_CODES.include? @data[:error_code]) }) unless @data[:success]
+      @data.merge!(error: ERROR_MAP[@data[:error_code].symbolize]) unless @data[:success]
     end
 
     private