genesis_ruby 0.2.4 → 0.2.6

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.
Files changed (71) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +46 -0
  3. data/Gemfile.lock +15 -15
  4. data/README.md +41 -0
  5. data/VERSION +1 -1
  6. data/lib/genesis_ruby/api/constants/currencies/iso4217.rb +6 -0
  7. data/lib/genesis_ruby/api/constants/non_financial/kyc/document_supported_types.rb +28 -0
  8. data/lib/genesis_ruby/api/constants/non_financial/kyc/document_types.rb +49 -0
  9. data/lib/genesis_ruby/api/constants/non_financial/kyc/genders.rb +22 -0
  10. data/lib/genesis_ruby/api/constants/non_financial/kyc/profile_current_statuses.rb +25 -0
  11. data/lib/genesis_ruby/api/constants/transactions/parameters/african_mobile_operators.rb +37 -0
  12. data/lib/genesis_ruby/api/constants/transactions/parameters/customer_identification/customer_identification_owner.rb +24 -0
  13. data/lib/genesis_ruby/api/constants/transactions/parameters/customer_identification/customer_identification_subtype.rb +24 -0
  14. data/lib/genesis_ruby/api/constants/transactions/parameters/customer_identification/customer_identification_type.rb +63 -0
  15. data/lib/genesis_ruby/api/constants/transactions/parameters/digital_asset_types.rb +31 -0
  16. data/lib/genesis_ruby/api/constants/transactions/parameters/purpose_of_payment.rb +136 -0
  17. data/lib/genesis_ruby/api/constants/transactions/parameters/source_of_funds.rb +34 -0
  18. data/lib/genesis_ruby/api/mixins/requests/digital_asset_type_attributes.rb +26 -0
  19. data/lib/genesis_ruby/api/mixins/requests/financial/african_mobile_attributes.rb +30 -0
  20. data/lib/genesis_ruby/api/mixins/requests/financial/cards/tokenization_params_attributes.rb +36 -0
  21. data/lib/genesis_ruby/api/mixins/requests/financial/customer_identification_attributes.rb +82 -0
  22. data/lib/genesis_ruby/api/mixins/requests/financial/gift_cards_attributes.rb +26 -0
  23. data/lib/genesis_ruby/api/mixins/requests/financial/preauthorization_attributes.rb +25 -0
  24. data/lib/genesis_ruby/api/mixins/requests/financial/purpose_of_payment_attributes.rb +29 -0
  25. data/lib/genesis_ruby/api/mixins/requests/financial/source_of_funds_attributes.rb +38 -0
  26. data/lib/genesis_ruby/api/mixins/requests/financial/travel_data/airline_itinerary_attributes.rb +1 -1
  27. data/lib/genesis_ruby/api/mixins/requests/non_financial/fx/id_attributes.rb +28 -0
  28. data/lib/genesis_ruby/api/mixins/requests/non_financial/fx/tier_id_attributes.rb +28 -0
  29. data/lib/genesis_ruby/api/mixins/requests/non_financial/kyc/customer_information_attributes.rb +62 -0
  30. data/lib/genesis_ruby/api/mixins/requests/non_financial/kyc/document_attributes.rb +60 -0
  31. data/lib/genesis_ruby/api/request.rb +7 -0
  32. data/lib/genesis_ruby/api/requests/base/financials/credit_card.rb +4 -2
  33. data/lib/genesis_ruby/api/requests/base/non_financial/kyc/base.rb +33 -0
  34. data/lib/genesis_ruby/api/requests/base/reference.rb +1 -2
  35. data/lib/genesis_ruby/api/requests/financial/cards/authorize.rb +5 -1
  36. data/lib/genesis_ruby/api/requests/financial/cards/authorize3d.rb +5 -1
  37. data/lib/genesis_ruby/api/requests/financial/cards/credit.rb +39 -0
  38. data/lib/genesis_ruby/api/requests/financial/cards/payout.rb +72 -0
  39. data/lib/genesis_ruby/api/requests/financial/cards/sale.rb +3 -1
  40. data/lib/genesis_ruby/api/requests/financial/cards/sale3d.rb +3 -1
  41. data/lib/genesis_ruby/api/requests/financial/crypto/bit_pay/payout.rb +52 -0
  42. data/lib/genesis_ruby/api/requests/financial/crypto/bit_pay/refund.rb +36 -0
  43. data/lib/genesis_ruby/api/requests/financial/crypto/bit_pay/sale.rb +55 -0
  44. data/lib/genesis_ruby/api/requests/financial/gift_cards/fashioncheque.rb +47 -0
  45. data/lib/genesis_ruby/api/requests/financial/gift_cards/intersolve.rb +46 -0
  46. data/lib/genesis_ruby/api/requests/financial/gift_cards/tcs.rb +47 -0
  47. data/lib/genesis_ruby/api/requests/financial/mobile/african_mobile_sale.rb +81 -0
  48. data/lib/genesis_ruby/api/requests/financial/mobile/russian_mobile_sale.rb +55 -0
  49. data/lib/genesis_ruby/api/requests/financial/preauthorizations/incremental_authorize.rb +24 -0
  50. data/lib/genesis_ruby/api/requests/financial/preauthorizations/partial_reversal.rb +24 -0
  51. data/lib/genesis_ruby/api/requests/financial/vouchers/neosurf.rb +61 -0
  52. data/lib/genesis_ruby/api/requests/non_financial/fraud/chargeback/date_range.rb +82 -0
  53. data/lib/genesis_ruby/api/requests/non_financial/fraud/chargeback/transaction.rb +52 -0
  54. data/lib/genesis_ruby/api/requests/non_financial/fraud/reports/date_range.rb +108 -0
  55. data/lib/genesis_ruby/api/requests/non_financial/fraud/reports/transaction.rb +52 -0
  56. data/lib/genesis_ruby/api/requests/non_financial/fx/get_rate.rb +55 -0
  57. data/lib/genesis_ruby/api/requests/non_financial/fx/get_rates.rb +53 -0
  58. data/lib/genesis_ruby/api/requests/non_financial/fx/get_tier.rb +53 -0
  59. data/lib/genesis_ruby/api/requests/non_financial/fx/get_tiers.rb +35 -0
  60. data/lib/genesis_ruby/api/requests/non_financial/fx/search_rate.rb +61 -0
  61. data/lib/genesis_ruby/api/requests/non_financial/kyc/consumer_registration/create.rb +99 -0
  62. data/lib/genesis_ruby/api/requests/non_financial/kyc/consumer_registration/update.rb +50 -0
  63. data/lib/genesis_ruby/api/requests/non_financial/kyc/verifications/remote_identity.rb +91 -0
  64. data/lib/genesis_ruby/api/requests/non_financial/tokenization/cryptogram.rb +5 -2
  65. data/lib/genesis_ruby/api/requests/wpf/create.rb +3 -1
  66. data/lib/genesis_ruby/configuration.rb +4 -0
  67. data/lib/genesis_ruby/dependencies.rb +1 -0
  68. data/lib/genesis_ruby/utils/country.rb +272 -0
  69. data/lib/genesis_ruby/utils/money/conversions/amount_to_exponent.rb +1 -4
  70. data/lib/genesis_ruby/version.rb +1 -1
  71. metadata +52 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 9072aff1c90817e3c33b33fb2edb13dd233eb1215a431ea48929f04097f0bb0b
4
- data.tar.gz: 3799ea143d2abddaf7c8afded420e332a60ceeef1218c839483575428c735eda
3
+ metadata.gz: 71e80020085f54f73f761fc4edf086d35cd4036def2240f164bf43297bb26655
4
+ data.tar.gz: df18d10bfd5256ea4b1c8b795de95d96b81dc94b92d5bfb79fb97cf03dfd723a
5
5
  SHA512:
6
- metadata.gz: ed1030a2956b575dc61ff111e07bc89f45b78a61c33c2d8ae5b0278c350313c1308fec9c046e2bcb59a33e4b258b765ca49761f052fa10ce95d5514f40d6379e
7
- data.tar.gz: 6efa9c63b505b4c5ab09518e12db4e68131e93e203c964bf20b57263c2569d67ef5fb72acf0c742fbe9027783bae64d891a43cd58d79de4af25bae71a738814b
6
+ metadata.gz: 88e6ed6cca766a04e74c18e304357e6badca5ca2313aa481705ead6228c740c1df0b8aaacb47f362d5cb4d3dc327823454b919271b50c54c6bd5a672cdf24de2
7
+ data.tar.gz: 7138775c1ca35e2704383b2b764f7c6460566472f4c9e5e3b67a286ea7ca6631e69903b0812d2f85cd2b1b838cab6325e97cbb7df3650165a449d48c0c48ec67
data/CHANGELOG.md CHANGED
@@ -1,3 +1,49 @@
1
+ 0.2.6
2
+ -----
3
+ **Features**:
4
+
5
+ * Added Partial Reversal transaction request support
6
+ * Added KYC Remote Identity Verification API request support
7
+ * Added KYC Update Consumer Registration API request support
8
+
9
+ 0.2.5
10
+ -----
11
+ **Features**:
12
+
13
+ * Added Incremental Authorize transaction request support
14
+ * Added Preauthorization attributes support to Authorize and Authorize 3D transaction requests
15
+ * Added BitPay Sale, Refund and Payout transaction requests support
16
+ * Added support for the following Gift Card transaction requests:
17
+ * Fashioncheque
18
+ * Intersolve
19
+ * TCS
20
+ * Added Chargeback API support with the following endpoints:
21
+ * Single/List
22
+ * By Date Range
23
+ * Added Fraud reports API support with the following endpoints:
24
+ * Single/List SAFE/TC40
25
+ * By Date Range
26
+ * Added FX API services support with the following endpoints:
27
+ * GetRate
28
+ * GetRates
29
+ * GetTier
30
+ * GetTiers
31
+ * SearchRate
32
+ * Added KYC Create Consumer Registration API request support
33
+ * Added XCG currency support
34
+ * Updated Tokenization Cryptogram API request support with mandatory parameter - transaction_reference
35
+ * Added Digital Asset Type attribute support to the following transaction requests:
36
+ * Authorize
37
+ * Authorize 3D
38
+ * Sale
39
+ * Sale 3D
40
+ * Web Payment Form
41
+ * Added African Mobile Sale transaction request support
42
+ * Added Russian Mobile Sale transaction request support
43
+ * Added Credit transaction request support
44
+ * Added Neosurf transaction request support
45
+ * Added Payout transaction request support
46
+
1
47
  0.2.4
2
48
  -----
3
49
  **Features**:
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- genesis_ruby (0.2.4)
4
+ genesis_ruby (0.2.6)
5
5
  net-http (~> 0.3.2)
6
6
  nokogiri (~> 1.14)
7
7
 
@@ -17,7 +17,7 @@ GEM
17
17
  crack (1.0.0)
18
18
  bigdecimal
19
19
  rexml
20
- csv (3.3.3)
20
+ csv (3.3.4)
21
21
  diff-lcs (1.6.1)
22
22
  faker (2.23.0)
23
23
  i18n (>= 1.8.11, < 2)
@@ -38,11 +38,11 @@ GEM
38
38
  multi_xml (>= 0.5.2)
39
39
  i18n (1.14.7)
40
40
  concurrent-ruby (~> 1.0)
41
- json (2.10.2)
41
+ json (2.11.3)
42
42
  language_server-protocol (3.17.0.4)
43
43
  lint_roller (1.1.0)
44
44
  mini_mime (1.1.5)
45
- mini_portile2 (2.8.8)
45
+ mini_portile2 (2.8.9)
46
46
  multi_xml (0.6.0)
47
47
  mustermann (3.0.3)
48
48
  ruby2_keywords (~> 0.0.1)
@@ -51,18 +51,18 @@ GEM
51
51
  nokogiri (1.15.7)
52
52
  mini_portile2 (~> 2.8.2)
53
53
  racc (~> 1.4)
54
- octokit (9.2.0)
54
+ octokit (10.0.0)
55
55
  faraday (>= 1, < 3)
56
56
  sawyer (~> 0.9)
57
- parallel (1.26.3)
58
- parser (3.3.7.4)
57
+ parallel (1.27.0)
58
+ parser (3.3.8.0)
59
59
  ast (~> 2.4.1)
60
60
  racc
61
61
  prism (1.4.0)
62
- pronto (0.11.3)
62
+ pronto (0.11.4)
63
63
  gitlab (>= 4.4.0, < 5.0)
64
64
  httparty (>= 0.13.7, < 1.0)
65
- octokit (>= 4.7.0, < 10.0)
65
+ octokit (>= 4.7.0, < 11.0)
66
66
  rainbow (>= 2.2, < 4.0)
67
67
  rexml (>= 3.2.5, < 4.0)
68
68
  rugged (>= 0.23.0, < 2.0)
@@ -86,16 +86,16 @@ GEM
86
86
  rspec-mocks (~> 3.13.0)
87
87
  rspec-core (3.13.3)
88
88
  rspec-support (~> 3.13.0)
89
- rspec-expectations (3.13.3)
89
+ rspec-expectations (3.13.4)
90
90
  diff-lcs (>= 1.2.0, < 2.0)
91
91
  rspec-support (~> 3.13.0)
92
- rspec-mocks (3.13.2)
92
+ rspec-mocks (3.13.3)
93
93
  diff-lcs (>= 1.2.0, < 2.0)
94
94
  rspec-support (~> 3.13.0)
95
- rspec-support (3.13.2)
95
+ rspec-support (3.13.3)
96
96
  rspec_junit_formatter (0.6.0)
97
97
  rspec-core (>= 2, < 4, != 2.12.0)
98
- rubocop (1.75.1)
98
+ rubocop (1.75.4)
99
99
  json (~> 2.3)
100
100
  language_server-protocol (~> 3.17.0.2)
101
101
  lint_roller (~> 1.1.0)
@@ -103,10 +103,10 @@ GEM
103
103
  parser (>= 3.3.0.2)
104
104
  rainbow (>= 2.2.2, < 4.0)
105
105
  regexp_parser (>= 2.9.3, < 3.0)
106
- rubocop-ast (>= 1.43.0, < 2.0)
106
+ rubocop-ast (>= 1.44.0, < 2.0)
107
107
  ruby-progressbar (~> 1.7)
108
108
  unicode-display_width (>= 2.4.0, < 4.0)
109
- rubocop-ast (1.44.0)
109
+ rubocop-ast (1.44.1)
110
110
  parser (>= 3.3.7.2)
111
111
  prism (~> 1.4)
112
112
  rubocop-capybara (2.22.1)
data/README.md CHANGED
@@ -1002,13 +1002,20 @@ GenesisRuby::Api::Requests::Financial::Cards::Cencosud
1002
1002
  GenesisRuby::Api::Requests::Financial::Cards::Elo
1003
1003
  GenesisRuby::Api::Requests::Financial::Cards::Naranja
1004
1004
  GenesisRuby::Api::Requests::Financial::Cards::Nativa
1005
+ GenesisRuby::Api::Requests::Financial::Cards::Payout
1005
1006
  GenesisRuby::Api::Requests::Financial::Cards::Sale
1006
1007
  GenesisRuby::Api::Requests::Financial::Cards::Sale3d
1007
1008
  GenesisRuby::Api::Requests::Financial::Cards::TarjetaShopping
1008
1009
 
1010
+ ## Preauthorizations
1011
+ GenesisRuby::Api::Requests::Financial::Preauthorizations::IncrementalAuthorize
1012
+ GenesisRuby::Api::Requests::Financial::Preauthorizations::PartialReversal
1013
+
1009
1014
  ## Mobile
1010
1015
  GenesisRuby::Api::Requests::Financial::Mobile::ApplePay
1011
1016
  GenesisRuby::Api::Requests::Financial::Mobile::GooglePay
1017
+ GenesisRuby::Api::Requests::Financial::Mobile::AfricanMobileSale
1018
+ GenesisRuby::Api::Requests::Financial::Mobile::RussianMobileSale
1012
1019
 
1013
1020
  ## Wallets
1014
1021
  GenesisRuby::Api::Requests::Financial::Wallets::Alipay
@@ -1025,6 +1032,19 @@ GenesisRuby::Api::Requests::Financial::CashPayments::PagoFacil
1025
1032
  GenesisRuby::Api::Requests::Financial::CashPayments::Pix
1026
1033
  GenesisRuby::Api::Requests::Financial::CashPayments::Redpagos
1027
1034
 
1035
+ ## Crypto transactions
1036
+ GenesisRuby::Api::Requests::Financial::Crypto::BitPay::Sale
1037
+ GenesisRuby::Api::Requests::Financial::Crypto::BitPay::Refund
1038
+ GenesisRuby::Api::Requests::Financial::Crypto::BitPay::Payout
1039
+
1040
+ ## Gift Cards transactions
1041
+ GenesisRuby::Api::Requests::Financial::GiftCards::Intersolve
1042
+ GenesisRuby::Api::Requests::Financial::GiftCards::Fashioncheque
1043
+ GenesisRuby::Api::Requests::Financial::GiftCards::Tcs
1044
+
1045
+ ## Vouchers
1046
+ GenesisRuby::Api::Requests::Financial::Vouchers::Neosurf
1047
+
1028
1048
  # Web Payment Form
1029
1049
  ## Create
1030
1050
  GenesisRuby::Api::Requests::Wpf::Create
@@ -1072,6 +1092,7 @@ GenesisRuby::Api::Requests::Financial::Void
1072
1092
  GenesisRuby::Api::Requests::Financial::Refund
1073
1093
  GenesisRuby::Api::Requests::Financial::Sdd::Refund
1074
1094
  GenesisRuby::Api::Requests::Financial::Sdd::Recurring::RecurringSale
1095
+ GenesisRuby::Api::Requests::Financial::Cards::Credit
1075
1096
 
1076
1097
  # Non Financial
1077
1098
  ## Reconcile
@@ -1113,6 +1134,26 @@ GenesisRuby::Api::Requests::NonFinancial::Tokenization::ValidateToken
1113
1134
  GenesisRuby::Api::Requests::NonFinancial::Tokenization::DeleteToken
1114
1135
  GenesisRuby::Api::Requests::NonFinancial::Tokenization::GetCard
1115
1136
 
1137
+ ## KYC Know Your Customer API
1138
+ GenesisRuby::Api::Requests::NonFinancial::Kyc::ConsumerRegistration::Create
1139
+ GenesisRuby::Api::Requests::NonFinancial::Kyc::ConsumerRegistration::Update
1140
+ GenesisRuby::Api::Requests::NonFinancial::Kyc::Verifications::RemoteIdentity
1141
+
1142
+ ## Chargeback API
1143
+ GenesisRuby::Api::Requests::NonFinancial::Fraud::Chargeback::Transaction
1144
+ GenesisRuby::Api::Requests::NonFinancial::Fraud::Chargeback::DateRange
1145
+
1146
+ ## SAFE/TC40 Report
1147
+ GenesisRuby::Api::Requests::NonFinancial::Fraud::Reports::Transaction
1148
+ GenesisRuby::Api::Requests::NonFinancial::Fraud::Reports::DateRange
1149
+
1150
+ ## Fx API
1151
+ GenesisRuby::Api::Requests::NonFinancial::Fx::GetTiers
1152
+ GenesisRuby::Api::Requests::NonFinancial::Fx::GetTier
1153
+ GenesisRuby::Api::Requests::NonFinancial::Fx::GetRates
1154
+ GenesisRuby::Api::Requests::NonFinancial::Fx::GetRate
1155
+ GenesisRuby::Api::Requests::NonFinancial::Fx::SearchRate
1156
+
1116
1157
  ```
1117
1158
 
1118
1159
  ### Manual initialization
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.2.4
1
+ 0.2.6
@@ -1001,6 +1001,12 @@ module GenesisRuby
1001
1001
  country: 'SAINT VINCENT AND THE GRENADINES',
1002
1002
  exponent: '2'
1003
1003
  },
1004
+ XCG: {
1005
+ name: 'Netherlands Antillean guilder',
1006
+ code: '532',
1007
+ country: 'Curaçao (CW), Sint Maarten (SX)',
1008
+ exponent: '2'
1009
+ },
1004
1010
  XDR: {
1005
1011
  name: 'SDR (Special Drawing Right)',
1006
1012
  code: '960',
@@ -0,0 +1,28 @@
1
+ module GenesisRuby
2
+ module Api
3
+ module Constants
4
+ module NonFinancial
5
+ module Kyc
6
+ # This class provides a mapping of supported document types for KYC procedures.
7
+ class DocumentSupportedTypes
8
+
9
+ extend Mixins::Constants::Common
10
+
11
+ # Passport document type
12
+ PASSPORT = 'passport'.freeze
13
+
14
+ # ID card document type
15
+ ID_CARD = 'id_card'.freeze
16
+
17
+ # Driving license document type
18
+ DRIVING_LICENSE = 'driving_license'.freeze
19
+
20
+ # Credit or Debit card document type
21
+ CREDIT_OR_DEBIT_CARD = 'credit_or_debit_card'.freeze
22
+
23
+ end
24
+ end
25
+ end
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,49 @@
1
+ module GenesisRuby
2
+ module Api
3
+ module Constants
4
+ module NonFinancial
5
+ module Kyc
6
+ # Document Types allowed values
7
+ class DocumentTypes
8
+
9
+ extend Mixins::Constants::Common
10
+
11
+ # SSN
12
+ SSN = 0
13
+
14
+ # Passport Registry
15
+ PASSPORT_REGISTRY = 1
16
+
17
+ # Personal ID / National ID
18
+ PERSONAL_ID = 2
19
+
20
+ # Identity Card
21
+ IDENTITY_CARD = 3
22
+
23
+ # Driver License
24
+ DRIVER_LICENSE = 4
25
+
26
+ # Travel Document
27
+ TRAVEL_DOCUMENT = 8
28
+
29
+ # Residence Permit
30
+ RESIDENCE_PERMIT = 12
31
+
32
+ # Identity Certificate
33
+ IDENTITY_CERTIFICATE = 13
34
+
35
+ # Registro Federal de Contribuyentes
36
+ FEDERAL_REGISTER = 16
37
+
38
+ # Credencial de Elector
39
+ ELECTRON_CREDENTIALS = 17
40
+
41
+ # CPF
42
+ CPF = 18
43
+
44
+ end
45
+ end
46
+ end
47
+ end
48
+ end
49
+ end
@@ -0,0 +1,22 @@
1
+ module GenesisRuby
2
+ module Api
3
+ module Constants
4
+ module NonFinancial
5
+ module Kyc
6
+ # Gender allowed values
7
+ class Genders
8
+
9
+ extend Mixins::Constants::Common
10
+
11
+ # Male
12
+ MALE = 'M'.freeze
13
+
14
+ # Female
15
+ FEMALE = 'F'.freeze
16
+
17
+ end
18
+ end
19
+ end
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,25 @@
1
+ module GenesisRuby
2
+ module Api
3
+ module Constants
4
+ module NonFinancial
5
+ module Kyc
6
+ # Profile current statuses
7
+ class ProfileCurrentStatuses
8
+
9
+ extend Mixins::Constants::Common
10
+
11
+ # Undefined
12
+ UNDEFINED = 0
13
+ # Review
14
+ REVIEW = 1
15
+ # Denied
16
+ DENIED = 2
17
+ # Approved
18
+ APPROVED = 3
19
+
20
+ end
21
+ end
22
+ end
23
+ end
24
+ end
25
+ end
@@ -0,0 +1,37 @@
1
+ module GenesisRuby
2
+ module Api
3
+ module Constants
4
+ module Transactions
5
+ module Parameters
6
+ # Names of supported African Mobile network operators
7
+ class AfricanMobileOperators
8
+
9
+ extend Mixins::Constants::Common
10
+
11
+ AIRTEL = 'AIRTEL'.freeze
12
+
13
+ MOVITEL = 'MOVITEL'.freeze
14
+
15
+ MTN = 'MTN'.freeze
16
+
17
+ SAFARICOM = 'SAFARICOM'.freeze
18
+
19
+ TIGO = 'TIGO'.freeze
20
+
21
+ VODACOM = 'VODACOM'.freeze
22
+
23
+ class << self
24
+
25
+ # Return African Mobile Sale operators
26
+ def sale
27
+ %w(VODACOM SAFARICOM AIRTEL MTN)
28
+ end
29
+
30
+ end
31
+
32
+ end
33
+ end
34
+ end
35
+ end
36
+ end
37
+ end
@@ -0,0 +1,24 @@
1
+ module GenesisRuby
2
+ module Api
3
+ module Constants
4
+ module Transactions
5
+ module Parameters
6
+ module CustomerIdentification
7
+ # Specifies if the document ID belongs to the sender or the receiver of the OCT
8
+ class CustomerIdentificationOwner
9
+
10
+ extend Api::Mixins::Constants::Common
11
+
12
+ # Document ID belongs to
13
+ SENDER = 'sender'.freeze
14
+
15
+ # Document ID belongs to
16
+ RECEIVER = 'receiver'.freeze
17
+
18
+ end
19
+ end
20
+ end
21
+ end
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,24 @@
1
+ module GenesisRuby
2
+ module Api
3
+ module Constants
4
+ module Transactions
5
+ module Parameters
6
+ module CustomerIdentification
7
+ # Specifies the type of the document ID.
8
+ class CustomerIdentificationSubtype
9
+
10
+ extend Api::Mixins::Constants::Common
11
+
12
+ # Document ID type - business
13
+ BUSINESS = 'business'.freeze
14
+
15
+ # Document ID type - individual
16
+ INDIVIDUAL = 'individual'.freeze
17
+
18
+ end
19
+ end
20
+ end
21
+ end
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,63 @@
1
+ module GenesisRuby
2
+ module Api
3
+ module Constants
4
+ module Transactions
5
+ module Parameters
6
+ module CustomerIdentification
7
+ # Specifies the type of the document ID.
8
+ class CustomerIdentificationType
9
+
10
+ extend Api::Mixins::Constants::Common
11
+
12
+ # Document ID type - birthdate certificate
13
+ BIRTH_DATE = 'birth_date'.freeze
14
+
15
+ # Document ID type - unspecified
16
+ UNSPECIFIED = 'unspecified'.freeze
17
+
18
+ # Document ID type - national
19
+ NATIONAL = 'national'.freeze
20
+
21
+ # Document ID type - passport number
22
+ PASSPORT_NUMBER = 'passport_number'.freeze
23
+
24
+ # Document ID type - driver license
25
+ DRIVER_LICENSE = 'driver_license'.freeze
26
+
27
+ # Document ID type - tax
28
+ TAX = 'tax'.freeze
29
+
30
+ # Document ID type - company registration number
31
+ COMPANY_REGISTRATION_NUMBER = 'company_registration_number'.freeze
32
+
33
+ # Document ID type - proxy
34
+ PROXY = 'proxy'.freeze
35
+
36
+ # Document ID type - social security number
37
+ SOCIAL_SECURITY_NUMBER = 'social_security_number'.freeze
38
+
39
+ # Document ID type - alien registration number
40
+ ALIEN_REGISTRATION_NUMBER = 'alien_registration_number'.freeze
41
+
42
+ # Document ID type - law enforcement
43
+ LAW_ENFORCEMENT = 'law_enforcement'.freeze
44
+
45
+ # Document ID type - military
46
+ MILITARY = 'military'.freeze
47
+
48
+ # Document ID type - travel
49
+ TRAVEL = 'travel'.freeze
50
+
51
+ # Document ID type - email
52
+ EMAIL = 'email'.freeze
53
+
54
+ # Document ID type - phone number
55
+ PHONE_NUMBER = 'phone_number'.freeze
56
+
57
+ end
58
+ end
59
+ end
60
+ end
61
+ end
62
+ end
63
+ end
@@ -0,0 +1,31 @@
1
+ module GenesisRuby
2
+ module Api
3
+ module Constants
4
+ module Transactions
5
+ module Parameters
6
+ # Digital Asset Types
7
+ class DigitalAssetTypes
8
+
9
+ extend Mixins::Constants::Common
10
+
11
+ # Default crypto flag
12
+ CRYPTO = 'crypto'.freeze
13
+
14
+ # Central Bank Digital Currency or tokenized deposits
15
+ CBDC = 'cbdc'.freeze
16
+
17
+ # Stablecoin (Fiat-backed)
18
+ STABLECOIN = 'stablecoin'.freeze
19
+
20
+ # Blockchain native token/coin
21
+ BLOCKCHAIN_NATIVE_TOKEN = 'blockchain_native_token'.freeze
22
+
23
+ # Non-fungible token
24
+ NFT = 'nft'.freeze
25
+
26
+ end
27
+ end
28
+ end
29
+ end
30
+ end
31
+ end
@@ -0,0 +1,136 @@
1
+ module GenesisRuby
2
+ module Api
3
+ module Constants
4
+ module Transactions
5
+ module Parameters
6
+ # Purpose of Payment
7
+ class PurposeOfPayment
8
+
9
+ extend Mixins::Constants::Common
10
+
11
+ # Interest
12
+ ISINTE = 'ISINTE'.freeze
13
+
14
+ # Income tax
15
+ ISINTX = 'ISINTX'.freeze
16
+
17
+ # Investment
18
+ ISINVS = 'ISINVS'.freeze
19
+
20
+ # Labor insurance
21
+ ISLBRI = 'ISLBRI'.freeze
22
+
23
+ # License fee
24
+ ISLICF = 'ISLICF'.freeze
25
+
26
+ # Life insurance
27
+ ISLIFI = 'ISLIFI'.freeze
28
+
29
+ # Loan
30
+ ISLOAN = 'ISLOAN'.freeze
31
+
32
+ # Medical services
33
+ ISMDCS = 'ISMDCS'.freeze
34
+
35
+ # Mobile P2B payment
36
+ ISMP2B = 'ISMP2B'.freeze
37
+
38
+ # Mobile P2P payment
39
+ ISMP2P = 'ISMP2P'.freeze
40
+
41
+ # Mobile top up
42
+ ISMTUP = 'ISMTUP'.freeze
43
+
44
+ # Not otherwise specified
45
+ ISNOWS = 'ISNOWS'.freeze
46
+
47
+ # Other
48
+ ISOTHR = 'ISOTHR'.freeze
49
+
50
+ # Transaction is related to a payment of other telecom related bill
51
+ ISOTLC = 'ISOTLC'.freeze
52
+
53
+ # Payroll
54
+ ISPAYR = 'ISPAYR'.freeze
55
+
56
+ # Contribution to pension fund
57
+ ISPEFC = 'ISPEFC'.freeze
58
+
59
+ # Pension payment
60
+ ISPENS = 'ISPENS'.freeze
61
+
62
+ # Payment of telephone bill
63
+ ISPHON = 'ISPHON'.freeze
64
+
65
+ # Property insurance
66
+ ISPPTI = 'ISPPTI'.freeze
67
+
68
+ # Transaction is for general rental/lease
69
+ ISRELG = 'ISRELG'.freeze
70
+
71
+ # The payment of rent
72
+ ISRENT = 'ISRENT'.freeze
73
+
74
+ # Payment for railway transport related business
75
+ ISRLWY = 'ISRLWY'.freeze
76
+
77
+ # Royalties
78
+ ISROYA = 'ISROYA'.freeze
79
+
80
+ # Salary payment
81
+ ISSALA = 'ISSALA'.freeze
82
+
83
+ # Payment to savings/retirement account
84
+ ISSAVG = 'ISSAVG'.freeze
85
+
86
+ # Securities
87
+ ISSECU = 'ISSECU'.freeze
88
+
89
+ # Social security benefit
90
+ ISSSBE = 'ISSSBE'.freeze
91
+
92
+ # Study
93
+ ISSTDY = 'ISSTDY'.freeze
94
+
95
+ # Subscription
96
+ ISSUBS = 'ISSUBS'.freeze
97
+
98
+ # Supplier payment
99
+ ISSUPP = 'ISSUPP'.freeze
100
+
101
+ # Refund of a tax payment or obligation
102
+ ISTAXR = 'ISTAXR'.freeze
103
+
104
+ # Tax payment
105
+ ISTAXS = 'ISTAXS'.freeze
106
+
107
+ # Transaction is related to a payment of telecommunications related bill
108
+ ISTBIL = 'ISTBIL'.freeze
109
+
110
+ # Trade services operation
111
+ ISTRAD = 'ISTRAD'.freeze
112
+
113
+ # Treasury payment
114
+ ISTREA = 'ISTREA'.freeze
115
+
116
+ # Payment for travel
117
+ ISTRPT = 'ISTRPT'.freeze
118
+
119
+ # Utility bill payment
120
+ ISUBIL = 'ISUBIL'.freeze
121
+
122
+ # Value added tax payment
123
+ ISVATX = 'ISVATX'.freeze
124
+
125
+ # With holding
126
+ ISWHLD = 'ISWHLD'.freeze
127
+
128
+ # Payment of water bill
129
+ ISWTER = 'ISWTER'.freeze
130
+
131
+ end
132
+ end
133
+ end
134
+ end
135
+ end
136
+ end