genesis_ruby 0.2.3 → 0.2.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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +78 -0
- data/Gemfile.lock +14 -14
- data/README.md +78 -0
- data/VERSION +1 -1
- data/lib/genesis_ruby/api/constants/currencies/iso4217.rb +6 -0
- data/lib/genesis_ruby/api/constants/non_financial/kyc/document_types.rb +49 -0
- data/lib/genesis_ruby/api/constants/non_financial/kyc/genders.rb +22 -0
- data/lib/genesis_ruby/api/constants/transactions/parameters/african_mobile_operators.rb +37 -0
- data/lib/genesis_ruby/api/constants/transactions/parameters/customer_identification/customer_identification_owner.rb +24 -0
- data/lib/genesis_ruby/api/constants/transactions/parameters/customer_identification/customer_identification_subtype.rb +24 -0
- data/lib/genesis_ruby/api/constants/transactions/parameters/customer_identification/customer_identification_type.rb +63 -0
- data/lib/genesis_ruby/api/constants/transactions/parameters/digital_asset_types.rb +31 -0
- data/lib/genesis_ruby/api/constants/transactions/parameters/non_financial/externally_processed.rb +22 -0
- data/lib/genesis_ruby/api/constants/transactions/parameters/non_financial/processing_type.rb +22 -0
- data/lib/genesis_ruby/api/constants/transactions/parameters/non_financial/sca_exemptions.rb +25 -0
- data/lib/genesis_ruby/api/constants/transactions/parameters/online_banking/iframe_targets.rb +26 -0
- data/lib/genesis_ruby/api/constants/transactions/parameters/purpose_of_payment.rb +136 -0
- data/lib/genesis_ruby/api/constants/transactions/parameters/source_of_funds.rb +34 -0
- data/lib/genesis_ruby/api/mixins/requests/digital_asset_type_attributes.rb +26 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/african_mobile_attributes.rb +30 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/beneficiary_attributes.rb +38 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/cards/tokenization_params_attributes.rb +36 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/customer_account_attributes.rb +21 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/customer_identification_attributes.rb +82 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/gift_cards_attributes.rb +26 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/online_banking_payments/payer_attributes.rb +65 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/preauthorization_attributes.rb +25 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/purpose_of_payment_attributes.rb +29 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/source_of_funds_attributes.rb +38 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/travel_data/airline_itinerary_attributes.rb +1 -1
- data/lib/genesis_ruby/api/mixins/requests/non_financial/fx/id_attributes.rb +28 -0
- data/lib/genesis_ruby/api/mixins/requests/non_financial/fx/tier_id_attributes.rb +28 -0
- data/lib/genesis_ruby/api/mixins/requests/non_financial/kyc/customer_information_attributes.rb +62 -0
- data/lib/genesis_ruby/api/mixins/requests/non_financial/mode_attributes.rb +24 -0
- data/lib/genesis_ruby/api/mixins/requests/non_financial/tokenization/card_data_attributes.rb +62 -0
- data/lib/genesis_ruby/api/mixins/requests/non_financial/tokenization/token_attributes.rb +23 -0
- data/lib/genesis_ruby/api/mixins/requests/non_financial/tokenization/tokenization_attributes.rb +51 -0
- data/lib/genesis_ruby/api/request.rb +7 -0
- data/lib/genesis_ruby/api/requests/base/consumer.rb +24 -0
- data/lib/genesis_ruby/api/requests/base/financial.rb +10 -1
- data/lib/genesis_ruby/api/requests/base/financials/credit_card.rb +9 -9
- data/lib/genesis_ruby/api/requests/base/financials/south_american_payments.rb +11 -14
- data/lib/genesis_ruby/api/requests/base/non_financial/kyc/base.rb +33 -0
- data/lib/genesis_ruby/api/requests/base/reference.rb +3 -3
- data/lib/genesis_ruby/api/requests/financial/Preauthorizations/incremental_authorize.rb +24 -0
- data/lib/genesis_ruby/api/requests/financial/cards/authorize.rb +5 -1
- data/lib/genesis_ruby/api/requests/financial/cards/authorize3d.rb +5 -1
- data/lib/genesis_ruby/api/requests/financial/cards/bancontact.rb +8 -9
- data/lib/genesis_ruby/api/requests/financial/cards/credit.rb +39 -0
- data/lib/genesis_ruby/api/requests/financial/cards/payout.rb +72 -0
- data/lib/genesis_ruby/api/requests/financial/cards/sale.rb +3 -1
- data/lib/genesis_ruby/api/requests/financial/cards/sale3d.rb +3 -1
- data/lib/genesis_ruby/api/requests/financial/cash_payments/cash.rb +13 -14
- data/lib/genesis_ruby/api/requests/financial/cash_payments/pix.rb +23 -25
- data/lib/genesis_ruby/api/requests/financial/crypto/bit_pay/payout.rb +52 -0
- data/lib/genesis_ruby/api/requests/financial/crypto/bit_pay/refund.rb +36 -0
- data/lib/genesis_ruby/api/requests/financial/crypto/bit_pay/sale.rb +55 -0
- data/lib/genesis_ruby/api/requests/financial/gift_cards/fashioncheque.rb +47 -0
- data/lib/genesis_ruby/api/requests/financial/gift_cards/intersolve.rb +46 -0
- data/lib/genesis_ruby/api/requests/financial/gift_cards/tcs.rb +47 -0
- data/lib/genesis_ruby/api/requests/financial/mobile/african_mobile_sale.rb +81 -0
- data/lib/genesis_ruby/api/requests/financial/mobile/apple_pay.rb +18 -20
- data/lib/genesis_ruby/api/requests/financial/mobile/google_pay.rb +20 -24
- data/lib/genesis_ruby/api/requests/financial/mobile/russian_mobile_sale.rb +55 -0
- data/lib/genesis_ruby/api/requests/financial/online_banking_payments/banco_do_brasil.rb +11 -14
- data/lib/genesis_ruby/api/requests/financial/online_banking_payments/eps.rb +9 -10
- data/lib/genesis_ruby/api/requests/financial/online_banking_payments/idebit/pay_in.rb +11 -18
- data/lib/genesis_ruby/api/requests/financial/online_banking_payments/insta_debit/pay_in.rb +61 -0
- data/lib/genesis_ruby/api/requests/financial/online_banking_payments/insta_debit/pay_out.rb +24 -0
- data/lib/genesis_ruby/api/requests/financial/online_banking_payments/multibanco.rb +48 -0
- data/lib/genesis_ruby/api/requests/financial/online_banking_payments/my_bank.rb +47 -0
- data/lib/genesis_ruby/api/requests/financial/online_banking_payments/online_banking/pay_in.rb +17 -18
- data/lib/genesis_ruby/api/requests/financial/online_banking_payments/online_banking/pay_out.rb +33 -38
- data/lib/genesis_ruby/api/requests/financial/online_banking_payments/pay_u.rb +61 -0
- data/lib/genesis_ruby/api/requests/financial/online_banking_payments/post_finance.rb +53 -0
- data/lib/genesis_ruby/api/requests/financial/online_banking_payments/safety_pay.rb +57 -0
- data/lib/genesis_ruby/api/requests/financial/online_banking_payments/sofort.rb +63 -0
- data/lib/genesis_ruby/api/requests/financial/online_banking_payments/trustly_sale.rb +75 -0
- data/lib/genesis_ruby/api/requests/financial/online_banking_payments/upi.rb +54 -0
- data/lib/genesis_ruby/api/requests/financial/online_banking_payments/wechat.rb +11 -14
- data/lib/genesis_ruby/api/requests/financial/sdd/sale.rb +13 -17
- data/lib/genesis_ruby/api/requests/financial/void.rb +12 -5
- data/lib/genesis_ruby/api/requests/financial/vouchers/neosurf.rb +61 -0
- data/lib/genesis_ruby/api/requests/financial/wallets/alipay.rb +10 -13
- data/lib/genesis_ruby/api/requests/financial/wallets/pay_pal.rb +18 -20
- data/lib/genesis_ruby/api/requests/non_financial/consumers/create.rb +44 -0
- data/lib/genesis_ruby/api/requests/non_financial/consumers/disable.rb +40 -0
- data/lib/genesis_ruby/api/requests/non_financial/consumers/enable.rb +40 -0
- data/lib/genesis_ruby/api/requests/non_financial/consumers/get_cards.rb +40 -0
- data/lib/genesis_ruby/api/requests/non_financial/consumers/retrieve.rb +40 -0
- data/lib/genesis_ruby/api/requests/non_financial/consumers/update.rb +45 -0
- data/lib/genesis_ruby/api/requests/non_financial/fraud/chargeback/date_range.rb +82 -0
- data/lib/genesis_ruby/api/requests/non_financial/fraud/chargeback/transaction.rb +52 -0
- data/lib/genesis_ruby/api/requests/non_financial/fraud/reports/date_range.rb +108 -0
- data/lib/genesis_ruby/api/requests/non_financial/fraud/reports/transaction.rb +52 -0
- data/lib/genesis_ruby/api/requests/non_financial/fraud/retrieval/date_range.rb +81 -0
- data/lib/genesis_ruby/api/requests/non_financial/fraud/retrieval/transaction.rb +52 -0
- data/lib/genesis_ruby/api/requests/non_financial/fx/get_rate.rb +55 -0
- data/lib/genesis_ruby/api/requests/non_financial/fx/get_rates.rb +53 -0
- data/lib/genesis_ruby/api/requests/non_financial/fx/get_tier.rb +53 -0
- data/lib/genesis_ruby/api/requests/non_financial/fx/get_tiers.rb +35 -0
- data/lib/genesis_ruby/api/requests/non_financial/fx/search_rate.rb +61 -0
- data/lib/genesis_ruby/api/requests/non_financial/kyc/consumer_registration/create.rb +99 -0
- data/lib/genesis_ruby/api/requests/non_financial/processed_transactions/date_range.rb +68 -0
- data/lib/genesis_ruby/api/requests/non_financial/processed_transactions/post_date_range.rb +72 -0
- data/lib/genesis_ruby/api/requests/non_financial/processed_transactions/transaction.rb +48 -0
- data/lib/genesis_ruby/api/requests/non_financial/sca/checker.rb +77 -0
- data/lib/genesis_ruby/api/requests/non_financial/tokenization/cryptogram.rb +46 -0
- data/lib/genesis_ruby/api/requests/non_financial/tokenization/delete_token.rb +43 -0
- data/lib/genesis_ruby/api/requests/non_financial/tokenization/detokenize.rb +43 -0
- data/lib/genesis_ruby/api/requests/non_financial/tokenization/get_card.rb +43 -0
- data/lib/genesis_ruby/api/requests/non_financial/tokenization/tokenize.rb +45 -0
- data/lib/genesis_ruby/api/requests/non_financial/tokenization/update_token.rb +45 -0
- data/lib/genesis_ruby/api/requests/non_financial/tokenization/validate_token.rb +43 -0
- data/lib/genesis_ruby/api/requests/wpf/create.rb +3 -1
- data/lib/genesis_ruby/configuration.rb +4 -0
- data/lib/genesis_ruby/dependencies.rb +2 -0
- data/lib/genesis_ruby/utils/country.rb +272 -0
- data/lib/genesis_ruby/utils/formatters/response/formats/timestamp.rb +1 -1
- data/lib/genesis_ruby/utils/money/conversions/amount_to_exponent.rb +1 -4
- data/lib/genesis_ruby/version.rb +1 -1
- metadata +87 -2
@@ -0,0 +1,43 @@
|
|
1
|
+
module GenesisRuby
|
2
|
+
module Api
|
3
|
+
module Requests
|
4
|
+
module NonFinancial
|
5
|
+
module Tokenization
|
6
|
+
# Exchanges the token with the tokenized cardholder data
|
7
|
+
class Detokenize < Base::Versioned
|
8
|
+
|
9
|
+
include Api::Mixins::Requests::NonFinancial::Tokenization::TokenAttributes
|
10
|
+
include Api::Mixins::Requests::NonFinancial::Tokenization::TokenizationAttributes
|
11
|
+
|
12
|
+
def initialize(configuration, builder_interface = Builder::XML)
|
13
|
+
super configuration, builder_interface
|
14
|
+
|
15
|
+
self.request_path = 'detokenize'
|
16
|
+
end
|
17
|
+
|
18
|
+
protected
|
19
|
+
|
20
|
+
# Detokenize field validations
|
21
|
+
def init_field_validations
|
22
|
+
super
|
23
|
+
|
24
|
+
required_fields.push *tokenization_required_fields, *%i[token]
|
25
|
+
end
|
26
|
+
|
27
|
+
# API Request structure
|
28
|
+
def request_structure
|
29
|
+
{
|
30
|
+
detokenize_request: tokenization_attributes_structure.merge(
|
31
|
+
{
|
32
|
+
token: token
|
33
|
+
}
|
34
|
+
)
|
35
|
+
}
|
36
|
+
end
|
37
|
+
|
38
|
+
end
|
39
|
+
end
|
40
|
+
end
|
41
|
+
end
|
42
|
+
end
|
43
|
+
end
|
@@ -0,0 +1,43 @@
|
|
1
|
+
module GenesisRuby
|
2
|
+
module Api
|
3
|
+
module Requests
|
4
|
+
module NonFinancial
|
5
|
+
module Tokenization
|
6
|
+
# Exchanges the token with the tokenized masked cardholder data
|
7
|
+
class GetCard < Base::Versioned
|
8
|
+
|
9
|
+
include Api::Mixins::Requests::NonFinancial::Tokenization::TokenAttributes
|
10
|
+
include Api::Mixins::Requests::NonFinancial::Tokenization::TokenizationAttributes
|
11
|
+
|
12
|
+
def initialize(configuration, builder_interface = Builder::XML)
|
13
|
+
super configuration, builder_interface
|
14
|
+
|
15
|
+
self.request_path = 'get_card'
|
16
|
+
end
|
17
|
+
|
18
|
+
protected
|
19
|
+
|
20
|
+
# Get Card field validations
|
21
|
+
def init_field_validations
|
22
|
+
super
|
23
|
+
|
24
|
+
required_fields.push *tokenization_required_fields, *%i[token]
|
25
|
+
end
|
26
|
+
|
27
|
+
# API Request structure
|
28
|
+
def request_structure
|
29
|
+
{
|
30
|
+
get_card_request: tokenization_attributes_structure.merge(
|
31
|
+
{
|
32
|
+
token: token
|
33
|
+
}
|
34
|
+
)
|
35
|
+
}
|
36
|
+
end
|
37
|
+
|
38
|
+
end
|
39
|
+
end
|
40
|
+
end
|
41
|
+
end
|
42
|
+
end
|
43
|
+
end
|
@@ -0,0 +1,45 @@
|
|
1
|
+
module GenesisRuby
|
2
|
+
module Api
|
3
|
+
module Requests
|
4
|
+
module NonFinancial
|
5
|
+
module Tokenization
|
6
|
+
# Tokenizes cardholder data and issues a corresponding token. Merchants should take
|
7
|
+
# care to save the plain-text token value in their system as once issued it is not possible
|
8
|
+
# to obtain it again.
|
9
|
+
class Tokenize < Base::Versioned
|
10
|
+
|
11
|
+
include Api::Mixins::Requests::NonFinancial::Tokenization::CardDataAttributes
|
12
|
+
include Api::Mixins::Requests::NonFinancial::Tokenization::TokenizationAttributes
|
13
|
+
|
14
|
+
def initialize(configuration, builder_interface = Builder::XML)
|
15
|
+
super configuration, builder_interface
|
16
|
+
|
17
|
+
self.request_path = 'tokenize'
|
18
|
+
end
|
19
|
+
|
20
|
+
protected
|
21
|
+
|
22
|
+
# Tokenize field validations
|
23
|
+
def init_field_validations
|
24
|
+
super
|
25
|
+
|
26
|
+
required_fields.push *tokenization_required_fields, *%i[card_number]
|
27
|
+
end
|
28
|
+
|
29
|
+
# API Request structure
|
30
|
+
def request_structure
|
31
|
+
{
|
32
|
+
tokenize_request: tokenization_attributes_structure.merge(
|
33
|
+
{
|
34
|
+
card_data: card_data_attributes_structure
|
35
|
+
}
|
36
|
+
)
|
37
|
+
}
|
38
|
+
end
|
39
|
+
|
40
|
+
end
|
41
|
+
end
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
45
|
+
end
|
@@ -0,0 +1,45 @@
|
|
1
|
+
module GenesisRuby
|
2
|
+
module Api
|
3
|
+
module Requests
|
4
|
+
module NonFinancial
|
5
|
+
module Tokenization
|
6
|
+
# Updates the tokenized data corresponding to an existing valid token
|
7
|
+
class UpdateToken < Base::Versioned
|
8
|
+
|
9
|
+
include Api::Mixins::Requests::NonFinancial::Tokenization::CardDataAttributes
|
10
|
+
include Api::Mixins::Requests::NonFinancial::Tokenization::TokenAttributes
|
11
|
+
include Api::Mixins::Requests::NonFinancial::Tokenization::TokenizationAttributes
|
12
|
+
|
13
|
+
def initialize(configuration, builder_interface = Builder::XML)
|
14
|
+
super configuration, builder_interface
|
15
|
+
|
16
|
+
self.request_path = 'update_token'
|
17
|
+
end
|
18
|
+
|
19
|
+
protected
|
20
|
+
|
21
|
+
# Update Token field validations
|
22
|
+
def init_field_validations
|
23
|
+
super
|
24
|
+
|
25
|
+
required_fields.push *tokenization_required_fields, *%i[card_number token]
|
26
|
+
end
|
27
|
+
|
28
|
+
# API Request structure
|
29
|
+
def request_structure
|
30
|
+
{
|
31
|
+
update_token_request: tokenization_attributes_structure.merge(
|
32
|
+
{
|
33
|
+
token: token,
|
34
|
+
card_data: card_data_attributes_structure
|
35
|
+
}
|
36
|
+
)
|
37
|
+
}
|
38
|
+
end
|
39
|
+
|
40
|
+
end
|
41
|
+
end
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
45
|
+
end
|
@@ -0,0 +1,43 @@
|
|
1
|
+
module GenesisRuby
|
2
|
+
module Api
|
3
|
+
module Requests
|
4
|
+
module NonFinancial
|
5
|
+
module Tokenization
|
6
|
+
# Validates if a token is active, owned by a merchant, etc.
|
7
|
+
class ValidateToken < Base::Versioned
|
8
|
+
|
9
|
+
include Api::Mixins::Requests::NonFinancial::Tokenization::TokenAttributes
|
10
|
+
include Api::Mixins::Requests::NonFinancial::Tokenization::TokenizationAttributes
|
11
|
+
|
12
|
+
def initialize(configuration, builder_interface = Builder::XML)
|
13
|
+
super configuration, builder_interface
|
14
|
+
|
15
|
+
self.request_path = 'validate_token'
|
16
|
+
end
|
17
|
+
|
18
|
+
protected
|
19
|
+
|
20
|
+
# Validate Token field validations
|
21
|
+
def init_field_validations
|
22
|
+
super
|
23
|
+
|
24
|
+
required_fields.push *tokenization_required_fields, *%i[token]
|
25
|
+
end
|
26
|
+
|
27
|
+
# API Request structure
|
28
|
+
def request_structure
|
29
|
+
{
|
30
|
+
validate_token_request: tokenization_attributes_structure.merge(
|
31
|
+
{
|
32
|
+
token: token
|
33
|
+
}
|
34
|
+
)
|
35
|
+
}
|
36
|
+
end
|
37
|
+
|
38
|
+
end
|
39
|
+
end
|
40
|
+
end
|
41
|
+
end
|
42
|
+
end
|
43
|
+
end
|
@@ -11,6 +11,7 @@ module GenesisRuby
|
|
11
11
|
class Create < Request # rubocop:disable Metrics/ClassLength
|
12
12
|
|
13
13
|
include Mixins::Requests::AddressInfoAttributes
|
14
|
+
include Mixins::Requests::DigitalAssetTypeAttributes
|
14
15
|
include Mixins::Requests::Financial::AsyncAttributes
|
15
16
|
include Mixins::Requests::Financial::Business::BusinessAttributes
|
16
17
|
include Mixins::Requests::Financial::Cards::AccountOwnerAttributes
|
@@ -171,7 +172,8 @@ module GenesisRuby
|
|
171
172
|
account_owner: account_owner_attributes_structure,
|
172
173
|
pay_later: pay_later,
|
173
174
|
reminders: pay_later ? reminders_structure : [],
|
174
|
-
funding: funding_attributes_structure
|
175
|
+
funding: funding_attributes_structure,
|
176
|
+
digital_asset_type: digital_asset_type
|
175
177
|
}
|
176
178
|
}
|
177
179
|
end
|
@@ -196,6 +196,10 @@ module GenesisRuby
|
|
196
196
|
api_service: {
|
197
197
|
GenesisRuby::Api::Constants::Environments::PRODUCTION => 'prod.api.',
|
198
198
|
GenesisRuby::Api::Constants::Environments::STAGING => 'staging.api.'
|
199
|
+
},
|
200
|
+
kyc_service: {
|
201
|
+
GenesisRuby::Api::Constants::Environments::PRODUCTION => 'prod.kyc.',
|
202
|
+
GenesisRuby::Api::Constants::Environments::STAGING => 'staging.kyc.'
|
199
203
|
}
|
200
204
|
}
|
201
205
|
end
|
@@ -21,9 +21,11 @@ require 'genesis_ruby/api/requests/base/financials/credit_card'
|
|
21
21
|
require 'genesis_ruby/api/requests/base/financials/south_american_payments'
|
22
22
|
require 'genesis_ruby/api/requests/base/reference'
|
23
23
|
require 'genesis_ruby/api/requests/base/versioned'
|
24
|
+
require 'genesis_ruby/api/requests/base/consumer'
|
24
25
|
require 'genesis_ruby/api/requests/financial/sdd/sale'
|
25
26
|
require 'genesis_ruby/api/requests/base/graphql'
|
26
27
|
require 'genesis_ruby/api/notification'
|
28
|
+
require 'genesis_ruby/api/requests/base/non_financial/kyc/base'
|
27
29
|
|
28
30
|
# Load Financial and Non Financial API Requests
|
29
31
|
Dir["#{File.dirname(__FILE__)}/api/requests/*financial/**/*.rb"].sort.each { |file| require file }
|
@@ -0,0 +1,272 @@
|
|
1
|
+
module GenesisRuby
|
2
|
+
module Utils
|
3
|
+
# Country-related methods
|
4
|
+
class Country # rubocop:disable Metrics/ClassLength
|
5
|
+
|
6
|
+
COUNTRIES = {
|
7
|
+
'AF' => 'Afghanistan',
|
8
|
+
'AX' => 'Aland Islands',
|
9
|
+
'AL' => 'Albania',
|
10
|
+
'DZ' => 'Algeria',
|
11
|
+
'AS' => 'American Samoa',
|
12
|
+
'AD' => 'Andorra',
|
13
|
+
'AO' => 'Angola',
|
14
|
+
'AI' => 'Anguilla',
|
15
|
+
'AQ' => 'Antarctica',
|
16
|
+
'AG' => 'Antigua And Barbuda',
|
17
|
+
'AR' => 'Argentina',
|
18
|
+
'AM' => 'Armenia',
|
19
|
+
'AW' => 'Aruba',
|
20
|
+
'AU' => 'Australia',
|
21
|
+
'AT' => 'Austria',
|
22
|
+
'AZ' => 'Azerbaijan',
|
23
|
+
'BS' => 'Bahamas',
|
24
|
+
'BH' => 'Bahrain',
|
25
|
+
'BD' => 'Bangladesh',
|
26
|
+
'BB' => 'Barbados',
|
27
|
+
'BY' => 'Belarus',
|
28
|
+
'BE' => 'Belgium',
|
29
|
+
'BZ' => 'Belize',
|
30
|
+
'BJ' => 'Benin',
|
31
|
+
'BM' => 'Bermuda',
|
32
|
+
'BT' => 'Bhutan',
|
33
|
+
'BO' => 'Bolivia',
|
34
|
+
'BA' => 'Bosnia And Herzegovina',
|
35
|
+
'BW' => 'Botswana',
|
36
|
+
'BV' => 'Bouvet Island',
|
37
|
+
'BR' => 'Brazil',
|
38
|
+
'IO' => 'British Indian Ocean Territory',
|
39
|
+
'BN' => 'Brunei Darussalam',
|
40
|
+
'BG' => 'Bulgaria',
|
41
|
+
'BF' => 'Burkina Faso',
|
42
|
+
'BI' => 'Burundi',
|
43
|
+
'KH' => 'Cambodia',
|
44
|
+
'CM' => 'Cameroon',
|
45
|
+
'CA' => 'Canada',
|
46
|
+
'CV' => 'Cape Verde',
|
47
|
+
'KY' => 'Cayman Islands',
|
48
|
+
'CF' => 'Central African Republic',
|
49
|
+
'TD' => 'Chad',
|
50
|
+
'CL' => 'Chile',
|
51
|
+
'CN' => 'China',
|
52
|
+
'CX' => 'Christmas Island',
|
53
|
+
'CC' => 'Cocos (Keeling) Islands',
|
54
|
+
'CO' => 'Colombia',
|
55
|
+
'KM' => 'Comoros',
|
56
|
+
'CG' => 'Congo',
|
57
|
+
'CD' => 'Congo, Democratic Republic',
|
58
|
+
'CK' => 'Cook Islands',
|
59
|
+
'CR' => 'Costa Rica',
|
60
|
+
'CI' => "Cote D'Ivoire",
|
61
|
+
'HR' => 'Croatia',
|
62
|
+
'CU' => 'Cuba',
|
63
|
+
'CY' => 'Cyprus',
|
64
|
+
'CZ' => 'Czech Republic',
|
65
|
+
'DK' => 'Denmark',
|
66
|
+
'DJ' => 'Djibouti',
|
67
|
+
'DM' => 'Dominica',
|
68
|
+
'DO' => 'Dominican Republic',
|
69
|
+
'EC' => 'Ecuador',
|
70
|
+
'EG' => 'Egypt',
|
71
|
+
'SV' => 'El Salvador',
|
72
|
+
'GQ' => 'Equatorial Guinea',
|
73
|
+
'ER' => 'Eritrea',
|
74
|
+
'EE' => 'Estonia',
|
75
|
+
'ET' => 'Ethiopia',
|
76
|
+
'FK' => 'Falkland Islands (Malvinas)',
|
77
|
+
'FO' => 'Faroe Islands',
|
78
|
+
'FJ' => 'Fiji',
|
79
|
+
'FI' => 'Finland',
|
80
|
+
'FR' => 'France',
|
81
|
+
'GF' => 'French Guiana',
|
82
|
+
'PF' => 'French Polynesia',
|
83
|
+
'TF' => 'French Southern Territories',
|
84
|
+
'GA' => 'Gabon',
|
85
|
+
'GM' => 'Gambia',
|
86
|
+
'GE' => 'Georgia',
|
87
|
+
'DE' => 'Germany',
|
88
|
+
'GH' => 'Ghana',
|
89
|
+
'GI' => 'Gibraltar',
|
90
|
+
'GR' => 'Greece',
|
91
|
+
'GL' => 'Greenland',
|
92
|
+
'GD' => 'Grenada',
|
93
|
+
'GP' => 'Guadeloupe',
|
94
|
+
'GU' => 'Guam',
|
95
|
+
'GT' => 'Guatemala',
|
96
|
+
'GG' => 'Guernsey',
|
97
|
+
'GN' => 'Guinea',
|
98
|
+
'GW' => 'Guinea-Bissau',
|
99
|
+
'GY' => 'Guyana',
|
100
|
+
'HT' => 'Haiti',
|
101
|
+
'HM' => 'Heard Island & Mcdonald Islands',
|
102
|
+
'VA' => 'Holy See (Vatican City State)',
|
103
|
+
'HN' => 'Honduras',
|
104
|
+
'HK' => 'Hong Kong',
|
105
|
+
'HU' => 'Hungary',
|
106
|
+
'IS' => 'Iceland',
|
107
|
+
'IN' => 'India',
|
108
|
+
'ID' => 'Indonesia',
|
109
|
+
'IR' => 'Iran, Islamic Republic Of',
|
110
|
+
'IQ' => 'Iraq',
|
111
|
+
'IE' => 'Ireland',
|
112
|
+
'IM' => 'Isle Of Man',
|
113
|
+
'IL' => 'Israel',
|
114
|
+
'IT' => 'Italy',
|
115
|
+
'JM' => 'Jamaica',
|
116
|
+
'JP' => 'Japan',
|
117
|
+
'JE' => 'Jersey',
|
118
|
+
'JO' => 'Jordan',
|
119
|
+
'KZ' => 'Kazakhstan',
|
120
|
+
'KE' => 'Kenya',
|
121
|
+
'KI' => 'Kiribati',
|
122
|
+
'KR' => 'Korea',
|
123
|
+
'KW' => 'Kuwait',
|
124
|
+
'KG' => 'Kyrgyzstan',
|
125
|
+
'LA' => "Lao People's Democratic Republic",
|
126
|
+
'LV' => 'Latvia',
|
127
|
+
'LB' => 'Lebanon',
|
128
|
+
'LS' => 'Lesotho',
|
129
|
+
'LR' => 'Liberia',
|
130
|
+
'LY' => 'Libyan Arab Jamahiriya',
|
131
|
+
'LI' => 'Liechtenstein',
|
132
|
+
'LT' => 'Lithuania',
|
133
|
+
'LU' => 'Luxembourg',
|
134
|
+
'MO' => 'Macao',
|
135
|
+
'MK' => 'Macedonia',
|
136
|
+
'MG' => 'Madagascar',
|
137
|
+
'MW' => 'Malawi',
|
138
|
+
'MY' => 'Malaysia',
|
139
|
+
'MV' => 'Maldives',
|
140
|
+
'ML' => 'Mali',
|
141
|
+
'MT' => 'Malta',
|
142
|
+
'MH' => 'Marshall Islands',
|
143
|
+
'MQ' => 'Martinique',
|
144
|
+
'MR' => 'Mauritania',
|
145
|
+
'MU' => 'Mauritius',
|
146
|
+
'YT' => 'Mayotte',
|
147
|
+
'MX' => 'Mexico',
|
148
|
+
'FM' => 'Micronesia, Federated States Of',
|
149
|
+
'MD' => 'Moldova',
|
150
|
+
'MC' => 'Monaco',
|
151
|
+
'MN' => 'Mongolia',
|
152
|
+
'ME' => 'Montenegro',
|
153
|
+
'MS' => 'Montserrat',
|
154
|
+
'MA' => 'Morocco',
|
155
|
+
'MZ' => 'Mozambique',
|
156
|
+
'MM' => 'Myanmar',
|
157
|
+
'NA' => 'Namibia',
|
158
|
+
'NR' => 'Nauru',
|
159
|
+
'NP' => 'Nepal',
|
160
|
+
'NL' => 'Netherlands',
|
161
|
+
'AN' => 'Netherlands Antilles',
|
162
|
+
'NC' => 'New Caledonia',
|
163
|
+
'NZ' => 'New Zealand',
|
164
|
+
'NI' => 'Nicaragua',
|
165
|
+
'NE' => 'Niger',
|
166
|
+
'NG' => 'Nigeria',
|
167
|
+
'NU' => 'Niue',
|
168
|
+
'NF' => 'Norfolk Island',
|
169
|
+
'MP' => 'Northern Mariana Islands',
|
170
|
+
'NO' => 'Norway',
|
171
|
+
'OM' => 'Oman',
|
172
|
+
'PK' => 'Pakistan',
|
173
|
+
'PW' => 'Palau',
|
174
|
+
'PS' => 'Palestinian Territory, Occupied',
|
175
|
+
'PA' => 'Panama',
|
176
|
+
'PG' => 'Papua New Guinea',
|
177
|
+
'PY' => 'Paraguay',
|
178
|
+
'PE' => 'Peru',
|
179
|
+
'PH' => 'Philippines',
|
180
|
+
'PN' => 'Pitcairn',
|
181
|
+
'PL' => 'Poland',
|
182
|
+
'PT' => 'Portugal',
|
183
|
+
'PR' => 'Puerto Rico',
|
184
|
+
'QA' => 'Qatar',
|
185
|
+
'RE' => 'Reunion',
|
186
|
+
'RO' => 'Romania',
|
187
|
+
'RU' => 'Russian Federation',
|
188
|
+
'RW' => 'Rwanda',
|
189
|
+
'BL' => 'Saint Barthelemy',
|
190
|
+
'SH' => 'Saint Helena',
|
191
|
+
'KN' => 'Saint Kitts And Nevis',
|
192
|
+
'LC' => 'Saint Lucia',
|
193
|
+
'MF' => 'Saint Martin',
|
194
|
+
'PM' => 'Saint Pierre And Miquelon',
|
195
|
+
'VC' => 'Saint Vincent And Grenadines',
|
196
|
+
'WS' => 'Samoa',
|
197
|
+
'SM' => 'San Marino',
|
198
|
+
'ST' => 'Sao Tome And Principe',
|
199
|
+
'SA' => 'Saudi Arabia',
|
200
|
+
'SN' => 'Senegal',
|
201
|
+
'RS' => 'Serbia',
|
202
|
+
'SC' => 'Seychelles',
|
203
|
+
'SL' => 'Sierra Leone',
|
204
|
+
'SG' => 'Singapore',
|
205
|
+
'SK' => 'Slovakia',
|
206
|
+
'SI' => 'Slovenia',
|
207
|
+
'SB' => 'Solomon Islands',
|
208
|
+
'SO' => 'Somalia',
|
209
|
+
'ZA' => 'South Africa',
|
210
|
+
'GS' => 'South Georgia And Sandwich Isl.',
|
211
|
+
'ES' => 'Spain',
|
212
|
+
'LK' => 'Sri Lanka',
|
213
|
+
'SD' => 'Sudan',
|
214
|
+
'SR' => 'Suriname',
|
215
|
+
'SJ' => 'Svalbard And Jan Mayen',
|
216
|
+
'SZ' => 'Swaziland',
|
217
|
+
'SE' => 'Sweden',
|
218
|
+
'CH' => 'Switzerland',
|
219
|
+
'SY' => 'Syrian Arab Republic',
|
220
|
+
'TW' => 'Taiwan',
|
221
|
+
'TJ' => 'Tajikistan',
|
222
|
+
'TZ' => 'Tanzania',
|
223
|
+
'TH' => 'Thailand',
|
224
|
+
'TL' => 'Timor-Leste',
|
225
|
+
'TG' => 'Togo',
|
226
|
+
'TK' => 'Tokelau',
|
227
|
+
'TO' => 'Tonga',
|
228
|
+
'TT' => 'Trinidad And Tobago',
|
229
|
+
'TN' => 'Tunisia',
|
230
|
+
'TR' => 'Turkey',
|
231
|
+
'TM' => 'Turkmenistan',
|
232
|
+
'TC' => 'Turks And Caicos Islands',
|
233
|
+
'TV' => 'Tuvalu',
|
234
|
+
'UG' => 'Uganda',
|
235
|
+
'UA' => 'Ukraine',
|
236
|
+
'AE' => 'United Arab Emirates',
|
237
|
+
'GB' => 'United Kingdom',
|
238
|
+
'US' => 'United States',
|
239
|
+
'UM' => 'United States Outlying Islands',
|
240
|
+
'UY' => 'Uruguay',
|
241
|
+
'UZ' => 'Uzbekistan',
|
242
|
+
'VU' => 'Vanuatu',
|
243
|
+
'VE' => 'Venezuela',
|
244
|
+
'VN' => 'Viet Nam',
|
245
|
+
'VG' => 'Virgin Islands, British',
|
246
|
+
'VI' => 'Virgin Islands, U.S.',
|
247
|
+
'WF' => 'Wallis And Futuna',
|
248
|
+
'EH' => 'Western Sahara',
|
249
|
+
'YE' => 'Yemen',
|
250
|
+
'ZM' => 'Zambia',
|
251
|
+
'ZW' => 'Zimbabwe'
|
252
|
+
}.freeze
|
253
|
+
|
254
|
+
# Retrieves a country's name by its ISO code.
|
255
|
+
def country_name(iso_code)
|
256
|
+
COUNTRIES.fetch(iso_code, false)
|
257
|
+
end
|
258
|
+
|
259
|
+
# Retrieves a country's ISO code by its name.
|
260
|
+
def country_iso(country_name)
|
261
|
+
country_pair = COUNTRIES.find { |_iso, name| name.downcase == country_name.downcase }
|
262
|
+
country_pair&.first
|
263
|
+
end
|
264
|
+
|
265
|
+
# Returns a list of all supported country ISO codes.
|
266
|
+
def list
|
267
|
+
COUNTRIES.keys
|
268
|
+
end
|
269
|
+
|
270
|
+
end
|
271
|
+
end
|
272
|
+
end
|
@@ -11,7 +11,7 @@ module GenesisRuby
|
|
11
11
|
|
12
12
|
# The Response keys that the formatter will be applied to
|
13
13
|
def formatting_keys
|
14
|
-
%w(timestamp transactionDate valueDate)
|
14
|
+
%w(timestamp transactionDate valueDate transaction_date post_date)
|
15
15
|
end
|
16
16
|
|
17
17
|
# Format the given timestamp to DateTime object
|
data/lib/genesis_ruby/version.rb
CHANGED