ibanity 0.5 → 1.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/.rspec +1 -0
- data/.travis.yml +20 -0
- data/CHANGELOG.md +20 -0
- data/README.md +2 -0
- data/ibanity.gemspec +1 -2
- data/lib/ibanity.rb +68 -14
- data/lib/ibanity/api/base_resource.rb +45 -15
- data/lib/ibanity/api/consent/consent.rb +41 -0
- data/lib/ibanity/api/consent/processing_operation.rb +37 -0
- data/lib/ibanity/api/isabel_connect/access_token.rb +17 -0
- data/lib/ibanity/api/isabel_connect/account.rb +15 -0
- data/lib/ibanity/api/isabel_connect/account_report.rb +15 -0
- data/lib/ibanity/api/isabel_connect/balance.rb +11 -0
- data/lib/ibanity/api/isabel_connect/bulk_payment_initiation_request.rb +25 -0
- data/lib/ibanity/api/isabel_connect/intraday_transaction.rb +10 -0
- data/lib/ibanity/api/isabel_connect/refresh_token.rb +29 -0
- data/lib/ibanity/api/isabel_connect/transaction.rb +10 -0
- data/lib/ibanity/api/o_auth_resource.rb +19 -0
- data/lib/ibanity/api/ponto_connect/account.rb +15 -0
- data/lib/ibanity/api/ponto_connect/financial_institution.rb +15 -0
- data/lib/ibanity/api/ponto_connect/payment.rb +20 -0
- data/lib/ibanity/api/ponto_connect/sandbox/financial_institution_account.rb +21 -0
- data/lib/ibanity/api/ponto_connect/sandbox/financial_institution_transaction.rb +31 -0
- data/lib/ibanity/api/ponto_connect/synchronization.rb +15 -0
- data/lib/ibanity/api/ponto_connect/token.rb +53 -0
- data/lib/ibanity/api/ponto_connect/transaction.rb +15 -0
- data/lib/ibanity/api/ponto_connect/usage.rb +10 -0
- data/lib/ibanity/api/ponto_connect/user_info.rb +10 -0
- data/lib/ibanity/api/sandbox/financial_institution_account.rb +41 -0
- data/lib/ibanity/api/sandbox/financial_institution_holding.rb +45 -0
- data/lib/ibanity/api/sandbox/financial_institution_transaction.rb +45 -0
- data/lib/ibanity/api/sandbox/financial_institution_user.rb +32 -0
- data/lib/ibanity/api/xs2a/account.rb +33 -0
- data/lib/ibanity/api/xs2a/account_information_access_request.rb +27 -0
- data/lib/ibanity/api/xs2a/account_information_access_request_authorization.rb +21 -0
- data/lib/ibanity/api/xs2a/bulk_payment_initiation_request.rb +33 -0
- data/lib/ibanity/api/xs2a/customer.rb +10 -0
- data/lib/ibanity/api/xs2a/customer_access_token.rb +11 -0
- data/lib/ibanity/api/xs2a/financial_institution.rb +36 -0
- data/lib/ibanity/api/xs2a/holding.rb +21 -0
- data/lib/ibanity/api/xs2a/payment_initiation_request.rb +33 -0
- data/lib/ibanity/api/xs2a/payment_initiation_request_authorization.rb +21 -0
- data/lib/ibanity/api/xs2a/periodic_payment_initiation_request.rb +33 -0
- data/lib/ibanity/api/xs2a/synchronization.rb +17 -0
- data/lib/ibanity/api/xs2a/transaction.rb +21 -0
- data/lib/ibanity/client.rb +41 -30
- data/lib/ibanity/collection.rb +47 -0
- data/lib/ibanity/error.rb +9 -5
- data/lib/ibanity/http_signature.rb +4 -2
- data/lib/ibanity/util.rb +11 -4
- data/lib/ibanity/version.rb +1 -1
- data/spec/lib/ibanity/util_spec.rb +89 -0
- data/spec/spec_helper.rb +100 -0
- metadata +52 -30
- data/lib/ibanity/api/account.rb +0 -20
- data/lib/ibanity/api/account_information_access_request.rb +0 -17
- data/lib/ibanity/api/customer_access_token.rb +0 -9
- data/lib/ibanity/api/financial_institution.rb +0 -30
- data/lib/ibanity/api/financial_institution_account.rb +0 -39
- data/lib/ibanity/api/financial_institution_transaction.rb +0 -43
- data/lib/ibanity/api/financial_institution_user.rb +0 -30
- data/lib/ibanity/api/payment_initiation_request.rb +0 -24
- data/lib/ibanity/api/transaction.rb +0 -19
data/lib/ibanity/api/account.rb
DELETED
@@ -1,20 +0,0 @@
|
|
1
|
-
module Ibanity
|
2
|
-
class Account < Ibanity::BaseResource
|
3
|
-
def self.list(financial_institution_id: nil, customer_access_token:, **query_params)
|
4
|
-
uri = if financial_institution_id
|
5
|
-
Ibanity.api_schema["customer"]["financialInstitution"]["accounts"].sub("{financialInstitutionId}", financial_institution_id).sub("{accountId}", "")
|
6
|
-
else
|
7
|
-
Ibanity.api_schema["customer"]["accounts"].sub("{accountId}", "")
|
8
|
-
end
|
9
|
-
|
10
|
-
list_by_uri(uri: uri, query_params: query_params, customer_access_token: customer_access_token)
|
11
|
-
end
|
12
|
-
|
13
|
-
def self.find(id:, financial_institution_id:, customer_access_token:)
|
14
|
-
uri = Ibanity.api_schema["customer"]["financialInstitution"]["accounts"]
|
15
|
-
.sub("{financialInstitutionId}", financial_institution_id)
|
16
|
-
.sub("{accountId}", id)
|
17
|
-
find_by_uri(uri: uri, customer_access_token: customer_access_token)
|
18
|
-
end
|
19
|
-
end
|
20
|
-
end
|
@@ -1,17 +0,0 @@
|
|
1
|
-
module Ibanity
|
2
|
-
class AccountInformationAccessRequest < Ibanity::BaseResource
|
3
|
-
def self.create_for_financial_institution(financial_institution_id:, customer_access_token:, idempotency_key: nil, **attributes)
|
4
|
-
path = Ibanity.api_schema["customer"]["financialInstitution"]["accountInformationAccessRequests"]
|
5
|
-
.gsub("{financialInstitutionId}", financial_institution_id)
|
6
|
-
.gsub("{accountInformationAccessRequestId}", "")
|
7
|
-
uri = Ibanity.client.build_uri(path)
|
8
|
-
create_by_uri(
|
9
|
-
uri: uri,
|
10
|
-
resource_type: "accountInformationAccessRequest",
|
11
|
-
attributes: attributes,
|
12
|
-
customer_access_token: customer_access_token,
|
13
|
-
idempotency_key: idempotency_key
|
14
|
-
)
|
15
|
-
end
|
16
|
-
end
|
17
|
-
end
|
@@ -1,9 +0,0 @@
|
|
1
|
-
module Ibanity
|
2
|
-
class CustomerAccessToken < ::Ibanity::BaseResource
|
3
|
-
def self.create(idempotency_key: nil, **attributes)
|
4
|
-
path = ::Ibanity.api_schema["customerAccessTokens"]
|
5
|
-
uri = ::Ibanity.client.build_uri(path)
|
6
|
-
create_by_uri(uri: uri, resource_type: "customerAccessToken", attributes: attributes, idempotency_key: idempotency_key)
|
7
|
-
end
|
8
|
-
end
|
9
|
-
end
|
@@ -1,30 +0,0 @@
|
|
1
|
-
module Ibanity
|
2
|
-
class FinancialInstitution < Ibanity::BaseResource
|
3
|
-
def self.list(**query_params)
|
4
|
-
uri = Ibanity.api_schema["financialInstitutions"].sub("{financialInstitutionId}", "")
|
5
|
-
list_by_uri(uri: uri, query_params: query_params)
|
6
|
-
end
|
7
|
-
|
8
|
-
def self.find(id:)
|
9
|
-
uri = Ibanity.api_schema["financialInstitutions"].sub("{financialInstitutionId}", id)
|
10
|
-
find_by_uri(uri: uri)
|
11
|
-
end
|
12
|
-
|
13
|
-
def self.create(idempotency_key: nil, **attributes)
|
14
|
-
path = Ibanity.api_schema["sandbox"]["financialInstitutions"].gsub("{financialInstitutionId}", "")
|
15
|
-
uri = Ibanity.client.build_uri(path)
|
16
|
-
create_by_uri(uri: uri, resource_type: "financialInstitution", attributes: attributes, idempotency_key: idempotency_key)
|
17
|
-
end
|
18
|
-
|
19
|
-
def self.update(id:, idempotency_key: nil, **attributes)
|
20
|
-
path = Ibanity.api_schema["sandbox"]["financialInstitutions"].gsub("{financialInstitutionId}", id)
|
21
|
-
uri = Ibanity.client.build_uri(path)
|
22
|
-
update_by_uri(uri: uri, resource_type: "financialInstitution", attributes: attributes, idempotency_key: idempotency_key)
|
23
|
-
end
|
24
|
-
|
25
|
-
def self.delete(id:)
|
26
|
-
uri = Ibanity.api_schema["sandbox"]["financialInstitutions"].gsub("{financialInstitutionId}", id)
|
27
|
-
destroy_by_uri(uri: uri)
|
28
|
-
end
|
29
|
-
end
|
30
|
-
end
|
@@ -1,39 +0,0 @@
|
|
1
|
-
module Ibanity
|
2
|
-
class FinancialInstitutionAccount < Ibanity::BaseResource
|
3
|
-
def self.create(financial_institution_user_id:, financial_institution_id:, idempotency_key: nil, **attributes)
|
4
|
-
path = Ibanity.api_schema["sandbox"]["financialInstitution"]["financialInstitutionAccounts"]
|
5
|
-
.gsub("{financialInstitutionId}", financial_institution_id)
|
6
|
-
.gsub("{financialInstitutionUserId}", financial_institution_user_id)
|
7
|
-
.gsub("{financialInstitutionAccountId}", "")
|
8
|
-
uri = Ibanity.client.build_uri(path)
|
9
|
-
create_by_uri(uri: uri, resource_type: "financialInstitutionAccount", attributes: attributes, idempotency_key: idempotency_key)
|
10
|
-
end
|
11
|
-
|
12
|
-
def self.list(financial_institution_id:, financial_institution_user_id:, **query_params)
|
13
|
-
path = Ibanity.api_schema["sandbox"]["financialInstitution"]["financialInstitutionAccounts"]
|
14
|
-
.gsub("{financialInstitutionId}", financial_institution_id)
|
15
|
-
.gsub("{financialInstitutionUserId}", financial_institution_user_id)
|
16
|
-
.gsub("{financialInstitutionAccountId}", "")
|
17
|
-
uri = Ibanity.client.build_uri(path)
|
18
|
-
list_by_uri(uri: uri, query_params: query_params)
|
19
|
-
end
|
20
|
-
|
21
|
-
def self.find(id:, financial_institution_user_id:, financial_institution_id:)
|
22
|
-
path = Ibanity.api_schema["sandbox"]["financialInstitution"]["financialInstitutionAccounts"]
|
23
|
-
.gsub("{financialInstitutionId}", financial_institution_id)
|
24
|
-
.gsub("{financialInstitutionUserId}", financial_institution_user_id)
|
25
|
-
.gsub("{financialInstitutionAccountId}", id)
|
26
|
-
uri = Ibanity.client.build_uri(path)
|
27
|
-
find_by_uri(uri: uri)
|
28
|
-
end
|
29
|
-
|
30
|
-
def self.delete(id:, financial_institution_user_id:, financial_institution_id:)
|
31
|
-
path = Ibanity.api_schema["sandbox"]["financialInstitution"]["financialInstitutionAccounts"]
|
32
|
-
.gsub("{financialInstitutionId}", financial_institution_id)
|
33
|
-
.gsub("{financialInstitutionUserId}", financial_institution_user_id)
|
34
|
-
.gsub("{financialInstitutionAccountId}", id)
|
35
|
-
uri = Ibanity.client.build_uri(path)
|
36
|
-
destroy_by_uri(uri: uri)
|
37
|
-
end
|
38
|
-
end
|
39
|
-
end
|
@@ -1,43 +0,0 @@
|
|
1
|
-
module Ibanity
|
2
|
-
class FinancialInstitutionTransaction < Ibanity::BaseResource
|
3
|
-
def self.create(financial_institution_user_id:, financial_institution_id:, financial_institution_account_id:, idempotency_key: nil, **attributes)
|
4
|
-
path = Ibanity.api_schema["sandbox"]["financialInstitution"]["financialInstitutionAccount"]["financialInstitutionTransactions"]
|
5
|
-
.gsub("{financialInstitutionId}", financial_institution_id)
|
6
|
-
.gsub("{financialInstitutionUserId}", financial_institution_user_id)
|
7
|
-
.gsub("{financialInstitutionAccountId}", financial_institution_account_id)
|
8
|
-
.gsub("{financialInstitutionTransactionId}", "")
|
9
|
-
uri = Ibanity.client.build_uri(path)
|
10
|
-
create_by_uri(uri: uri, resource_type: "financialInstitutionTransaction", attributes: attributes, idempotency_key: idempotency_key)
|
11
|
-
end
|
12
|
-
|
13
|
-
def self.list(financial_institution_user_id:, financial_institution_id:, financial_institution_account_id:, **query_params)
|
14
|
-
path = Ibanity.api_schema["sandbox"]["financialInstitution"]["financialInstitutionAccount"]["financialInstitutionTransactions"]
|
15
|
-
.gsub("{financialInstitutionId}", financial_institution_id)
|
16
|
-
.gsub("{financialInstitutionUserId}", financial_institution_user_id)
|
17
|
-
.gsub("{financialInstitutionAccountId}", financial_institution_account_id)
|
18
|
-
.gsub("{financialInstitutionTransactionId}", "")
|
19
|
-
uri = Ibanity.client.build_uri(path)
|
20
|
-
list_by_uri(uri: uri, query_params: query_params)
|
21
|
-
end
|
22
|
-
|
23
|
-
def self.find(id:, financial_institution_user_id:, financial_institution_id:, financial_institution_account_id:)
|
24
|
-
path = Ibanity.api_schema["sandbox"]["financialInstitution"]["financialInstitutionAccount"]["financialInstitutionTransactions"]
|
25
|
-
.gsub("{financialInstitutionId}", financial_institution_id)
|
26
|
-
.gsub("{financialInstitutionUserId}", financial_institution_user_id)
|
27
|
-
.gsub("{financialInstitutionAccountId}", financial_institution_account_id)
|
28
|
-
.gsub("{financialInstitutionTransactionId}", id)
|
29
|
-
uri = Ibanity.client.build_uri(path)
|
30
|
-
find_by_uri(uri: uri)
|
31
|
-
end
|
32
|
-
|
33
|
-
def self.delete(id:, financial_institution_user_id:, financial_institution_id:, financial_institution_account_id:)
|
34
|
-
path = Ibanity.api_schema["sandbox"]["financialInstitution"]["financialInstitutionAccount"]["financialInstitutionTransactions"]
|
35
|
-
.gsub("{financialInstitutionId}", financial_institution_id)
|
36
|
-
.gsub("{financialInstitutionUserId}", financial_institution_user_id)
|
37
|
-
.gsub("{financialInstitutionAccountId}", financial_institution_account_id)
|
38
|
-
.gsub("{financialInstitutionTransactionId}", id)
|
39
|
-
uri = Ibanity.client.build_uri(path)
|
40
|
-
destroy_by_uri(uri: uri)
|
41
|
-
end
|
42
|
-
end
|
43
|
-
end
|
@@ -1,30 +0,0 @@
|
|
1
|
-
module Ibanity
|
2
|
-
class FinancialInstitutionUser < Ibanity::BaseResource
|
3
|
-
def self.create(idempotency_key: nil, **attributes)
|
4
|
-
path = Ibanity.api_schema["sandbox"]["financialInstitutionUsers"].gsub("{financialInstitutionUserId}", "")
|
5
|
-
uri = Ibanity.client.build_uri(path)
|
6
|
-
create_by_uri(uri: uri, resource_type: "financialInstitutionUser", attributes: attributes, idempotency_key: idempotency_key)
|
7
|
-
end
|
8
|
-
|
9
|
-
def self.list(**query_params)
|
10
|
-
uri = Ibanity.api_schema["sandbox"]["financialInstitutionUsers"].sub("{financialInstitutionUserId}", "")
|
11
|
-
list_by_uri(uri: uri, query_params: query_params)
|
12
|
-
end
|
13
|
-
|
14
|
-
def self.find(id:)
|
15
|
-
uri = Ibanity.api_schema["sandbox"]["financialInstitutionUsers"].sub("{financialInstitutionUserId}", id)
|
16
|
-
find_by_uri(uri: uri)
|
17
|
-
end
|
18
|
-
|
19
|
-
def self.update(id:, idempotency_key: nil, **attributes)
|
20
|
-
path = Ibanity.api_schema["sandbox"]["financialInstitutionUsers"].sub("{financialInstitutionUserId}", id)
|
21
|
-
uri = Ibanity.client.build_uri(path)
|
22
|
-
update_by_uri(uri: uri, resource_type: "financialInstitutionUser", attributes: attributes, idempotency_key: idempotency_key)
|
23
|
-
end
|
24
|
-
|
25
|
-
def self.delete(id:)
|
26
|
-
uri = Ibanity.api_schema["sandbox"]["financialInstitutionUsers"].sub("{financialInstitutionUserId}", id)
|
27
|
-
destroy_by_uri(uri: uri)
|
28
|
-
end
|
29
|
-
end
|
30
|
-
end
|
@@ -1,24 +0,0 @@
|
|
1
|
-
module Ibanity
|
2
|
-
class PaymentInitiationRequest < Ibanity::BaseResource
|
3
|
-
def self.create_for_financial_institution(financial_institution_id:, customer_access_token:, idempotency_key: nil, **attributes)
|
4
|
-
path = Ibanity.api_schema["customer"]["financialInstitution"]["paymentInitiationRequests"]
|
5
|
-
.gsub("{financialInstitutionId}", financial_institution_id)
|
6
|
-
.sub("{paymentInitiationRequestId}", "")
|
7
|
-
uri = Ibanity.client.build_uri(path)
|
8
|
-
create_by_uri(
|
9
|
-
uri: uri,
|
10
|
-
resource_type: "accountInformationAccessRequest",
|
11
|
-
attributes: attributes,
|
12
|
-
customer_access_token: customer_access_token,
|
13
|
-
idempotency_key: idempotency_key
|
14
|
-
)
|
15
|
-
end
|
16
|
-
|
17
|
-
def self.find(id:, financial_institution_id:, customer_access_token:)
|
18
|
-
uri = Ibanity.api_schema["customer"]["financialInstitution"]["paymentInitiationRequests"]
|
19
|
-
.gsub("{financialInstitutionId}", financial_institution_id)
|
20
|
-
.sub("{paymentInitiationRequestId}", id)
|
21
|
-
find_by_uri(uri: uri, customer_access_token: customer_access_token)
|
22
|
-
end
|
23
|
-
end
|
24
|
-
end
|
@@ -1,19 +0,0 @@
|
|
1
|
-
module Ibanity
|
2
|
-
class Transaction < Ibanity::BaseResource
|
3
|
-
def self.list(financial_institution_id:, account_id:, customer_access_token:, **query_params)
|
4
|
-
uri = Ibanity.api_schema["customer"]["financialInstitution"]["transactions"]
|
5
|
-
.sub("{financialInstitutionId}", financial_institution_id)
|
6
|
-
.sub("{accountId}", account_id)
|
7
|
-
.sub("{transactionId}", "")
|
8
|
-
list_by_uri(uri: uri, query_params: query_params, customer_access_token: customer_access_token)
|
9
|
-
end
|
10
|
-
|
11
|
-
def self.find(id:, financial_institution_id:, account_id:, customer_access_token:)
|
12
|
-
uri = Ibanity.api_schema["customer"]["financialInstitution"]["transactions"]
|
13
|
-
.sub("{financialInstitutionId}", financial_institution_id)
|
14
|
-
.sub("{accountId}", account_id)
|
15
|
-
.sub("{transactionId}", id)
|
16
|
-
find_by_uri(uri: uri, customer_access_token: customer_access_token)
|
17
|
-
end
|
18
|
-
end
|
19
|
-
end
|