firekassa 0.1.0 → 0.1.1

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: db5ff926e9fd5ab6bb87cab375fc60b81a77a20b0e6eecc842d1fe50eb082a6f
4
- data.tar.gz: 5c7132fae80d82a16434c86c1031ccfbda92444b152f800a10d6375517b7c1d6
3
+ metadata.gz: 0a663cb7f57a14f62f0314b777f83539532d591e77c516f773ebaf45919fe1ca
4
+ data.tar.gz: dac4b997543d93289431ec98b2dd2e0d761c55941bc2d2b04760c8f136864cc3
5
5
  SHA512:
6
- metadata.gz: 7eb4c901a6c19a7fc7872681198b730a5180177deb219552e8286f4e74be4eebe5fd3413b8951f7b845b0680ce4088e25dbf2440be91fd82cb8d1ef93f85deaf
7
- data.tar.gz: 8b787aebfb3cf550ab4924b269cf483f8e29a958742a2078d6c63a98fad743ee7e1c82eb5dea49772d096c44daebddc476d6364236e1aa86b70f2f004a43a900
6
+ metadata.gz: a0631685d5fe44e607e41a5b71856253d56f8a50927fd0f2702fd3fe59bd3bf1dcdfcf0837ef350520b2e2dad1155aad172cb6b7a44eae4e7427173b875f02a7
7
+ data.tar.gz: 610c39e084c30e0b941c46a861fc71cba5a59cd664af668bbe0d3f0c5eae6277380d9d8df7775713439b608a8aa70738fe1c3c966fba5e76b289592598e01395
data/CHANGELOG.md CHANGED
@@ -3,3 +3,8 @@
3
3
  ## [0.1.0] - 2023-04-19
4
4
 
5
5
  - Initial release
6
+
7
+
8
+ ## [0.1.1] - 2023-04-19
9
+
10
+ - Implement all base API: Accounts, Transactions, Balance
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- firekassa (0.1.0)
4
+ firekassa (0.1.1)
5
5
  faraday (~> 1.0)
6
6
 
7
7
  GEM
data/README.md CHANGED
@@ -30,8 +30,7 @@ Now you can make API calls
30
30
 
31
31
  ### Balance
32
32
 
33
- To get yoour account balance:
34
-
33
+ #### To get yoour account balance:
35
34
  ```ruby
36
35
  Firekassa::Balance.new.get # => { "balance": "2000.0" }
37
36
  ```
@@ -39,33 +38,69 @@ See [API method reference](https://admin.vanilapay.com/api/doc/v2#/operations/ge
39
38
 
40
39
  ### Account
41
40
 
42
- To list your Site accounts:
41
+ #### To list your Site accounts:
43
42
  ```ruby
44
43
  Firekassa::Account.new.list # => items: [ ... ]
45
44
  ```
46
45
  See more info in tests and [API method reference](https://admin.vanilapay.com/api/doc/v2#/operations/getSiteAccounts)
47
46
 
48
- To show your concrete account info:
47
+ #### To show your concrete account info:
49
48
  ```ruby
50
49
  Firekassa::Balance.new.show(account_id) # => { account_data... }
51
50
  ```
52
51
  See more info in tests and [API method reference](https://admin.vanilapay.com/api/doc/v2#/operations/getSiteAccount)
53
52
 
54
53
 
55
- ### Deposit
54
+ ### Transactions
56
55
 
57
- To create deposit:
56
+ #### To list transactions:
57
+ ```ruby
58
+ Firekassa::Transaction.new.list # => {items:[ trxs...] }
59
+ ```
60
+ See more info in tests and [API method reference](https://admin.vanilapay.com/api/doc/v2#/operations/getTransactions)
61
+
62
+ #### To create deposit:
58
63
  ```ruby
59
64
  Firekassa::Deposit.new.create(deposit_data) # => { trx data... }
60
65
  ```
61
66
  See more info in tests and [API method reference](https://admin.vanilapay.com/api/doc/v2#/operations/createDepositTransaction)
62
67
 
63
- To show deposit data:
68
+ #### To create withdrawal:
69
+ ```ruby
70
+ Firekassa::Withdraw.new.create(withdraw_data) # => { trx data... }
71
+ ```
72
+ See more info in tests and [API method reference](https://admin.vanilapay.com/api/doc/v2#/operations/createWithdrawalTransaction)
73
+
74
+ #### To show transaction data:
64
75
  ```ruby
65
- Firekassa::Deposit.new.show(deposit_id) # => { trx data... }
76
+ Firekassa::Transaction.new.show(deposit_id) # => { trx data... }
66
77
  ```
67
78
  See more info in tests and [API method reference](https://admin.vanilapay.com/api/doc/v2#/operations/getTransaction)
68
79
 
80
+ #### Cancel transaction:
81
+ ```ruby
82
+ Firekassa::Transaction.new.cancel(id) # => { trx data... }
83
+ ```
84
+ See more info in tests and [API method reference](https://admin.vanilapay.com/api/doc/v2#/operations/cancelTransaction)
85
+
86
+ #### To get currency rate for withdrawal:
87
+ ```ruby
88
+ Firekassa::Withdraw.new.currency_rate(data) # => { rate data... }
89
+ ```
90
+ See more info in tests and [API method reference](https://admin.vanilapay.com/api/doc/v2#/operations/getWithdrawalRate)
91
+
92
+ #### To download transaction receipt:
93
+ ```ruby
94
+ Firekassa::Transaction.new.download_receipt(id)
95
+ ```
96
+ See more info in tests and [API method reference](https://admin.vanilapay.com/api/doc/v2#/operations/downloadTransactionReceipt)
97
+
98
+ To send transaction receipt to email:
99
+ ```ruby
100
+ Firekassa::Transaction.new.send_to_email(id)
101
+ ```
102
+ See more info in tests and [API method reference](https://admin.vanilapay.com/api/doc/v2#/operations/sendTransactionReceipt)
103
+
69
104
  ## Development
70
105
 
71
106
  After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake spec` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
@@ -4,16 +4,11 @@ require "firekassa/config"
4
4
  require "firekassa/client"
5
5
 
6
6
  module Firekassa
7
- # Get site deposit API
7
+ # Deposit API
8
8
  class Deposit < Client
9
9
  def create(data)
10
10
  path = "/api/v2/deposit"
11
11
  send_request(method: :post, path: path, body: data)
12
12
  end
13
-
14
- def show(id)
15
- path = "/api/v2/transactions/#{id}"
16
- send_request(method: :get, path: path)
17
- end
18
13
  end
19
14
  end
@@ -0,0 +1,37 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "firekassa/config"
4
+ require "firekassa/client"
5
+
6
+ module Firekassa
7
+ # Transactions API
8
+ class Transaction < Client
9
+ def show(id)
10
+ path = "/api/v2/transactions/#{id}"
11
+ send_request(method: :get, path: path)
12
+ end
13
+
14
+ def cancel(id)
15
+ path = "/api/v2/transactions/#{id}/cancel"
16
+ send_request(method: :post, path: path)
17
+ end
18
+
19
+ def list
20
+ # TODO: add proper URI encode
21
+ # filter: nil, page: nil, sort: nil
22
+ path = "/api/v2/transactions"
23
+ send_request(method: :get, path: path)
24
+ end
25
+
26
+ def download_receipt(id)
27
+ path = "/api/v2/transactions/#{id}/receipt"
28
+ send_request(method: :get, path: path)
29
+ end
30
+
31
+ def send_to_email(id:, email:, format:)
32
+ data = { email: email, format: format }
33
+ path = "/api/v2/transactions/#{id}/send-receipt"
34
+ send_request(method: :post, path: path, body: data)
35
+ end
36
+ end
37
+ end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Firekassa
4
- VERSION = "0.1.0"
4
+ VERSION = "0.1.1"
5
5
  end
@@ -0,0 +1,19 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "firekassa/config"
4
+ require "firekassa/client"
5
+
6
+ module Firekassa
7
+ # Withdraw API
8
+ class Withdraw < Client
9
+ def create(data)
10
+ path = "/api/v2/withdrawal"
11
+ send_request(method: :post, path: path, body: data)
12
+ end
13
+
14
+ def currency_rate(data)
15
+ path = "/api/v2/withdrawal/rate"
16
+ send_request(method: :post, path: path, body: data)
17
+ end
18
+ end
19
+ end
data/lib/firekassa.rb CHANGED
@@ -2,9 +2,11 @@
2
2
 
3
3
  require "firekassa/config"
4
4
  require "firekassa/version"
5
+ require "firekassa/account"
5
6
  require "firekassa/balance"
7
+ require "firekassa/transaction"
6
8
  require "firekassa/deposit"
7
- require "firekassa/account"
9
+ require "firekassa/withdraw"
8
10
 
9
11
  # Head module
10
12
  module Firekassa
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: firekassa
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Alexey Kuznetsov
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2023-04-19 00:00:00.000000000 Z
11
+ date: 2023-04-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: faraday
@@ -90,7 +90,9 @@ files:
90
90
  - lib/firekassa/config.rb
91
91
  - lib/firekassa/deposit.rb
92
92
  - lib/firekassa/errors.rb
93
+ - lib/firekassa/transaction.rb
93
94
  - lib/firekassa/version.rb
95
+ - lib/firekassa/withdraw.rb
94
96
  - sig/firekassa.rbs
95
97
  homepage: https://fp-dev4.fkcore.com/api/doc/v2
96
98
  licenses: