promisepay 0.0.4 → 0.0.5

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.
@@ -1,26 +1,26 @@
1
- module Promisepay
2
- # Manage Paypal accounts
3
- class PaypalAccount < Account
4
- # Get the user the paypal account belongs to.
5
- #
6
- # @see http://docs.promisepay.com/v2.2/docs/paypal_accountsidusers
7
- #
8
- # @return [Promisepay::User]
9
- def user
10
- response = JSON.parse(@client.get("paypal_accounts/#{send(:id)}/users").body)
11
- Promisepay::User.new(@client, response['users'])
12
- end
13
-
14
- # Deletes a Paypal account for a user on a marketplace.
15
- # Sets the account to in-active.
16
- #
17
- # @see http://docs.promisepay.com/v2.2/docs/paypal_accountsid
18
- #
19
- # @return [Boolean]
20
- def deactivate
21
- @client.delete("paypal_accounts/#{id}")
22
- @attributes['active'] = false
23
- true
24
- end
25
- end
26
- end
1
+ module Promisepay
2
+ # Manage Paypal accounts
3
+ class PaypalAccount < Account
4
+ # Get the user the paypal account belongs to.
5
+ #
6
+ # @see http://docs.promisepay.com/v2.2/docs/paypal_accountsidusers
7
+ #
8
+ # @return [Promisepay::User]
9
+ def user
10
+ response = JSON.parse(@client.get("paypal_accounts/#{send(:id)}/users").body)
11
+ Promisepay::User.new(@client, response['users'])
12
+ end
13
+
14
+ # Deletes a Paypal account for a user on a marketplace.
15
+ # Sets the account to in-active.
16
+ #
17
+ # @see http://docs.promisepay.com/v2.2/docs/paypal_accountsid
18
+ #
19
+ # @return [Boolean]
20
+ def deactivate
21
+ @client.delete("paypal_accounts/#{id}")
22
+ @attributes['active'] = false
23
+ true
24
+ end
25
+ end
26
+ end
@@ -1,24 +1,24 @@
1
- module Promisepay
2
- # Manage Transactions
3
- class Transaction < Account
4
- # .
5
- #
6
- # @see https://test.api.promisepay.com/transactions/:id/users
7
- #
8
- # @return [Promisepay::User]
9
- def user
10
- response = JSON.parse(@client.get("transactions/#{send(:id)}/users").body)
11
- response.key?('users') ? Promisepay::User.new(@client, response['users']) : nil
12
- end
13
-
14
- # Gets a transactions fee details if applicable.
15
- #
16
- # @see http://docs.promisepay.com/v2.2/docs/transactionsidfees
17
- #
18
- # @return [Promisepay::Fee]
19
- def fee
20
- response = JSON.parse(@client.get("transactions/#{send(:id)}/fees").body)
21
- response.key?('fees') ? Promisepay::Fee.new(@client, response['fees']) : nil
22
- end
23
- end
24
- end
1
+ module Promisepay
2
+ # Manage Transactions
3
+ class Transaction < Account
4
+ # .
5
+ #
6
+ # @see https://test.api.promisepay.com/transactions/:id/users
7
+ #
8
+ # @return [Promisepay::User]
9
+ def user
10
+ response = JSON.parse(@client.get("transactions/#{send(:id)}/users").body)
11
+ response.key?('users') ? Promisepay::User.new(@client, response['users']) : nil
12
+ end
13
+
14
+ # Gets a transactions fee details if applicable.
15
+ #
16
+ # @see http://docs.promisepay.com/v2.2/docs/transactionsidfees
17
+ #
18
+ # @return [Promisepay::Fee]
19
+ def fee
20
+ response = JSON.parse(@client.get("transactions/#{send(:id)}/fees").body)
21
+ response.key?('fees') ? Promisepay::Fee.new(@client, response['fees']) : nil
22
+ end
23
+ end
24
+ end
@@ -1,63 +1,63 @@
1
-
2
- module Promisepay
3
- # Manage Users
4
- class User < BaseModel
5
- # Lists items for a user on a marketplace.
6
- #
7
- # @see http://docs.promisepay.com/v2.2/docs/usersiditems
8
- #
9
- # @return [Array<Promisepay::Item>]
10
- def items
11
- response = JSON.parse(@client.get("users/#{send(:id)}/items").body)
12
- users = response.key?('items') ? response['items'] : []
13
- users.map { |attributes| Promisepay::Item.new(@client, attributes) }
14
- end
15
-
16
- # Gets Bank account for a user on a marketplace.
17
- #
18
- # @see http://docs.promisepay.com/v2.2/docs/usersidbank_accounts
19
- #
20
- # @return [Promisepay::BankAccount]
21
- def bank_account
22
- response = JSON.parse(@client.get("users/#{send(:id)}/bank_accounts").body)
23
- Promisepay::BankAccount.new(@client, response['bank_accounts'])
24
- rescue Promisepay::UnprocessableEntity
25
- nil
26
- end
27
-
28
- # Gets Card account for a user on a marketplace.
29
- #
30
- # @see http://docs.promisepay.com/v2.2/docs/usersidcard_accounts
31
- #
32
- # @return [Promisepay::CardAccount]
33
- def card_account
34
- response = JSON.parse(@client.get("users/#{send(:id)}/card_accounts").body)
35
- Promisepay::CardAccount.new(@client, response['card_accounts'])
36
- rescue Promisepay::UnprocessableEntity
37
- nil
38
- end
39
-
40
- # Gets PayPal account for a user on a marketplace.
41
- #
42
- # @see http://docs.promisepay.com/v2.2/docs/usersidpaypal_accounts
43
- #
44
- # @return [Promisepay::PaypalAccount]
45
- def paypal_account
46
- response = JSON.parse(@client.get("users/#{send(:id)}/paypal_accounts").body)
47
- Promisepay::PaypalAccount.new(@client, response['paypal_accounts'])
48
- rescue Promisepay::UnprocessableEntity
49
- nil
50
- end
51
-
52
- # Set the disbursement account for a user.
53
- #
54
- # @see http://docs.promisepay.com/v2.2/docs/usersiddisbursement_account
55
- #
56
- # @return [Boolean]
57
- def disbursement_account(account_id)
58
- options = { account_id: account_id }
59
- JSON.parse(@client.post("users/#{send(:id)}/disbursement_account", options).body)
60
- true
61
- end
62
- end
63
- end
1
+
2
+ module Promisepay
3
+ # Manage Users
4
+ class User < BaseModel
5
+ # Lists items for a user on a marketplace.
6
+ #
7
+ # @see http://docs.promisepay.com/v2.2/docs/usersiditems
8
+ #
9
+ # @return [Array<Promisepay::Item>]
10
+ def items
11
+ response = JSON.parse(@client.get("users/#{send(:id)}/items").body)
12
+ users = response.key?('items') ? response['items'] : []
13
+ users.map { |attributes| Promisepay::Item.new(@client, attributes) }
14
+ end
15
+
16
+ # Gets Bank account for a user on a marketplace.
17
+ #
18
+ # @see http://docs.promisepay.com/v2.2/docs/usersidbank_accounts
19
+ #
20
+ # @return [Promisepay::BankAccount]
21
+ def bank_account
22
+ response = JSON.parse(@client.get("users/#{send(:id)}/bank_accounts").body)
23
+ Promisepay::BankAccount.new(@client, response['bank_accounts'])
24
+ rescue Promisepay::UnprocessableEntity
25
+ nil
26
+ end
27
+
28
+ # Gets Card account for a user on a marketplace.
29
+ #
30
+ # @see http://docs.promisepay.com/v2.2/docs/usersidcard_accounts
31
+ #
32
+ # @return [Promisepay::CardAccount]
33
+ def card_account
34
+ response = JSON.parse(@client.get("users/#{send(:id)}/card_accounts").body)
35
+ Promisepay::CardAccount.new(@client, response['card_accounts'])
36
+ rescue Promisepay::UnprocessableEntity
37
+ nil
38
+ end
39
+
40
+ # Gets PayPal account for a user on a marketplace.
41
+ #
42
+ # @see http://docs.promisepay.com/v2.2/docs/usersidpaypal_accounts
43
+ #
44
+ # @return [Promisepay::PaypalAccount]
45
+ def paypal_account
46
+ response = JSON.parse(@client.get("users/#{send(:id)}/paypal_accounts").body)
47
+ Promisepay::PaypalAccount.new(@client, response['paypal_accounts'])
48
+ rescue Promisepay::UnprocessableEntity
49
+ nil
50
+ end
51
+
52
+ # Set the disbursement account for a user.
53
+ #
54
+ # @see http://docs.promisepay.com/v2.2/docs/usersiddisbursement_account
55
+ #
56
+ # @return [Boolean]
57
+ def disbursement_account(account_id)
58
+ options = { account_id: account_id }
59
+ JSON.parse(@client.post("users/#{send(:id)}/disbursement_account", options).body)
60
+ true
61
+ end
62
+ end
63
+ end
@@ -1,5 +1,5 @@
1
- module Promisepay
2
- # Resource for the Accounts API
3
- class AccountResource < BaseResource
4
- end
5
- end
1
+ module Promisepay
2
+ # Resource for the Accounts API
3
+ class AccountResource < BaseResource
4
+ end
5
+ end
@@ -1,32 +1,32 @@
1
- module Promisepay
2
- # Resource for the BankAccounts API
3
- class BankAccountResource < AccountResource
4
- def model
5
- Promisepay::BankAccount
6
- end
7
-
8
- # Get bank account for a user on a marketplace.
9
- #
10
- # @see http://docs.promisepay.com/v2.2/docs/bank_accountsid-1
11
- #
12
- # @param id [String] Bank Account ID.
13
- #
14
- # @return [Promisepay::BankAccount]
15
- def find(id)
16
- response = JSON.parse(@client.get("bank_accounts/#{id}").body)
17
- Promisepay::BankAccount.new(@client, response['bank_accounts'])
18
- end
19
-
20
- # Create a bank account for a user on a marketplace.
21
- #
22
- # @see http://docs.promisepay.com/v2.2/docs/bank_accountsid-2
23
- #
24
- # @param attributes [Hash] Bank Account's attributes.
25
- #
26
- # @return [Promisepay::BankAccount]
27
- def create(attributes)
28
- response = JSON.parse(@client.post('bank_accounts', attributes).body)
29
- Promisepay::BankAccount.new(@client, response['bank_accounts'])
30
- end
31
- end
32
- end
1
+ module Promisepay
2
+ # Resource for the BankAccounts API
3
+ class BankAccountResource < AccountResource
4
+ def model
5
+ Promisepay::BankAccount
6
+ end
7
+
8
+ # Get bank account for a user on a marketplace.
9
+ #
10
+ # @see http://docs.promisepay.com/v2.2/docs/bank_accountsid-1
11
+ #
12
+ # @param id [String] Bank Account ID.
13
+ #
14
+ # @return [Promisepay::BankAccount]
15
+ def find(id)
16
+ response = JSON.parse(@client.get("bank_accounts/#{id}").body)
17
+ Promisepay::BankAccount.new(@client, response['bank_accounts'])
18
+ end
19
+
20
+ # Create a bank account for a user on a marketplace.
21
+ #
22
+ # @see http://docs.promisepay.com/v2.2/docs/bank_accountsid-2
23
+ #
24
+ # @param attributes [Hash] Bank Account's attributes.
25
+ #
26
+ # @return [Promisepay::BankAccount]
27
+ def create(attributes)
28
+ response = JSON.parse(@client.post('bank_accounts', attributes).body)
29
+ Promisepay::BankAccount.new(@client, response['bank_accounts'])
30
+ end
31
+ end
32
+ end
@@ -1,20 +1,20 @@
1
- module Promisepay
2
- # Base resource for all the other resources to inherit from
3
- class BaseResource
4
- def initialize(client)
5
- @client = client
6
- end
7
-
8
- def method_missing(name, *args, &block)
9
- if instance_methods.include?(model) && respond_to?(name)
10
- model.new(@client, id: args[0]).send(name, *args[1..-1])
11
- else
12
- super
13
- end
14
- end
15
-
16
- def respond_to?(name, include_all = false)
17
- super || model.new(@client).respond_to?(name, include_all)
18
- end
19
- end
20
- end
1
+ module Promisepay
2
+ # Base resource for all the other resources to inherit from
3
+ class BaseResource
4
+ def initialize(client)
5
+ @client = client
6
+ end
7
+
8
+ def method_missing(name, *args, &block)
9
+ if instance_methods.include?(model) && respond_to?(name)
10
+ model.new(@client, id: args[0]).send(name, *args[1..-1])
11
+ else
12
+ super
13
+ end
14
+ end
15
+
16
+ def respond_to?(name, include_all = false)
17
+ super || model.new(@client).respond_to?(name, include_all)
18
+ end
19
+ end
20
+ end
@@ -1,32 +1,32 @@
1
- module Promisepay
2
- # Resource for the CardAccounts API
3
- class CardAccountResource < AccountResource
4
- def model
5
- Promisepay::CardAccount
6
- end
7
-
8
- # Get card account for a user on a marketplace.
9
- #
10
- # @see http://docs.promisepay.com/v2.2/docs/card_accountsid-1
11
- #
12
- # @param id [String] Bank Account ID.
13
- #
14
- # @return [Promisepay::CardAccount]
15
- def find(id)
16
- response = JSON.parse(@client.get("card_accounts/#{id}").body)
17
- Promisepay::CardAccount.new(@client, response['card_accounts'])
18
- end
19
-
20
- # Create a card account for a user on a marketplace.
21
- #
22
- # @see http://docs.promisepay.com/v2.2/docs/card_accountsid-2
23
- #
24
- # @param attributes [Hash] Bank Account's attributes.
25
- #
26
- # @return [Promisepay::CardAccount]
27
- def create(attributes)
28
- response = JSON.parse(@client.post('card_accounts', attributes).body)
29
- Promisepay::CardAccount.new(@client, response['card_accounts'])
30
- end
31
- end
32
- end
1
+ module Promisepay
2
+ # Resource for the CardAccounts API
3
+ class CardAccountResource < AccountResource
4
+ def model
5
+ Promisepay::CardAccount
6
+ end
7
+
8
+ # Get card account for a user on a marketplace.
9
+ #
10
+ # @see http://docs.promisepay.com/v2.2/docs/card_accountsid-1
11
+ #
12
+ # @param id [String] Bank Account ID.
13
+ #
14
+ # @return [Promisepay::CardAccount]
15
+ def find(id)
16
+ response = JSON.parse(@client.get("card_accounts/#{id}").body)
17
+ Promisepay::CardAccount.new(@client, response['card_accounts'])
18
+ end
19
+
20
+ # Create a card account for a user on a marketplace.
21
+ #
22
+ # @see http://docs.promisepay.com/v2.2/docs/card_accountsid-2
23
+ #
24
+ # @param attributes [Hash] Bank Account's attributes.
25
+ #
26
+ # @return [Promisepay::CardAccount]
27
+ def create(attributes)
28
+ response = JSON.parse(@client.post('card_accounts', attributes).body)
29
+ Promisepay::CardAccount.new(@client, response['card_accounts'])
30
+ end
31
+ end
32
+ end
@@ -1,47 +1,47 @@
1
- module Promisepay
2
- # Resource for the Fees API
3
- class FeeResource < BaseResource
4
- def model
5
- Promisepay::Fee
6
- end
7
-
8
- # List all fees for a marketplace
9
- #
10
- # @see http://docs.promisepay.com/v2.2/docs/fees-1
11
- #
12
- # @param options [Hash] Optional options.
13
- # @option options [Integer] :limit Can ask for up to 200 fees. default: 10
14
- # @option options [Integer] :offset Pagination help. default: 0
15
- #
16
- # @return [Array<Promisepay::Fee>] List all fees for a marketplace.
17
- def find_all(options = {})
18
- response = JSON.parse(@client.get('fees', options).body)
19
- fees = response.key?('fees') ? response['fees'] : []
20
- fees.map { |attributes| Promisepay::Fee.new(@client, attributes) }
21
- end
22
-
23
- # Get a single fee for a marketplace
24
- #
25
- # @see http://docs.promisepay.com/v2.2/docs/feesid
26
- #
27
- # @param id [String] Marketplace Fee ID.
28
- #
29
- # @return [Promisepay::Fee]
30
- def find(id)
31
- response = JSON.parse(@client.get("fees/#{id}").body)
32
- Promisepay::Fee.new(@client, response['fees'])
33
- end
34
-
35
- # Create a fee for a marketplace
36
- #
37
- # @see http://docs.promisepay.com/v2.2/docs/fee_lists
38
- #
39
- # @param attributes [Hash] Item's attributes.
40
- #
41
- # @return [Promisepay::Item]
42
- def create(attributes)
43
- response = JSON.parse(@client.post('fees', attributes).body)
44
- Promisepay::Fee.new(@client, response['fees'])
45
- end
46
- end
47
- end
1
+ module Promisepay
2
+ # Resource for the Fees API
3
+ class FeeResource < BaseResource
4
+ def model
5
+ Promisepay::Fee
6
+ end
7
+
8
+ # List all fees for a marketplace
9
+ #
10
+ # @see http://docs.promisepay.com/v2.2/docs/fees-1
11
+ #
12
+ # @param options [Hash] Optional options.
13
+ # @option options [Integer] :limit Can ask for up to 200 fees. default: 10
14
+ # @option options [Integer] :offset Pagination help. default: 0
15
+ #
16
+ # @return [Array<Promisepay::Fee>] List all fees for a marketplace.
17
+ def find_all(options = {})
18
+ response = JSON.parse(@client.get('fees', options).body)
19
+ fees = response.key?('fees') ? response['fees'] : []
20
+ fees.map { |attributes| Promisepay::Fee.new(@client, attributes) }
21
+ end
22
+
23
+ # Get a single fee for a marketplace
24
+ #
25
+ # @see http://docs.promisepay.com/v2.2/docs/feesid
26
+ #
27
+ # @param id [String] Marketplace Fee ID.
28
+ #
29
+ # @return [Promisepay::Fee]
30
+ def find(id)
31
+ response = JSON.parse(@client.get("fees/#{id}").body)
32
+ Promisepay::Fee.new(@client, response['fees'])
33
+ end
34
+
35
+ # Create a fee for a marketplace
36
+ #
37
+ # @see http://docs.promisepay.com/v2.2/docs/fee_lists
38
+ #
39
+ # @param attributes [Hash] Item's attributes.
40
+ #
41
+ # @return [Promisepay::Item]
42
+ def create(attributes)
43
+ response = JSON.parse(@client.post('fees', attributes).body)
44
+ Promisepay::Fee.new(@client, response['fees'])
45
+ end
46
+ end
47
+ end