bygpay 0.2.7 → 0.3.1

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: fc60ffdfd4d8bac762655bd428cfe2a51d0da94b58ce1919e1c3f806ddf19bc2
4
- data.tar.gz: 2fa92ad017ad248ca7b07daaaf0ba22aad9da1e34a6b93707fba804013e3c54c
3
+ metadata.gz: 526e3b00c45bf2a6e92dba46d79c42a30d7ed63cbd07609d681ffd0c9607fdd3
4
+ data.tar.gz: e95a6b5972136e9df49515d0587aa2a178af1e63cda792a6c4a428e9e93a9c39
5
5
  SHA512:
6
- metadata.gz: '095bf0c8e39c72a89de2f8062268362e0c66ecf14d8db55eff9a311a74752cd374115f86c8948f5fb3f5f288d10c5091557cca8a89e6d293f269848ca90610f8'
7
- data.tar.gz: 657b7750d90fef56f8998cddbf404b466038d3daa7a4bd4785b6f601b8d245baa68572aef0b503a680363f5318d1ce86669ecd59a2a8b42b6905273684b915b1
6
+ metadata.gz: a51f5a5aff19f62339f654fefd34584105b296454f7f9657421458c28b7b5e42330eac8449a13b80fbcdc26f50c0910458a4ac5b5af8cf8f338461fbf1311c09
7
+ data.tar.gz: feff812ebb777b48b9f9eaf87cc4eb0f0e012cf09aba47e328dab1f905d6e744168743d576623ee2261b38f4a80645b8914301a0af4a927d137a166526b5a247
data/README.md CHANGED
@@ -1,4 +1,4 @@
1
- [![Gem Version](https://badge.fury.io/rb/bygpay.svg)](https://badge.fury.io/rb/bygpay) [![Code Climate](https://codeclimate.com/github/nukturnal/bygpay_ruby/badges/gpa.svg)](https://codeclimate.com/github/nukturnal/bygpay_ruby) [![Test Coverage](https://codeclimate.com/github/nukturnal/bygpay_ruby/badges/coverage.svg)](https://codeclimate.com/github/nukturnal/bygpay_ruby/coverage) [![Issue Count](https://codeclimate.com/github/nukturnal/bygpay_ruby/badges/issue_count.svg)](https://codeclimate.com/github/nukturnal/bygpay_ruby) [![codebeat badge](https://codebeat.co/badges/f32a71e8-3b38-4f6f-9018-07fa503e487e)](https://codebeat.co/projects/github-com-nukturnal-bygpay_ruby-master) [![Codacy Badge](https://api.codacy.com/project/badge/Grade/7425ac54e6484723a5482a92fc7f35ef)](https://www.codacy.com/app/nukturnal/bygpay_ruby?utm_source=github.com&utm_medium=referral&utm_content=nukturnal/bygpay_ruby&utm_campaign=Badge_Grade) [![Build Status](https://travis-ci.org/nukturnal/bygpay_ruby.svg?branch=master)](https://travis-ci.org/nukturnal/bygpay_ruby)
1
+ [![Gem Version](https://badge.fury.io/rb/bygpay.svg)](https://badge.fury.io/rb/bygpay) [![Code Climate](https://codeclimate.com/github/nukturnal/bygpay_ruby/badges/gpa.svg)](https://codeclimate.com/github/nukturnal/bygpay_ruby) [![FOSSA Status](https://app.fossa.io/api/projects/git%2Bgithub.com%2Fnukturnal%2Fbygpay_ruby.svg?type=shield)](https://app.fossa.io/projects/git%2Bgithub.com%2Fnukturnal%2Fbygpay_ruby?ref=badge_shield) [![Issue Count](https://codeclimate.com/github/nukturnal/bygpay_ruby/badges/issue_count.svg)](https://codeclimate.com/github/nukturnal/bygpay_ruby) [![codebeat badge](https://codebeat.co/badges/f32a71e8-3b38-4f6f-9018-07fa503e487e)](https://codebeat.co/projects/github-com-nukturnal-bygpay_ruby-master) [![Codacy Badge](https://api.codacy.com/project/badge/Grade/7425ac54e6484723a5482a92fc7f35ef)](https://www.codacy.com/app/nukturnal/bygpay_ruby?utm_source=github.com&utm_medium=referral&utm_content=nukturnal/bygpay_ruby&utm_campaign=Badge_Grade) [![Build Status](https://travis-ci.org/nukturnal/bygpay_ruby.svg?branch=master)](https://travis-ci.org/nukturnal/bygpay_ruby)
2
2
 
3
3
  # Bygpay Ruby SDK
4
4
 
@@ -66,7 +66,8 @@ mobile_payload = {
66
66
  provider: 'MTN',
67
67
  currency: 'USD', # optional
68
68
  token: '23571', # Optional (Only required for Vodafone Payments)
69
- extrnx_code: nil # optional
69
+ extrnx_code: nil, # optional
70
+ meta_data: { name: "Alfred Rowe" } # pass an optional arbitary meta_data which will be returned later
70
71
  }
71
72
  result = deposit.charge(1.99, mobile_payload)
72
73
  if result
@@ -96,7 +97,8 @@ card_data = {
96
97
  cvv: 123,
97
98
  country: 'GH', # Optional country ISO code
98
99
  currency: 'USD', # Optional currency ISO code
99
- card_name: 'Gifty Cobbinah' # Optional Card Hold Name
100
+ card_name: 'Gifty Cobbinah', # Optional Card Hold Name
101
+ meta_data: { store: "Gifty's Thrifts" } # pass an optional arbitary meta_data which will be returned later
100
102
  }
101
103
  result = deposit.charge(1.99, card_data)
102
104
  if result
@@ -119,6 +121,7 @@ if result
119
121
  puts deposit.uuid
120
122
  puts deposit.status # accepted, :pending, :fail, :success
121
123
  puts deposit.transaction_id
124
+ puts deposit.meta_data # retrieve meta_data
122
125
  else
123
126
  puts deposit.response_text
124
127
  puts deposit.status
@@ -175,6 +178,3 @@ Bug reports and pull requests are welcome on GitHub at https://github.com/nuktur
175
178
  ## License
176
179
 
177
180
  The gem is available as open source under the terms of the [MIT License](http://opensource.org/licenses/MIT).
178
-
179
-
180
- [![FOSSA Status](https://app.fossa.io/api/projects/git%2Bgithub.com%2Fnukturnal%2Fbygpay_ruby.svg?type=large)](https://app.fossa.io/projects/git%2Bgithub.com%2Fnukturnal%2Fbygpay_ruby?ref=badge_large)
data/bygpay.gemspec CHANGED
@@ -22,11 +22,9 @@ Gem::Specification.new do |spec|
22
22
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
23
23
  spec.require_paths = ["lib"]
24
24
 
25
- spec.add_development_dependency "bundler"
26
- spec.add_development_dependency "rake"
27
25
  spec.add_development_dependency "rspec", "~> 3.0"
28
26
  spec.add_development_dependency "simplecov"
29
27
  spec.add_development_dependency "codeclimate-test-reporter", "~> 1.0.0"
30
- spec.add_dependency "http", "~> 4.1.0"
28
+ spec.add_dependency "http", "~> 4.4.1"
31
29
  spec.add_dependency "hashie", "~> 3.6.0"
32
30
  end
@@ -57,6 +57,14 @@ module Bygpay
57
57
  data.data.provider
58
58
  end
59
59
 
60
+ def redirect_link
61
+ data.data.redirect_url
62
+ end
63
+
64
+ def meta_data
65
+ data.data.meta_data
66
+ end
67
+
60
68
  # Hash strucuture
61
69
  # {
62
70
  # "status": "success",
@@ -70,7 +78,8 @@ module Bygpay
70
78
  # "extrnx_code": null,
71
79
  # "walletno": "0276967627",
72
80
  # "amount": 0.1,
73
- # "provider": "TIGO"
81
+ # "provider": "TIGO",
82
+ # "meta_data": { "key": "value" }
74
83
  # }
75
84
  # }
76
85
  # This may throw JSON::ParserError if the json_payload is not valid JSON.
@@ -3,7 +3,8 @@ module Bygpay
3
3
  attr_accessor :base_url, :api_key,
4
4
  :deposit_mobile_path, :deposit_status_overide_path, :deposit_status_path,
5
5
  :withdraw_mobile_path, :withdraw_status_overide_path, :withdraw_status_path,
6
- :deposit_card_path
6
+ :deposit_card_path, :deposit_rave_path, :deposit_expresspay_path,
7
+ :deposit_paystack_path, :deposit_hubtel_path
7
8
 
8
9
  def initialize
9
10
  @base_url = nil
@@ -11,6 +12,10 @@ module Bygpay
11
12
 
12
13
  # Preset default paths but allow for changes
13
14
  @deposit_mobile_path = '/deposits/mobile'
15
+ @deposit_rave_path = '/deposits/rave-redirect'
16
+ @deposit_paystack_path = '/deposits/paystack'
17
+ @deposit_hubtel_path = '/deposits/hubtel'
18
+ @deposit_expresspay_path = '/deposits/expresspay'
14
19
  @deposit_card_path = '/deposits/card'
15
20
  @deposit_status_overide_path = '/deposits/status-overide'
16
21
  @deposit_status_path = '/deposits'
@@ -3,7 +3,6 @@ module Bygpay
3
3
  class Card < Bygpay::Deposits
4
4
  # {
5
5
  # "card_number" : "4111111111111111",
6
- # "amount": 1.00,
7
6
  # "expiry_month": 6,
8
7
  # "expiry_year": 2017,
9
8
  # "cvv": 618,
@@ -0,0 +1,20 @@
1
+ module Bygpay
2
+ module Deposit
3
+ class ExpressPay < Bygpay::Deposits
4
+ # {
5
+ # "customer_email" : "james.bolie@gmail.com",
6
+ # "customer_phone": null,
7
+ # "customer_firstname": null,
8
+ # "customer_lastname": null,
9
+ # "custom_logo": null,
10
+ # "country": "GH",
11
+ # "currency": "GHS",
12
+ # "redirect_url": "URL"
13
+ # }
14
+ # Perform ExpressPay Checkout Transaction
15
+ def charge(amount, payload = {})
16
+ post(expresspay_deposit_endpoint, payload.merge(amount: amount))
17
+ end
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,21 @@
1
+ module Bygpay
2
+ module Deposit
3
+ class Hubtel < Bygpay::Deposits
4
+ # {
5
+ # "customer_email" : "james.bolie@gmail.com",
6
+ # "customer_phone": null,
7
+ # "customer_firstname": null,
8
+ # "customer_lastname": null,
9
+ # "custom_logo": null,
10
+ # "country": "GH",
11
+ # "currency": "GHS",
12
+ # "redirect_url": "URL"
13
+ # "description": "Payment info"
14
+ # }
15
+ # Perform Hubtel Checkout Transaction
16
+ def charge(amount, payload = {})
17
+ post(hubtel_deposit_endpoint, payload.merge(amount: amount))
18
+ end
19
+ end
20
+ end
21
+ end
@@ -0,0 +1,20 @@
1
+ module Bygpay
2
+ module Deposit
3
+ class Paystack < Bygpay::Deposits
4
+ # {
5
+ # "customer_email" : "james.bolie@gmail.com",
6
+ # "customer_phone": null,
7
+ # "customer_firstname": null,
8
+ # "customer_lastname": null,
9
+ # "custom_logo": null,
10
+ # "country": "GH",
11
+ # "currency": "GHS",
12
+ # "redirect_url": "URL"
13
+ # }
14
+ # Perform ExpressPay Checkout Transaction
15
+ def charge(amount, payload = {})
16
+ post(paystack_deposit_endpoint, payload.merge(amount: amount))
17
+ end
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,20 @@
1
+ module Bygpay
2
+ module Deposit
3
+ class Rave < Bygpay::Deposits
4
+ # {
5
+ # "customer_email" : "james.bolie@gmail.com",
6
+ # "customer_phone": null,
7
+ # "customer_firstname": null,
8
+ # "customer_lastname": null,
9
+ # "custom_title": null,
10
+ # "custom_logo": null,
11
+ # "country": "GH",
12
+ # "currency": "GHS"
13
+ # }
14
+ # Perform a RaveRedirect Transaction
15
+ def charge(amount, payload = {})
16
+ post(rave_deposit_endpoint, payload.merge(amount: amount))
17
+ end
18
+ end
19
+ end
20
+ end
data/lib/bygpay/utils.rb CHANGED
@@ -3,13 +3,30 @@ require 'http'
3
3
  module Bygpay
4
4
  module Utils
5
5
  attr_accessor :status, :response_text, :transaction_id,
6
- :uuid, :result, :response, :amount
6
+ :uuid, :result, :response, :amount, :meta_data
7
7
 
8
8
  # Mobile Deposit transactions endpoint
9
9
  def mobile_deposit_endpoint
10
10
  Bygpay.configuration.deposit_mobile_path
11
11
  end
12
12
 
13
+ # Rave Deposit transactions endpoint
14
+ def rave_deposit_endpoint
15
+ Bygpay.configuration.deposit_rave_path
16
+ end
17
+
18
+ def expresspay_deposit_endpoint
19
+ Bygpay.configuration.deposit_expresspay_path
20
+ end
21
+
22
+ def paystack_deposit_endpoint
23
+ Bygpay.configuration.deposit_paystack_path
24
+ end
25
+
26
+ def hubtel_deposit_endpoint
27
+ Bygpay.configuration.deposit_hubtel_path
28
+ end
29
+
13
30
  # Mobile Deposit transactions endpoint
14
31
  def card_deposit_endpoint
15
32
  Bygpay.configuration.deposit_card_path
@@ -54,6 +71,7 @@ module Bygpay
54
71
  @response_text = resp.message
55
72
  @uuid = @response.uuid
56
73
  @amount = @response.amount
74
+ @meta_data = @response.meta_data
57
75
  @status = @response.transaction_status
58
76
  @result = @response.request_successful?
59
77
  end
@@ -1,3 +1,3 @@
1
1
  module Bygpay
2
- VERSION = "0.2.7"
2
+ VERSION = "0.3.1"
3
3
  end
data/lib/bygpay.rb CHANGED
@@ -5,6 +5,10 @@ require 'bygpay/utils'
5
5
  require 'bygpay/deposits'
6
6
  require 'bygpay/deposit/mobile'
7
7
  require 'bygpay/deposit/card'
8
+ require 'bygpay/deposit/rave'
9
+ require 'bygpay/deposit/express_pay'
10
+ require 'bygpay/deposit/paystack'
11
+ require 'bygpay/deposit/hubtel'
8
12
  require 'bygpay/withdrawals'
9
13
  require 'bygpay/withdraw/mobile'
10
14
 
metadata CHANGED
@@ -1,43 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bygpay
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.7
4
+ version: 0.3.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Alfred Rowe
8
- autorequire:
8
+ autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-05-19 00:00:00.000000000 Z
11
+ date: 2022-05-28 00:00:00.000000000 Z
12
12
  dependencies:
13
- - !ruby/object:Gem::Dependency
14
- name: bundler
15
- requirement: !ruby/object:Gem::Requirement
16
- requirements:
17
- - - ">="
18
- - !ruby/object:Gem::Version
19
- version: '0'
20
- type: :development
21
- prerelease: false
22
- version_requirements: !ruby/object:Gem::Requirement
23
- requirements:
24
- - - ">="
25
- - !ruby/object:Gem::Version
26
- version: '0'
27
- - !ruby/object:Gem::Dependency
28
- name: rake
29
- requirement: !ruby/object:Gem::Requirement
30
- requirements:
31
- - - ">="
32
- - !ruby/object:Gem::Version
33
- version: '0'
34
- type: :development
35
- prerelease: false
36
- version_requirements: !ruby/object:Gem::Requirement
37
- requirements:
38
- - - ">="
39
- - !ruby/object:Gem::Version
40
- version: '0'
41
13
  - !ruby/object:Gem::Dependency
42
14
  name: rspec
43
15
  requirement: !ruby/object:Gem::Requirement
@@ -86,14 +58,14 @@ dependencies:
86
58
  requirements:
87
59
  - - "~>"
88
60
  - !ruby/object:Gem::Version
89
- version: 4.1.0
61
+ version: 4.4.1
90
62
  type: :runtime
91
63
  prerelease: false
92
64
  version_requirements: !ruby/object:Gem::Requirement
93
65
  requirements:
94
66
  - - "~>"
95
67
  - !ruby/object:Gem::Version
96
- version: 4.1.0
68
+ version: 4.4.1
97
69
  - !ruby/object:Gem::Dependency
98
70
  name: hashie
99
71
  requirement: !ruby/object:Gem::Requirement
@@ -131,7 +103,11 @@ files:
131
103
  - lib/bygpay/byg_response.rb
132
104
  - lib/bygpay/configuration.rb
133
105
  - lib/bygpay/deposit/card.rb
106
+ - lib/bygpay/deposit/express_pay.rb
107
+ - lib/bygpay/deposit/hubtel.rb
134
108
  - lib/bygpay/deposit/mobile.rb
109
+ - lib/bygpay/deposit/paystack.rb
110
+ - lib/bygpay/deposit/rave.rb
135
111
  - lib/bygpay/deposits.rb
136
112
  - lib/bygpay/utils.rb
137
113
  - lib/bygpay/version.rb
@@ -141,7 +117,7 @@ homepage: https://github.com/nukturnal/bygpay_ruby
141
117
  licenses:
142
118
  - MIT
143
119
  metadata: {}
144
- post_install_message:
120
+ post_install_message:
145
121
  rdoc_options: []
146
122
  require_paths:
147
123
  - lib
@@ -156,8 +132,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
156
132
  - !ruby/object:Gem::Version
157
133
  version: '0'
158
134
  requirements: []
159
- rubygems_version: 3.0.1
160
- signing_key:
135
+ rubygems_version: 3.3.14
136
+ signing_key:
161
137
  specification_version: 4
162
138
  summary: Bygpay Payment Gateway Ruby SDK
163
139
  test_files: []