midas_client 0.2.4 → 0.2.13b
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/README.md +59 -0
- data/lib/midas_client/endpoints.rb +27 -7
- data/lib/midas_client/management.rb +44 -11
- data/lib/midas_client/query.rb +656 -215
- data/lib/midas_client/request.rb +2 -2
- data/lib/midas_client/subscription.rb +174 -8
- data/lib/midas_client/transaction.rb +72 -0
- data/lib/midas_client/util.rb +4 -0
- data/lib/midas_client/version.rb +1 -1
- data/lib/midas_client.rb +2 -2
- metadata +5 -7
- data/lib/midas_client/billet.rb +0 -7
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 090f3103f5ed5d6f9fd6a2578bdf671fe12879d23c225b8b90ebab7b6ffe74bf
|
4
|
+
data.tar.gz: 1a51aeb74e81ae0e9aaaee7aae55a6e6e2ea330632fa637b2333029fef0040c1
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 8cb670ccea8c260516745c97a108b9514632ef48e6876279aa54aef10a7110d2f1dbcae9917682d6334ef92e39f91c68f4be4e1636b7de28ba8b8a9a9c28db24
|
7
|
+
data.tar.gz: 94dc48e1d3237f4f115dc7bcb6ea11ee1747c8c3b3dfa35faaad99f7a9b8fe0e893a01ed038bdf410c59460072a694865dfd0b0b92116b0a02b05dc5f43c6ac7
|
data/README.md
CHANGED
@@ -44,6 +44,65 @@ Response
|
|
44
44
|
$ [17/05/2017 20:48:06.103][RESPONSE] {:result=>{:success=>true, :code=>"010", :message=>"O cartao jah foi armazenado anteriormente"}, :brand=>"MASTER", :cardToken=>"f887d732863eb3ef2e45c0bd8b57ed33"}
|
45
45
|
|
46
46
|
## Change Releases
|
47
|
+
VERSION - 0.2.13a - 2018/07/23
|
48
|
+
|
49
|
+
- changing MidasClient::Endpopoints - Sandbox endpoint has changed to
|
50
|
+
|
51
|
+
VERSION - 0.2.13 - 2018/07/12
|
52
|
+
|
53
|
+
- changing MidasClient::Endpopoints
|
54
|
+
|
55
|
+
VERSION - 0.2.12 - 2018/06/04
|
56
|
+
|
57
|
+
- Operation MidasClient::Subscription.invoice_external_payment(invoice_token, payment_date, payment_voucher) - associate an external payment to an invoice
|
58
|
+
- Removing operation MidasClient::Subscription.subscription_transactions(subscription_token)
|
59
|
+
|
60
|
+
VERSION - 0.2.11 - 2018/05/11
|
61
|
+
|
62
|
+
- Operation MidasClient::Management.list_pos - removal of param 'auth', now uses management_auth from env endpoints
|
63
|
+
- Operation MidasClient::Management.create_pos - removal of param 'auth', now uses management_auth from env endpoints
|
64
|
+
- Operation MidasClient::Management.pos_details - removal of param 'auth', now uses management_auth from env endpoints
|
65
|
+
|
66
|
+
VERSION - 0.2.10 - 2018/03/30
|
67
|
+
|
68
|
+
- Operation MidasClient::Subscription.invoice_cancel(token) - cancel a subscription's invoice.
|
69
|
+
|
70
|
+
|
71
|
+
VERSION - 0.2.9 - 2018/03/20
|
72
|
+
|
73
|
+
- Operation MidasClient::Subscription.renew(token, params) - renew a subscription increasing the number of invoices associated.
|
74
|
+
- Operation MidasClient::Transaction.create_billet(params) - create a billet to be payed.
|
75
|
+
- Operation MidasClient::Transaction.print_billet(token) - print a billet to be payed.
|
76
|
+
|
77
|
+
VERSION - 0.2.8 - 2018/02/06
|
78
|
+
|
79
|
+
- Operation MidasClient::Management.pos_details(midas_login) to return a POS' details like list of card brands allowed
|
80
|
+
- Operation MidasClient::Query.invoices_by_expiration_date(start_date, end_date, status) to return all invoices by expiration date
|
81
|
+
- Operation MidasClient::Query.invoices_by_payment_date(start_date, end_date, status) to return all invoices by payment date
|
82
|
+
|
83
|
+
VERSION - 0.2.7 - 2018/01/25
|
84
|
+
|
85
|
+
- Improving MidasClient::Subscription.create to create a manual subscription when de cardToken is not informed
|
86
|
+
- Implementing an invoice payment operation - MidasClient::Subscription.invoice_payment(invoice_token, transaction_token)
|
87
|
+
- Query to summarizes all card's transactions by date - MidasClient::Query.cards_summary_by_day(start_date, end_date)
|
88
|
+
- Query to summarizes all card's transactions by month - MidasClient::Query.cards_summary_by_month(start_month, start_year, end_month, end_year)
|
89
|
+
- Query to summarizes all billet's transactions by date - MidasClient::Query.cards_summary_by_day(start_date, end_date)
|
90
|
+
- Query to summarizes all billet's transactions by month - MidasClient::Query.cards_summary_by_month(start_month, start_year, end_month, end_year)
|
91
|
+
|
92
|
+
|
93
|
+
VERSION - 0.2.6 - 2017/11/17
|
94
|
+
|
95
|
+
- Query to list all transactions from an invoice's token - MidasClient::Subscription.invoice_transactions(invoiceToken)
|
96
|
+
- Query to list all transactions from a subscription's token - MidasClient::Subscription.subscription_transactions(subscriptionToken)
|
97
|
+
|
98
|
+
|
99
|
+
VERSION - 0.2.5 - 2017/11/11
|
100
|
+
|
101
|
+
- Query to list transactions from an user's document - MidasClient::Query.transactions_by_customer(document_type, document_number, status)
|
102
|
+
- Query to list subscriptions from an user's document - MidasClient::Query.subscriptions_by_customer(document_type, document_number, status)
|
103
|
+
- Query to list invoices from a Point of Sale - MidasClient::Query.invoices(start_date, end_date, status))
|
104
|
+
|
105
|
+
|
47
106
|
VERSION - 0.2.4 - 2017/11/01
|
48
107
|
|
49
108
|
- Refactoring QUERIES CONSTANT to QUERY
|
@@ -15,7 +15,7 @@ module MidasClient
|
|
15
15
|
end
|
16
16
|
|
17
17
|
def get_environment
|
18
|
-
get_env
|
18
|
+
self.get_env
|
19
19
|
end
|
20
20
|
|
21
21
|
# alias for get_environment
|
@@ -38,26 +38,36 @@ module MidasClient
|
|
38
38
|
store: '/creditcard',
|
39
39
|
synchronous_transaction: '/transaction/creditcard',
|
40
40
|
asynchronous_transaction: '/transaction/creditcard/dispatch',
|
41
|
+
asynchronous_debit_transaction: '/transaction/debitcard',
|
41
42
|
authorize: '/transaction/creditcard/authorize',
|
42
43
|
confirm: '/transaction/creditcard/{transactionToken}/capture',
|
43
44
|
cancel: '/transaction/creditcard/{transactionToken}/cancel',
|
44
45
|
refund: '/transaction/creditcard/{transactionToken}/refund',
|
45
46
|
query_by_transaction: '/transaction/{transactionToken}',
|
46
|
-
callback: '
|
47
|
+
callback: 'https://checkout.express/callback',
|
47
48
|
cards_by_user: '/customer/{documentType}/{documentNumber}/creditcard',
|
49
|
+
create_billet: '/transaction/bankbillet/',
|
50
|
+
print_billet: '/transaction/bankbillet/{transactionToken}'
|
48
51
|
}
|
49
52
|
|
50
53
|
SUBSCRIPTIONS = {
|
51
54
|
context: '/midas-core/v2',
|
52
55
|
by_token: '/subscription/{subscriptionToken}',
|
53
56
|
invoices: '/subscription/{subscriptionToken}/invoices',
|
57
|
+
invoices_renew: '/subscription/{subscriptionToken}/invoices',
|
54
58
|
invoice_transactions: '/invoice/{invoiceToken}/transactions',
|
55
|
-
|
59
|
+
invoice_payment: '/invoice/{invoiceToken}/pay',
|
60
|
+
invoice_external_payment:'invoice/{invoiceToken}/pay/external',
|
61
|
+
invoice_cancel: '/invoice/{invoiceToken}/cancel',
|
62
|
+
subscription_transactions: '/subscription/{subscriptionToken}/transactions',
|
63
|
+
create_manual: '/subscription/',
|
64
|
+
create_recurrent: '/subscription/creditcard',
|
56
65
|
cancel: '/subscription/{subscriptionToken}/cancel',
|
66
|
+
renew: '/subscription/{subscriptionToken}/renew',
|
57
67
|
update: '/subscription/{subscriptionToken}',
|
58
68
|
update_card: '/subscription/{subscriptionToken}/payment-method/creditcard',
|
59
69
|
update_invoice: '/invoice/{invoiceToken}',
|
60
|
-
callback: 'https://
|
70
|
+
callback: 'https://checkout.express/callback',
|
61
71
|
}
|
62
72
|
|
63
73
|
QUERIES = {
|
@@ -65,16 +75,26 @@ module MidasClient
|
|
65
75
|
by_external_id: '/transactions/external-id/{externalId}',
|
66
76
|
by_external_ids: '/transactions/external-ids',
|
67
77
|
by_transaction_tokens: '/transactions/transaction-tokens',
|
68
|
-
by_period: '/transactions?startDate={startDate}&endDate={endDate}&status={status}',
|
78
|
+
by_period: '/transactions?startDate={startDate}&endDate={endDate}&status={status}&type={type}',
|
69
79
|
subscriptions: "/subscriptions?status={status}",
|
80
|
+
invoices_by_expiration_date: '/invoices/expiration-date?startDate={startDate}&endDate={endDate}&status={status}',
|
81
|
+
invoices_by_payment_date: '/invoices/payment-date?startDate={startDate}&endDate={endDate}&status={status}',
|
70
82
|
creditcards: '/creditcards',
|
71
|
-
customers: '/customers'
|
83
|
+
customers: '/customers',
|
84
|
+
transactions_by_customer: '/transactions/customer?documentType={documentType}&documentNumber={documentNumber}&status={status}',
|
85
|
+
subscriptions_by_customer: '/subscriptions?documentType={documentType}&documentNumber={documentNumber}&status={status}',
|
86
|
+
|
87
|
+
cards_summary_by_day: '/summary/transactions/card/daily?startDate={startDate}&endDate={endDate}',
|
88
|
+
billets_summary_by_day: '/summary/transactions/bank/daily?startDate={startDate}&endDate={endDate}',
|
89
|
+
cards_summary_by_month: '/summary/transactions/card/monthly?startMonth={startMonth}&startYear={startYear}&endMonth={endMonth}&endYear={endYear}',
|
90
|
+
billets_summary_by_month: '/summary/transactions/bank/monthly?startMonth={startMonth}&startYear={startYear}&endMonth={endMonth}&endYear={endYear}',
|
72
91
|
}
|
73
92
|
|
74
93
|
MANAGEMENTS = {
|
75
94
|
context: '/midas-managment/v2',
|
76
95
|
create_pos: '/pointofsale',
|
77
|
-
list_pos: '/pointofsale'
|
96
|
+
list_pos: '/pointofsale',
|
97
|
+
pos_details: '/pointofsale/{midasLogin}'
|
78
98
|
}
|
79
99
|
|
80
100
|
end
|
@@ -1,11 +1,14 @@
|
|
1
1
|
module MidasClient
|
2
|
-
class Management
|
2
|
+
class Management
|
3
|
+
include Util
|
4
|
+
include RestClient
|
3
5
|
|
4
6
|
#= This method LIST all POS in MIDAS.
|
5
7
|
# This is a is synchronous operation, using method GET
|
6
8
|
#
|
7
9
|
# Params:
|
8
|
-
#
|
10
|
+
# auth: Base 64 authorization token
|
11
|
+
# env: Base 64 authorization token
|
9
12
|
#
|
10
13
|
#
|
11
14
|
# Response:
|
@@ -27,18 +30,22 @@ module MidasClient
|
|
27
30
|
# }]
|
28
31
|
# }
|
29
32
|
#
|
30
|
-
def self.list_pos()
|
33
|
+
def self.list_pos(environment='DEVELOPMENT')
|
31
34
|
# define o método de envio da requisição
|
32
35
|
method = :get
|
33
36
|
|
37
|
+
# define o ambiente de execução
|
38
|
+
_env = environment.upcase == 'PRODUCTION' ? EndPoints::PRODUCTION : EndPoints::DEVELOPMENT
|
39
|
+
|
34
40
|
# monta a URL de chamada da requisição
|
35
|
-
endpoint =
|
41
|
+
endpoint = _env[:url] + EndPoints::MANAGEMENTS[:context] + EndPoints::MANAGEMENTS[:list_pos]
|
36
42
|
|
37
43
|
# monta authorization base64 no header
|
38
|
-
headers={content_type: :json, accept: :json, authorization: get_env[:management_auth]}
|
44
|
+
#headers={content_type: :json, accept: :json, authorization: get_env[:management_auth]}
|
45
|
+
headers={content_type: :json, accept: :json, authorization: _env[:management_auth]}
|
39
46
|
|
40
47
|
# faz a chamada a plataforma de pagamento (MIDAS)
|
41
|
-
external_request(method, endpoint, {}, headers)
|
48
|
+
Request.external_request(method, endpoint, {}, headers)
|
42
49
|
|
43
50
|
end
|
44
51
|
|
@@ -46,6 +53,7 @@ module MidasClient
|
|
46
53
|
# This is a is synchronous operation, using method POST
|
47
54
|
#
|
48
55
|
# Params:
|
56
|
+
# auth: Base 64 authorization token
|
49
57
|
# code: string - Represents the name of the POS
|
50
58
|
# description: string - Description about the POS
|
51
59
|
#
|
@@ -58,22 +66,47 @@ module MidasClient
|
|
58
66
|
# },
|
59
67
|
# accessToken: "3Lpv2ecaeBa4Kffuf0CbWfF1j6I5eg=="
|
60
68
|
#
|
61
|
-
def self.create_pos(code, description)
|
69
|
+
def self.create_pos(code, description, environment= 'DEVELOPMENT')
|
62
70
|
# define o método de envio da requisição
|
63
71
|
method = :post
|
64
72
|
|
73
|
+
# define o ambiente de execução
|
74
|
+
_env = environment.upcase == 'PRODUCTION' ? EndPoints::PRODUCTION : EndPoints::DEVELOPMENT
|
75
|
+
|
65
76
|
# monta a URL de chamada da requisição
|
66
|
-
endpoint =
|
77
|
+
endpoint = _env[:url] + EndPoints::MANAGEMENTS[:context] + EndPoints::MANAGEMENTS[:create_pos]
|
67
78
|
|
68
79
|
# monta os parâmetros da requisição na url
|
69
80
|
params = { code: code, description: description}
|
70
81
|
|
71
82
|
# monta authorization base64 no header
|
72
|
-
headers={content_type: :json, accept: :json, authorization: get_env[:management_auth]}
|
83
|
+
#headers={content_type: :json, accept: :json, authorization: get_env[:management_auth]}
|
84
|
+
headers={content_type: :json, accept: :json, authorization: _env[:management_auth]}
|
73
85
|
|
74
86
|
# faz a chamada a plataforma de pagamento (MIDAS)
|
75
|
-
external_request(method, endpoint, params, headers)
|
87
|
+
Request.external_request(method, endpoint, params, headers)
|
88
|
+
|
89
|
+
end
|
90
|
+
|
91
|
+
# retorna os detalhes de um PDV
|
92
|
+
def self.pos_details(midas_login, environment= 'DEVELOPMENT')
|
93
|
+
# define o método de envio da requisição
|
94
|
+
method = :get
|
95
|
+
|
96
|
+
# define o ambiente de execução
|
97
|
+
_env = environment.upcase == 'PRODUCTION' ? EndPoints::PRODUCTION : EndPoints::DEVELOPMENT
|
76
98
|
|
99
|
+
# monta a URL de chamada da requisição
|
100
|
+
endpoint = _env[:url] + EndPoints::MANAGEMENTS[:context] + EndPoints::MANAGEMENTS[:pos_details].gsub("{midasLogin}", midas_login)
|
101
|
+
|
102
|
+
# monta os parâmetros da requisição na url
|
103
|
+
params = { }
|
104
|
+
|
105
|
+
# monta authorization base64 no header
|
106
|
+
headers={content_type: :json, accept: :json, authorization: _env[:management_auth]}
|
107
|
+
|
108
|
+
# faz a chamada a plataforma de pagamento (MIDAS)
|
109
|
+
Request.external_request(method, endpoint, params, headers)
|
77
110
|
end
|
78
111
|
end
|
79
|
-
end
|
112
|
+
end
|