epayco-sdk-ruby 1.3.0 → 1.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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