naspay_rails 0.0.3 → 0.0.4

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: affdc9fe74f1d44057cb88ed65515180f48bece082fc6c8051ed98e56de96924
4
- data.tar.gz: fa3acf7e2953c6cf6cdbc698a7db38dab0327e5cb545a2757dd32e6e9bf67616
3
+ metadata.gz: 478a05f6f91efcfede7a11ce362906d4f9e0f1692243e153ae12e3f6f582b30f
4
+ data.tar.gz: 5563b1ddeb666e25d41cb5078603369cde658a861d455f6eb429570076aadedf
5
5
  SHA512:
6
- metadata.gz: 30cc98cf4bdaa652a4d183fcacefc254dc4691700a209fb54c66be92e3f6682724f0315195a6104eb5b82d5a2e4bf7d7d10dd9b79a5927ea8c9e15d0f88a538f
7
- data.tar.gz: 68bedaef83180297c6b3d9d812a06093e65b32acaf13bc7a54c1113a1aeba5ae548f745f3690448f6d66e47a2d0d596f67e1421e10634bb6485e78037007ae22
6
+ metadata.gz: f1cded9dbacd4cfa57340a33d257710dbd43ab2c2d1cf0ae143e305a56e381dd9952d406af76664a545dd21d22972a088284980a797676c9cec15f43b78cbebf
7
+ data.tar.gz: adb9847a70d6f49ed9445d8d2195b6e972e045a5c6d32e0d7c5c78a3f2e9767d3787ac3ff7c22e0d9be5c36ded01a589ea819c6e00cfc4595963d12152ea5cca
data/lib/naspay_rails.rb CHANGED
@@ -2,6 +2,7 @@ require 'naspay_rails/version'
2
2
  require 'naspay_rails/configuration'
3
3
  require 'naspay_rails/auth'
4
4
  require 'naspay_rails/transactions'
5
+ require 'naspay_rails/payouts'
5
6
 
6
7
  module NaspayRails
7
8
 
@@ -0,0 +1,41 @@
1
+ require 'net/http'
2
+ require 'uri'
3
+
4
+ module NaspayRails
5
+ module Payouts
6
+ def self.create_new(endpoint, params, token)
7
+ route_suffix = '/api/v1/payouts'
8
+ target_url = "#{endpoint}#{route_suffix}"
9
+ request_uri = URI.parse(target_url)
10
+ request = Net::HTTP::Post.new(request_uri)
11
+ request["Authorization"] = "Bearer #{token}"
12
+ request["Content-Type"] = "application/json"
13
+ request["Accept"] = "application/json"
14
+
15
+ request_body =
16
+ case params.keys.sort
17
+ when %i[amount currency transaction_id description card].sort
18
+ {
19
+ "amount" => params[:amount],
20
+ "currency" => params[:currency],
21
+ "merchantTransactionId" => params[:transaction_id],
22
+ "description" => params[:description],
23
+ "card" => {
24
+ "cardholder" => params[:card].try(:[], :cardholder),
25
+ "pan" => params[:card].try(:[], :pan),
26
+ "expiryYear" => params[:card].try(:[], :exp_year),
27
+ "expiryMonth" => params[:card].try(:[], :exp_month)
28
+ }
29
+ }
30
+ else
31
+ return 'please check the keys provided in params Hash!'
32
+ end
33
+ request.body = JSON.dump(request_body)
34
+ req_options = {
35
+ use_ssl: request_uri.scheme == "https",
36
+ }
37
+
38
+ Net::HTTP.start(request_uri.hostname, request_uri.port, req_options) { |http| http.request(request) }
39
+ end
40
+ end
41
+ end
@@ -1,3 +1,3 @@
1
1
  module NaspayRails
2
- VERSION = "0.0.3"
2
+ VERSION = "0.0.4"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: naspay_rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3
4
+ version: 0.0.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - antonror
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2018-03-22 00:00:00.000000000 Z
11
+ date: 2018-03-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -79,6 +79,7 @@ files:
79
79
  - lib/naspay_rails.rb
80
80
  - lib/naspay_rails/auth.rb
81
81
  - lib/naspay_rails/configuration.rb
82
+ - lib/naspay_rails/payouts.rb
82
83
  - lib/naspay_rails/transactions.rb
83
84
  - lib/naspay_rails/version.rb
84
85
  - naspay_rails.gemspec