epayco-sdk-ruby 1.3.0 → 1.5.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7a39abf09f32cf10d74bf93bfca02dfe96f7609932441647a30ed16da5fa6f8c
4
- data.tar.gz: fcf74e3e284b6294f022db6ca415ff64ae73350481dc7a7c0a1db625afc25f48
3
+ metadata.gz: '09f513fb64d1dbd4d58f1d498f1061238b96f1d3aad7a274199f3ce3fcf67018'
4
+ data.tar.gz: 3fc41a7f182e99e521c28fc5262cac1c10ae159b67ad09e7c05db261f2315628
5
5
  SHA512:
6
- metadata.gz: 575b2b8b999725ce4a24b179575df9ff0dcc6eb9718f13da4981af84d40bf543441cd875d24cd4bd2b323764edd42c977e53b0a89f2070632d8c97af1c3f9db5
7
- data.tar.gz: a31dba25c0ec1dce3cce5e6755bce3f87508472281dafdfbb07ceea22af5783e74d0686d2016cf6a0559716907d29146c4702a9fa421d2ee01844931589b1b12
6
+ metadata.gz: 3ff470b66a1ce12cbb65c0a1e8255093248be0c98e04063384eac6134d2cc92cba1181ef9d8770b59e20b6820a46c5b5d12779ee158aee6f600c77f00c1518f9
7
+ data.tar.gz: '08db705ac5c361f2bd6dfd64cb96f82af36008cead9b23d627e68cbe927f29ca2598221bae3f4f52c5a746d07c5a927451140422ea23bd993cafc02b0423c111'
@@ -34,6 +34,8 @@ module Epayco
34
34
  url = "/restpagos/v2/efectivo/redservi"
35
35
  elsif extra == "puntored"
36
36
  url = "/restpagos/v2/efectivo/puntored"
37
+ elsif extra == "sured"
38
+ url = "/restpagos/v2/efectivo/sured"
37
39
  else
38
40
  raise Error.new('109', Epayco.lang)
39
41
  end
data/lib/epayco.rb CHANGED
@@ -4,6 +4,7 @@ require 'openssl'
4
4
  require 'base64'
5
5
  require 'open-uri'
6
6
  require 'socket'
7
+
7
8
  require_relative 'epayco/resources'
8
9
 
9
10
  module Epayco
@@ -36,6 +37,8 @@ module Epayco
36
37
  @api_base = 'https://api.secure.payco.co'
37
38
  @api_base_secure = 'https://secure.payco.co'
38
39
  @api_base_apify = "https://apify.epayco.co"
40
+ @api_entorno = "/restpagos"
41
+
39
42
 
40
43
  # Init sdk parameters
41
44
  class << self
@@ -52,25 +55,27 @@ module Epayco
52
55
  if !apiKey || !privateKey || !lang
53
56
  raise Error.new('100', lang)
54
57
  end
55
-
58
+ params["extras_epayco"] = {extra5:"P45"}
56
59
  payload = JSON.generate(params) if method == :post || method == :patch
57
60
  params = nil unless method == :get
58
-
61
+
59
62
  # Switch secure or api or apify
60
63
  if apify
61
- @tags = JSON.parse(payload)
62
- seted = {}
63
- file = File.read(File.dirname(__FILE__) + '/keylang_apify.json')
64
- data_hash = JSON.parse(file)
65
- @tags.each {
66
- |key, value|
67
- if data_hash[key]
68
- seted[data_hash[key]] = value
69
- else
70
- seted[key] = value
71
- end
72
- }
73
- payload = seted.to_json
64
+ if method == :post
65
+ @tags = JSON.parse(payload)
66
+ seted = {}
67
+ file = File.read(File.dirname(__FILE__) + '/keylang_apify.json')
68
+ data_hash = JSON.parse(file)
69
+ @tags.each {
70
+ |key, value|
71
+ if data_hash[key]
72
+ seted[data_hash[key]] = value
73
+ else
74
+ seted[key] = value
75
+ end
76
+ }
77
+ payload = seted.to_json
78
+ end
74
79
  url = @api_base_apify + url
75
80
  elsif switch
76
81
  if method == :post || method == :patch
@@ -82,7 +87,7 @@ module Epayco
82
87
  payload = enc.to_json
83
88
  end
84
89
  end
85
- url = @api_base_secure + url
90
+ url = @api_base_secure + @api_entorno + url
86
91
  else
87
92
  if method == :post || method == :patch
88
93
  rb_hash = JSON.parse(payload)
@@ -116,10 +121,7 @@ module Epayco
116
121
 
117
122
  # Open library rest client
118
123
  begin
119
- #puts options
120
- #abort("Message goes here 1")
121
124
  response = execute_request(options)
122
- #puts response.body
123
125
  return {} if response.code == 204 and method == :delete
124
126
  JSON.parse(response.body, :symbolize_names => true)
125
127
  rescue RestClient::Exception => e
@@ -163,16 +165,20 @@ module Epayco
163
165
  @seted["ip"] = local_ip
164
166
  @seted["enpruebas"] = encrypt(sandbox, Epayco.privateKey)
165
167
  else
166
- @tags.each {
167
- |key, value|
168
- @seted[lang_key(key)] = encrypt(value, Epayco.privateKey)
169
- }
170
- @seted["ip"] = encrypt(local_ip, Epayco.privateKey)
171
- @seted["enpruebas"] = encrypt(sandbox, Epayco.privateKey)
168
+ @tags.each {
169
+ |key, value|
170
+ if lang_key(key) != "extras_epayco"
171
+ @seted[lang_key(key)] = encrypt(value, Epayco.privateKey)
172
+ else
173
+ @seted[lang_key(key)] = {extra5:encrypt(value["extra5"], Epayco.privateKey)}
174
+ end
175
+ }
176
+ @seted["ip"] = encrypt(local_ip, Epayco.privateKey)
177
+ @seted["enpruebas"] = encrypt(sandbox, Epayco.privateKey)
172
178
  end
173
179
 
174
-
175
-
180
+
181
+
176
182
 
177
183
  @seted["public_key"] = Epayco.apiKey
178
184
  @seted["i"] = Base64.encode64("0000000000000000")
@@ -210,10 +216,11 @@ module Epayco
210
216
  :content_type => 'application/json',
211
217
  :type => 'sdk'
212
218
  }
213
- url = 'https://api.secure.payco.co/v1/auth/login'
219
+
220
+ url = @api_base+'/v1/auth/login'
214
221
  if(apify)
215
222
  headers[:Authorization] = "Basic " + Base64.strict_encode64(apiKey + ":" + privateKey)
216
- url = 'https://apify.epayco.co/login'
223
+ url = @api_base_apify+'/login'
217
224
  end
218
225
  payload = @parmas.to_json
219
226
  options = {
data/lib/keylang.json CHANGED
@@ -32,5 +32,6 @@
32
32
  "split_primary_receiver": "split_primary_receiver",
33
33
  "split_primary_receiver_fee": "split_primary_receiver_fee",
34
34
  "split_rule": "split_rule",
35
- "split_receivers": "split_receivers"
35
+ "split_receivers": "split_receivers",
36
+ "extras_epayco": "extras_epayco"
36
37
  }
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: epayco-sdk-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.0
4
+ version: 1.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Epayco development team
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2023-06-15 00:00:00.000000000 Z
13
+ date: 2024-01-03 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: rest-client
@@ -106,7 +106,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
106
106
  - !ruby/object:Gem::Version
107
107
  version: '0'
108
108
  requirements: []
109
- rubygems_version: 3.2.3
109
+ rubygems_version: 3.3.26
110
110
  signing_key:
111
111
  specification_version: 4
112
112
  summary: Ruby wrapper for Epayco API