genesis_ruby 0.2.5 → 0.2.7
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 +26 -0
- data/Gemfile.lock +20 -20
- data/README.md +24 -0
- data/VERSION +1 -1
- data/lib/genesis_ruby/api/constants/currencies/iso4217.rb +4 -3
- data/lib/genesis_ruby/api/constants/date_time_formats.rb +9 -7
- data/lib/genesis_ruby/api/constants/endpoints.rb +4 -2
- data/lib/genesis_ruby/api/constants/environments.rb +4 -2
- data/lib/genesis_ruby/api/constants/i18n.rb +28 -26
- data/lib/genesis_ruby/api/constants/non_financial/kyc/address_supported_types.rb +51 -0
- data/lib/genesis_ruby/api/constants/non_financial/kyc/aml_filters.rb +49 -0
- data/lib/genesis_ruby/api/constants/non_financial/kyc/create_transaction_payment_methods.rb +23 -0
- data/lib/genesis_ruby/api/constants/non_financial/kyc/document_supported_types.rb +30 -0
- data/lib/genesis_ruby/api/constants/non_financial/kyc/document_types.rb +2 -0
- data/lib/genesis_ruby/api/constants/non_financial/kyc/genders.rb +4 -2
- data/lib/genesis_ruby/api/constants/non_financial/kyc/identity_document_methods.rb +27 -0
- data/lib/genesis_ruby/api/constants/non_financial/kyc/industry_types.rb +29 -0
- data/lib/genesis_ruby/api/constants/non_financial/kyc/languages.rb +318 -0
- data/lib/genesis_ruby/api/constants/non_financial/kyc/order_sources.rb +22 -0
- data/lib/genesis_ruby/api/constants/non_financial/kyc/profile_current_statuses.rb +27 -0
- data/lib/genesis_ruby/api/constants/non_financial/kyc/service_languages.rb +69 -0
- data/lib/genesis_ruby/api/constants/non_financial/kyc/transaction_statuses.rb +35 -0
- data/lib/genesis_ruby/api/constants/non_financial/kyc/verification_modes.rb +27 -0
- data/lib/genesis_ruby/api/constants/non_financial/kyc/verification_statuses.rb +29 -0
- data/lib/genesis_ruby/api/constants/states/state.rb +2 -0
- data/lib/genesis_ruby/api/constants/states.rb +24 -22
- data/lib/genesis_ruby/api/constants/transactions/parameters/african_mobile_operators.rb +8 -6
- data/lib/genesis_ruby/api/constants/transactions/parameters/business/payment_types.rb +4 -2
- data/lib/genesis_ruby/api/constants/transactions/parameters/cash_payments/cash_payment_types.rb +8 -6
- data/lib/genesis_ruby/api/constants/transactions/parameters/cash_payments/company_types.rb +2 -0
- data/lib/genesis_ruby/api/constants/transactions/parameters/cash_payments/genders.rb +2 -0
- data/lib/genesis_ruby/api/constants/transactions/parameters/cash_payments/marital_statuses.rb +2 -0
- data/lib/genesis_ruby/api/constants/transactions/parameters/credential_on_files.rb +5 -3
- data/lib/genesis_ruby/api/constants/transactions/parameters/customer_identification/customer_identification_owner.rb +4 -2
- data/lib/genesis_ruby/api/constants/transactions/parameters/customer_identification/customer_identification_subtype.rb +4 -2
- data/lib/genesis_ruby/api/constants/transactions/parameters/customer_identification/customer_identification_type.rb +17 -15
- data/lib/genesis_ruby/api/constants/transactions/parameters/digital_asset_types.rb +7 -5
- data/lib/genesis_ruby/api/constants/transactions/parameters/funding/business_application_identifier_types.rb +11 -9
- data/lib/genesis_ruby/api/constants/transactions/parameters/funding/identifier_types.rb +12 -10
- data/lib/genesis_ruby/api/constants/transactions/parameters/funding/receiver_account_types.rb +11 -9
- data/lib/genesis_ruby/api/constants/transactions/parameters/managed_recurring/amount_types.rb +4 -2
- data/lib/genesis_ruby/api/constants/transactions/parameters/managed_recurring/frequencies.rb +14 -12
- data/lib/genesis_ruby/api/constants/transactions/parameters/managed_recurring/intervals.rb +4 -2
- data/lib/genesis_ruby/api/constants/transactions/parameters/managed_recurring/modes.rb +4 -2
- data/lib/genesis_ruby/api/constants/transactions/parameters/managed_recurring/payment_types.rb +6 -4
- data/lib/genesis_ruby/api/constants/transactions/parameters/mobile/apple_pay/payment_subtypes.rb +5 -3
- data/lib/genesis_ruby/api/constants/transactions/parameters/mobile/google_pay/payment_subtypes.rb +5 -3
- data/lib/genesis_ruby/api/constants/transactions/parameters/mpi_protocol_sub_versions.rb +2 -0
- data/lib/genesis_ruby/api/constants/transactions/parameters/mpi_protocol_versions.rb +2 -0
- data/lib/genesis_ruby/api/constants/transactions/parameters/non_financial/billing_api/order_by_fields.rb +14 -12
- data/lib/genesis_ruby/api/constants/transactions/parameters/non_financial/billing_api/response_fields.rb +48 -46
- data/lib/genesis_ruby/api/constants/transactions/parameters/non_financial/billing_api/transaction_types.rb +29 -27
- data/lib/genesis_ruby/api/constants/transactions/parameters/non_financial/externally_processed.rb +5 -3
- data/lib/genesis_ruby/api/constants/transactions/parameters/non_financial/processing_type.rb +5 -3
- data/lib/genesis_ruby/api/constants/transactions/parameters/non_financial/sca_exemptions.rb +8 -6
- data/lib/genesis_ruby/api/constants/transactions/parameters/non_financial/sort_directions.rb +4 -2
- data/lib/genesis_ruby/api/constants/transactions/parameters/online_banking/bank_account_types.rb +6 -4
- data/lib/genesis_ruby/api/constants/transactions/parameters/online_banking/bank_code_currencies.rb +2 -0
- data/lib/genesis_ruby/api/constants/transactions/parameters/online_banking/bank_codes.rb +203 -201
- data/lib/genesis_ruby/api/constants/transactions/parameters/online_banking/iframe_targets.rb +5 -3
- data/lib/genesis_ruby/api/constants/transactions/parameters/online_banking/payment_types.rb +9 -7
- data/lib/genesis_ruby/api/constants/transactions/parameters/online_banking/payout_payment_types.rb +10 -8
- data/lib/genesis_ruby/api/constants/transactions/parameters/purpose_of_payment.rb +42 -40
- data/lib/genesis_ruby/api/constants/transactions/parameters/recurring/categories.rb +4 -2
- data/lib/genesis_ruby/api/constants/transactions/parameters/recurring/types.rb +5 -3
- data/lib/genesis_ruby/api/constants/transactions/parameters/refund/bank_account_types.rb +5 -3
- data/lib/genesis_ruby/api/constants/transactions/parameters/refund/credit_reason_indicators.rb +6 -4
- data/lib/genesis_ruby/api/constants/transactions/parameters/refund/ticket_change_indicators.rb +4 -2
- data/lib/genesis_ruby/api/constants/transactions/parameters/sca_exemptions.rb +8 -6
- data/lib/genesis_ruby/api/constants/transactions/parameters/source_of_funds.rb +8 -6
- data/lib/genesis_ruby/api/constants/transactions/parameters/threeds/version2/browser/color_depths.rb +2 -0
- data/lib/genesis_ruby/api/constants/transactions/parameters/threeds/version2/card_holder_account/password_change_indicators.rb +7 -5
- data/lib/genesis_ruby/api/constants/transactions/parameters/threeds/version2/card_holder_account/registration_indicators.rb +7 -5
- data/lib/genesis_ruby/api/constants/transactions/parameters/threeds/version2/card_holder_account/shipping_address_usage_indicators.rb +6 -4
- data/lib/genesis_ruby/api/constants/transactions/parameters/threeds/version2/card_holder_account/suspicious_activity_indicators.rb +4 -2
- data/lib/genesis_ruby/api/constants/transactions/parameters/threeds/version2/card_holder_account/update_indicators.rb +6 -4
- data/lib/genesis_ruby/api/constants/transactions/parameters/threeds/version2/control/challenge_indicators.rb +6 -4
- data/lib/genesis_ruby/api/constants/transactions/parameters/threeds/version2/control/challenge_window_sizes.rb +7 -5
- data/lib/genesis_ruby/api/constants/transactions/parameters/threeds/version2/control/device_types.rb +4 -2
- data/lib/genesis_ruby/api/constants/transactions/parameters/threeds/version2/merchant_risk/delivery_timeframes.rb +6 -4
- data/lib/genesis_ruby/api/constants/transactions/parameters/threeds/version2/merchant_risk/pre_order_purchase_indicators.rb +4 -2
- data/lib/genesis_ruby/api/constants/transactions/parameters/threeds/version2/merchant_risk/reorder_item_indicators.rb +4 -2
- data/lib/genesis_ruby/api/constants/transactions/parameters/threeds/version2/merchant_risk/shipping_indicators.rb +10 -8
- data/lib/genesis_ruby/api/constants/transactions/parameters/threeds/version2/purchase/categories.rb +9 -7
- data/lib/genesis_ruby/api/constants/transactions/parameters/threeds/version2/sdk/interfaces.rb +5 -3
- data/lib/genesis_ruby/api/constants/transactions/parameters/threeds/version2/sdk/ui_types.rb +7 -5
- data/lib/genesis_ruby/api/constants/transactions/parameters/travel_data/ancillary_charges_types.rb +25 -23
- data/lib/genesis_ruby/api/constants/transactions/parameters/wallets/pay_pal/payment_types.rb +5 -3
- data/lib/genesis_ruby/api/constants/transactions/parameters/wpf/reminder_channels.rb +4 -2
- data/lib/genesis_ruby/api/constants/transactions.rb +98 -93
- data/lib/genesis_ruby/api/mixins/constants/common.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/address_info_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/attribute_validation.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/birth_date_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/customer_address/billing_info_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/customer_address/customer_info_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/customer_address/shipping_info_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/digital_asset_type_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/document_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/african_mobile_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/async_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/bank_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/base_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/beneficiary_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/business/airlines_air_carriers_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/business/business_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/business/car_plane_and_boat_rentals_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/business/cruise_lines_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/business/event_management_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/business/furniture_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/business/hotels_and_real_estate_rentals_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/business/travel_agencies_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/cards/account_owner_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/cards/credential_on_file_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/cards/credit_card_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/cards/fx_rate_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/cards/installment_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/cards/mpi_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/cards/recurring/managed_recurring_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/cards/recurring/managed_recurring_indian_card_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/cards/recurring/recurring_category_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/cards/recurring/recurring_type_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/cards/tokenization_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/cards/tokenization_params_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/cards/ucof_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/consumer_identifier_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/crypto_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/customer_account_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/customer_identification_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/dynamic_descriptor_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/funding_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/gaming_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/gift_cards_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/mobile/apple_pay_token_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/mobile/google_pay_token_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/moto_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/notification_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/online_banking_payments/payer_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/online_banking_payments/pix_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/online_banking_payments/virtual_payment_address_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/payment_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/pending_payment_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/preauthorization_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/purpose_of_payment_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/reference_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/risk_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/sca_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/source_of_funds_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/threeds/version2/browser.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/threeds/version2/card_holder_account.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/threeds/version2/common_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/threeds/version2/control.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/threeds/version2/merchant_risk.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/threeds/version2/method.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/threeds/version2/purchase.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/threeds/version2/recurring.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/threeds/version2/sdk.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/threeds/version2/wpf_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/travel_data/airline_itinerary_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/travel_data/car_rental_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/travel_data/hotel_rental_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/travel_data/reference_ticket_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/financial/travel_data/travel_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/non_financial/billing_api/sort_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/non_financial/date_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/non_financial/fx/id_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/non_financial/fx/tier_id_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/non_financial/kyc/background_checks_attributes.rb +75 -0
- data/lib/genesis_ruby/api/mixins/requests/non_financial/kyc/customer_information_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/non_financial/kyc/deposit_limits_attributes.rb +40 -0
- data/lib/genesis_ruby/api/mixins/requests/non_financial/kyc/document_attributes.rb +62 -0
- data/lib/genesis_ruby/api/mixins/requests/non_financial/kyc/face_attributes.rb +61 -0
- data/lib/genesis_ruby/api/mixins/requests/non_financial/kyc/identity_document_attributes.rb +51 -0
- data/lib/genesis_ruby/api/mixins/requests/non_financial/kyc/kyc_billing_info_attributes.rb +87 -0
- data/lib/genesis_ruby/api/mixins/requests/non_financial/kyc/kyc_shipping_info_attributes.rb +85 -0
- data/lib/genesis_ruby/api/mixins/requests/non_financial/kyc/payment_details_attributes.rb +33 -0
- data/lib/genesis_ruby/api/mixins/requests/non_financial/kyc/verification_attributes.rb +74 -0
- data/lib/genesis_ruby/api/mixins/requests/non_financial/kyc/verification_document_attributes.rb +65 -0
- data/lib/genesis_ruby/api/mixins/requests/non_financial/mode_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/non_financial/paging_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/non_financial/tokenization/card_data_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/non_financial/tokenization/token_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/non_financial/tokenization/tokenization_attributes.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/restricted_setter.rb +2 -0
- data/lib/genesis_ruby/api/mixins/requests/wpf_reminders_attributes.rb +2 -0
- data/lib/genesis_ruby/api/notification.rb +8 -6
- data/lib/genesis_ruby/api/request.rb +8 -6
- data/lib/genesis_ruby/api/requests/base/consumer.rb +2 -0
- data/lib/genesis_ruby/api/requests/base/financial.rb +2 -0
- data/lib/genesis_ruby/api/requests/base/financials/credit_card.rb +2 -0
- data/lib/genesis_ruby/api/requests/base/financials/south_american_payments.rb +2 -0
- data/lib/genesis_ruby/api/requests/base/graphql.rb +2 -0
- data/lib/genesis_ruby/api/requests/base/non_financial/kyc/base.rb +2 -0
- data/lib/genesis_ruby/api/requests/base/reference.rb +2 -0
- data/lib/genesis_ruby/api/requests/base/versioned.rb +3 -1
- data/lib/genesis_ruby/api/requests/financial/capture.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/cards/argencard.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/cards/aura.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/cards/authorize.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/cards/authorize3d.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/cards/bancontact.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/cards/cabal.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/cards/cencosud.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/cards/credit.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/cards/elo.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/cards/naranja.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/cards/nativa.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/cards/payout.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/cards/sale.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/cards/sale3d.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/cards/tarjeta_shopping.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/cards/threeds/v2/method_continue.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/cash_payments/baloto.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/cash_payments/banco_de_occidente.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/cash_payments/boleto.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/cash_payments/cash.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/cash_payments/efecty.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/cash_payments/oxxo.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/cash_payments/pago_facil.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/cash_payments/pix.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/cash_payments/redpagos.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/crypto/bit_pay/payout.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/crypto/bit_pay/refund.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/crypto/bit_pay/sale.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/gift_cards/fashioncheque.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/gift_cards/intersolve.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/gift_cards/tcs.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/mobile/african_mobile_sale.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/mobile/apple_pay.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/mobile/google_pay.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/mobile/russian_mobile_sale.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/online_banking_payments/banco_do_brasil.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/online_banking_payments/bancomer.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/online_banking_payments/bradesco.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/online_banking_payments/davivienda.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/online_banking_payments/eps.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/online_banking_payments/idebit/pay_in.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/online_banking_payments/idebit/pay_out.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/online_banking_payments/insta_debit/pay_in.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/online_banking_payments/insta_debit/pay_out.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/online_banking_payments/itau.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/online_banking_payments/multibanco.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/online_banking_payments/my_bank.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/online_banking_payments/online_banking/pay_in.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/online_banking_payments/online_banking/pay_out.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/online_banking_payments/pay_u.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/online_banking_payments/post_finance.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/online_banking_payments/pse.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/online_banking_payments/rapi_pago.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/online_banking_payments/safety_pay.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/online_banking_payments/santander.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/online_banking_payments/sofort.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/online_banking_payments/trustly_sale.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/online_banking_payments/upi.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/online_banking_payments/webpay.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/online_banking_payments/wechat.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/payout/global_payout.rb +42 -0
- data/lib/genesis_ruby/api/requests/financial/{Preauthorizations → preauthorizations}/incremental_authorize.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/preauthorizations/partial_reversal.rb +26 -0
- data/lib/genesis_ruby/api/requests/financial/refund.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/sdd/recurring/init_recurring_sale.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/sdd/recurring/recurring_sale.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/sdd/refund.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/sdd/sale.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/void.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/vouchers/neosurf.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/wallets/alipay.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/wallets/pay_pal.rb +2 -0
- data/lib/genesis_ruby/api/requests/non_financial/billing_api/transactions.rb +2 -0
- data/lib/genesis_ruby/api/requests/non_financial/consumers/create.rb +2 -0
- data/lib/genesis_ruby/api/requests/non_financial/consumers/disable.rb +2 -0
- data/lib/genesis_ruby/api/requests/non_financial/consumers/enable.rb +2 -0
- data/lib/genesis_ruby/api/requests/non_financial/consumers/get_cards.rb +2 -0
- data/lib/genesis_ruby/api/requests/non_financial/consumers/retrieve.rb +2 -0
- data/lib/genesis_ruby/api/requests/non_financial/consumers/update.rb +2 -0
- data/lib/genesis_ruby/api/requests/non_financial/fraud/chargeback/date_range.rb +2 -0
- data/lib/genesis_ruby/api/requests/non_financial/fraud/chargeback/transaction.rb +2 -0
- data/lib/genesis_ruby/api/requests/non_financial/fraud/reports/date_range.rb +2 -0
- data/lib/genesis_ruby/api/requests/non_financial/fraud/reports/transaction.rb +2 -0
- data/lib/genesis_ruby/api/requests/non_financial/fraud/retrieval/date_range.rb +2 -0
- data/lib/genesis_ruby/api/requests/non_financial/fraud/retrieval/transaction.rb +2 -0
- data/lib/genesis_ruby/api/requests/non_financial/fx/get_rate.rb +6 -3
- data/lib/genesis_ruby/api/requests/non_financial/fx/get_rates.rb +7 -2
- data/lib/genesis_ruby/api/requests/non_financial/fx/get_tier.rb +7 -2
- data/lib/genesis_ruby/api/requests/non_financial/fx/get_tiers.rb +2 -0
- data/lib/genesis_ruby/api/requests/non_financial/fx/search_rate.rb +7 -2
- data/lib/genesis_ruby/api/requests/non_financial/installments/fetch.rb +2 -0
- data/lib/genesis_ruby/api/requests/non_financial/installments/show.rb +7 -2
- data/lib/genesis_ruby/api/requests/non_financial/kyc/call/create.rb +90 -0
- data/lib/genesis_ruby/api/requests/non_financial/kyc/call/update.rb +60 -0
- data/lib/genesis_ruby/api/requests/non_financial/kyc/cnpj/check.rb +52 -0
- data/lib/genesis_ruby/api/requests/non_financial/kyc/consumer_registration/create.rb +4 -2
- data/lib/genesis_ruby/api/requests/non_financial/kyc/consumer_registration/update.rb +52 -0
- data/lib/genesis_ruby/api/requests/non_financial/kyc/cpf/check.rb +52 -0
- data/lib/genesis_ruby/api/requests/non_financial/kyc/identity_document/download.rb +43 -0
- data/lib/genesis_ruby/api/requests/non_financial/kyc/identity_document/upload.rb +67 -0
- data/lib/genesis_ruby/api/requests/non_financial/kyc/transaction/create.rb +190 -0
- data/lib/genesis_ruby/api/requests/non_financial/kyc/transaction/update.rb +63 -0
- data/lib/genesis_ruby/api/requests/non_financial/kyc/verifications/create.rb +90 -0
- data/lib/genesis_ruby/api/requests/non_financial/kyc/verifications/register.rb +44 -0
- data/lib/genesis_ruby/api/requests/non_financial/kyc/verifications/remote_identity.rb +50 -0
- data/lib/genesis_ruby/api/requests/non_financial/kyc/verifications/status.rb +44 -0
- data/lib/genesis_ruby/api/requests/non_financial/payee/account/create.rb +73 -0
- data/lib/genesis_ruby/api/requests/non_financial/payee/account/list.rb +74 -0
- data/lib/genesis_ruby/api/requests/non_financial/payee/account/retrieve.rb +61 -0
- data/lib/genesis_ruby/api/requests/non_financial/payee/create.rb +60 -0
- data/lib/genesis_ruby/api/requests/non_financial/payee/retrieve.rb +57 -0
- data/lib/genesis_ruby/api/requests/non_financial/processed_transactions/date_range.rb +2 -0
- data/lib/genesis_ruby/api/requests/non_financial/processed_transactions/post_date_range.rb +2 -0
- data/lib/genesis_ruby/api/requests/non_financial/processed_transactions/transaction.rb +2 -0
- data/lib/genesis_ruby/api/requests/non_financial/reconcile/date_range.rb +2 -0
- data/lib/genesis_ruby/api/requests/non_financial/reconcile/transaction.rb +2 -0
- data/lib/genesis_ruby/api/requests/non_financial/sca/checker.rb +2 -0
- data/lib/genesis_ruby/api/requests/non_financial/tokenization/cryptogram.rb +2 -0
- data/lib/genesis_ruby/api/requests/non_financial/tokenization/delete_token.rb +2 -0
- data/lib/genesis_ruby/api/requests/non_financial/tokenization/detokenize.rb +2 -0
- data/lib/genesis_ruby/api/requests/non_financial/tokenization/get_card.rb +2 -0
- data/lib/genesis_ruby/api/requests/non_financial/tokenization/tokenize.rb +2 -0
- data/lib/genesis_ruby/api/requests/non_financial/tokenization/update_token.rb +2 -0
- data/lib/genesis_ruby/api/requests/non_financial/tokenization/validate_token.rb +2 -0
- data/lib/genesis_ruby/api/requests/wpf/create.rb +2 -0
- data/lib/genesis_ruby/api/requests/wpf/reconcile.rb +2 -0
- data/lib/genesis_ruby/api/response.rb +2 -0
- data/lib/genesis_ruby/builder.rb +6 -4
- data/lib/genesis_ruby/builders/base.rb +2 -0
- data/lib/genesis_ruby/builders/form.rb +2 -0
- data/lib/genesis_ruby/builders/graphql.rb +2 -0
- data/lib/genesis_ruby/builders/json.rb +2 -0
- data/lib/genesis_ruby/builders/xml.rb +2 -0
- data/lib/genesis_ruby/configuration.rb +3 -1
- data/lib/genesis_ruby/connection.rb +2 -0
- data/lib/genesis_ruby/dependencies.rb +2 -0
- data/lib/genesis_ruby/errors/builder_error.rb +2 -0
- data/lib/genesis_ruby/errors/endpoint_not_set_error.rb +2 -0
- data/lib/genesis_ruby/errors/error.rb +2 -0
- data/lib/genesis_ruby/errors/invalid_argument_error.rb +2 -0
- data/lib/genesis_ruby/errors/network_error.rb +2 -0
- data/lib/genesis_ruby/errors/object_formatter_error.rb +2 -0
- data/lib/genesis_ruby/errors/parameter_error.rb +2 -0
- data/lib/genesis_ruby/errors/parser_error.rb +2 -0
- data/lib/genesis_ruby/errors/request_error.rb +2 -0
- data/lib/genesis_ruby/errors/response_error.rb +2 -0
- data/lib/genesis_ruby/network/adapter/base_adapter.rb +2 -0
- data/lib/genesis_ruby/network/adapter/net_http_adapter.rb +4 -0
- data/lib/genesis_ruby/network/base_network.rb +5 -3
- data/lib/genesis_ruby/network/net_http.rb +2 -0
- data/lib/genesis_ruby/parser.rb +4 -2
- data/lib/genesis_ruby/parsers/base.rb +2 -0
- data/lib/genesis_ruby/parsers/json.rb +2 -0
- data/lib/genesis_ruby/parsers/xml.rb +2 -0
- data/lib/genesis_ruby/utils/common.rb +2 -0
- data/lib/genesis_ruby/utils/country.rb +2 -0
- data/lib/genesis_ruby/utils/formatters/base.rb +2 -0
- data/lib/genesis_ruby/utils/formatters/response/definitions.rb +2 -0
- data/lib/genesis_ruby/utils/formatters/response/formats/amount.rb +2 -0
- data/lib/genesis_ruby/utils/formatters/response/formats/timestamp.rb +2 -0
- data/lib/genesis_ruby/utils/formatters/response/loader.rb +2 -0
- data/lib/genesis_ruby/utils/money/base/strategy.rb +2 -0
- data/lib/genesis_ruby/utils/money/conversions/amount_to_exponent.rb +2 -0
- data/lib/genesis_ruby/utils/money/conversions/exponent_to_amount.rb +2 -0
- data/lib/genesis_ruby/utils/money/format.rb +2 -0
- data/lib/genesis_ruby/utils/money_format.rb +2 -0
- data/lib/genesis_ruby/utils/object_formatter.rb +2 -0
- data/lib/genesis_ruby/utils/options/api_config.rb +2 -0
- data/lib/genesis_ruby/utils/options/base.rb +2 -0
- data/lib/genesis_ruby/utils/options/network_adapter_config.rb +2 -0
- data/lib/genesis_ruby/utils/options/reminder.rb +2 -0
- data/lib/genesis_ruby/utils/threeds/v2.rb +2 -0
- data/lib/genesis_ruby/utils/transactions/financial_types.rb +2 -0
- data/lib/genesis_ruby/utils/transactions/references/capturable_types.rb +2 -0
- data/lib/genesis_ruby/utils/transactions/references/refundable_types.rb +2 -0
- data/lib/genesis_ruby/utils/transactions/references/voidable_types.rb +2 -0
- data/lib/genesis_ruby/utils/transactions/travel_data/airline_itinerary/base.rb +2 -0
- data/lib/genesis_ruby/utils/transactions/travel_data/airline_itinerary/leg.rb +2 -0
- data/lib/genesis_ruby/utils/transactions/travel_data/airline_itinerary/tax.rb +2 -0
- data/lib/genesis_ruby/utils/transactions/wpf_types.rb +2 -0
- data/lib/genesis_ruby/version.rb +3 -1
- data/lib/genesis_ruby.rb +2 -0
- metadata +46 -3
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
module GenesisRuby
|
2
4
|
module Api
|
3
5
|
module Requests
|
@@ -48,9 +50,12 @@ module GenesisRuby
|
|
48
50
|
def process_request_parameters
|
49
51
|
super
|
50
52
|
|
51
|
-
request_path.
|
53
|
+
processed_path = request_path.gsub(':tier_id', tier_id.to_s)
|
52
54
|
|
53
|
-
init_api_gateway_configuration
|
55
|
+
init_api_gateway_configuration(
|
56
|
+
request_path: "#{version}/#{processed_path}",
|
57
|
+
include_token: false
|
58
|
+
)
|
54
59
|
end
|
55
60
|
|
56
61
|
end
|
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
module GenesisRuby
|
2
4
|
module Api
|
3
5
|
module Requests
|
@@ -45,9 +47,12 @@ module GenesisRuby
|
|
45
47
|
def process_request_parameters
|
46
48
|
super
|
47
49
|
|
48
|
-
request_path.
|
50
|
+
processed_path = request_path.gsub(':installment_id', installment_id.to_s)
|
49
51
|
|
50
|
-
init_api_gateway_configuration
|
52
|
+
init_api_gateway_configuration(
|
53
|
+
request_path: "#{version}/#{processed_path}",
|
54
|
+
include_token: false
|
55
|
+
)
|
51
56
|
end
|
52
57
|
|
53
58
|
end
|
@@ -0,0 +1,90 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'genesis_ruby/api/constants/non_financial/kyc/service_languages'
|
4
|
+
|
5
|
+
module GenesisRuby
|
6
|
+
module Api
|
7
|
+
module Requests
|
8
|
+
module NonFinancial
|
9
|
+
module Kyc
|
10
|
+
module Call
|
11
|
+
# Create Call Request class for KYC Non-Financial API services
|
12
|
+
# This method is used to make a call or send an SMS to a given phone number.
|
13
|
+
class Create < Api::Requests::Base::NonFinancial::Kyc::Base
|
14
|
+
|
15
|
+
SERVICE_TYPE_SMS = 1
|
16
|
+
SERVICE_TYPE_VOICE = 2
|
17
|
+
|
18
|
+
VALID_SERVICE_TYPES = [SERVICE_TYPE_SMS, SERVICE_TYPE_VOICE].freeze
|
19
|
+
|
20
|
+
attr_accessor :customer_username, :customer_unique_id, :transaction_unique_id, :service_language,
|
21
|
+
:service_type
|
22
|
+
attr_reader :customer_phone_number, :security_code
|
23
|
+
|
24
|
+
# Initialize the Make Call document request
|
25
|
+
def initialize(configuration, _builder_interface = nil)
|
26
|
+
super configuration
|
27
|
+
|
28
|
+
self.request_path = 'create_authentication'
|
29
|
+
end
|
30
|
+
|
31
|
+
# Set the customer username for the Make Call request
|
32
|
+
def customer_phone_number=(value)
|
33
|
+
error_message = format(
|
34
|
+
'Invalid value given for %{attribute}',
|
35
|
+
attribute: __method__
|
36
|
+
)
|
37
|
+
raise GenesisRuby::InvalidArgumentError, error_message unless value.nil? || value =~ /^\d+$/
|
38
|
+
|
39
|
+
@customer_phone_number = value
|
40
|
+
end
|
41
|
+
|
42
|
+
# Set the service type for the Make Call request
|
43
|
+
def security_code=(value)
|
44
|
+
error_message = format(
|
45
|
+
'Invalid value given for %{attribute}',
|
46
|
+
attribute: __method__
|
47
|
+
)
|
48
|
+
raise GenesisRuby::InvalidArgumentError, error_message unless value.nil? || value =~ /^[1-9]\d{3}$/
|
49
|
+
|
50
|
+
@security_code = value
|
51
|
+
end
|
52
|
+
|
53
|
+
protected
|
54
|
+
|
55
|
+
# Initialize field validations for the Make Call request
|
56
|
+
def init_field_validations
|
57
|
+
super
|
58
|
+
|
59
|
+
required_fields.push *%i[
|
60
|
+
transaction_unique_id
|
61
|
+
customer_phone_number
|
62
|
+
service_language
|
63
|
+
security_code
|
64
|
+
service_type
|
65
|
+
]
|
66
|
+
|
67
|
+
field_values.merge! service_type: VALID_SERVICE_TYPES,
|
68
|
+
service_language: GenesisRuby::Api::Constants::NonFinancial::Kyc::ServiceLanguages.all # rubocop:disable Layout/LineLength
|
69
|
+
end
|
70
|
+
|
71
|
+
# Build the request structure for the Make Call request
|
72
|
+
def request_structure
|
73
|
+
{
|
74
|
+
customer_unique_id: customer_unique_id,
|
75
|
+
customer_username: customer_username,
|
76
|
+
transaction_unique_id: transaction_unique_id,
|
77
|
+
customer_phone_number: customer_phone_number,
|
78
|
+
service_language: service_language,
|
79
|
+
security_code: security_code,
|
80
|
+
service_type: service_type
|
81
|
+
}
|
82
|
+
end
|
83
|
+
|
84
|
+
end
|
85
|
+
end
|
86
|
+
end
|
87
|
+
end
|
88
|
+
end
|
89
|
+
end
|
90
|
+
end
|
@@ -0,0 +1,60 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'genesis_ruby/api/constants/non_financial/kyc/verification_statuses'
|
4
|
+
|
5
|
+
module GenesisRuby
|
6
|
+
module Api
|
7
|
+
module Requests
|
8
|
+
module NonFinancial
|
9
|
+
module Kyc
|
10
|
+
module Call
|
11
|
+
# Update Call Request class for KYC Non-Financial API services
|
12
|
+
# This method is used to update the call status with the latest info received from the main system.
|
13
|
+
# It also updates the transaction associated with this verification call.
|
14
|
+
class Update < Api::Requests::Base::NonFinancial::Kyc::Base
|
15
|
+
|
16
|
+
attr_accessor :reference_id, :security_code_input
|
17
|
+
attr_writer :verification_status
|
18
|
+
|
19
|
+
# Initialize the Update Call document request
|
20
|
+
def initialize(configuration, _builder_interface = nil)
|
21
|
+
super configuration
|
22
|
+
|
23
|
+
self.request_path = 'update_authentication'
|
24
|
+
end
|
25
|
+
|
26
|
+
def verification_status
|
27
|
+
@verification_status.to_s
|
28
|
+
end
|
29
|
+
|
30
|
+
protected
|
31
|
+
|
32
|
+
# Initialize the field validations for the Update Call request
|
33
|
+
def init_field_validations
|
34
|
+
super
|
35
|
+
|
36
|
+
required_fields.push *%i[
|
37
|
+
reference_id
|
38
|
+
security_code_input
|
39
|
+
verification_status
|
40
|
+
]
|
41
|
+
|
42
|
+
field_values.merge! verification_status: Constants::NonFinancial::Kyc::VerificationStatuses.all
|
43
|
+
end
|
44
|
+
|
45
|
+
# Build the request structure for the Update Call request
|
46
|
+
def request_structure
|
47
|
+
{
|
48
|
+
reference_id: reference_id,
|
49
|
+
security_code_input: security_code_input,
|
50
|
+
verification_status: verification_status
|
51
|
+
}
|
52
|
+
end
|
53
|
+
|
54
|
+
end
|
55
|
+
end
|
56
|
+
end
|
57
|
+
end
|
58
|
+
end
|
59
|
+
end
|
60
|
+
end
|
@@ -0,0 +1,52 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module GenesisRuby
|
4
|
+
module Api
|
5
|
+
module Requests
|
6
|
+
module NonFinancial
|
7
|
+
module Kyc
|
8
|
+
module Cnpj
|
9
|
+
# Check the status of a specific Brazilian company's CNPJ number
|
10
|
+
class Check < Api::Requests::Base::NonFinancial::Kyc::Base
|
11
|
+
|
12
|
+
include Api::Mixins::Requests::DocumentAttributes
|
13
|
+
|
14
|
+
# Initializes the CNPJ Check Request
|
15
|
+
def initialize(configuration, _builder_interface = nil)
|
16
|
+
super configuration
|
17
|
+
|
18
|
+
self.request_path = 'cnpj/:document_id'
|
19
|
+
end
|
20
|
+
|
21
|
+
protected
|
22
|
+
|
23
|
+
# Sets the request field validations
|
24
|
+
def init_field_validations
|
25
|
+
super
|
26
|
+
|
27
|
+
required_fields.push *%i[document_id]
|
28
|
+
end
|
29
|
+
|
30
|
+
# CNPJ Check request structure
|
31
|
+
def request_structure
|
32
|
+
{}
|
33
|
+
end
|
34
|
+
|
35
|
+
# Override API endpoint with provided document ID
|
36
|
+
def process_request_parameters
|
37
|
+
super
|
38
|
+
|
39
|
+
processed_path = request_path.gsub(':document_id', document_id.to_s)
|
40
|
+
|
41
|
+
init_kyc_service_configuration(
|
42
|
+
request_path: "api/#{version}/#{processed_path}"
|
43
|
+
)
|
44
|
+
end
|
45
|
+
|
46
|
+
end
|
47
|
+
end
|
48
|
+
end
|
49
|
+
end
|
50
|
+
end
|
51
|
+
end
|
52
|
+
end
|
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
module GenesisRuby
|
2
4
|
module Api
|
3
5
|
module Requests
|
@@ -51,7 +53,6 @@ module GenesisRuby
|
|
51
53
|
super
|
52
54
|
|
53
55
|
required_fields.push *%i[
|
54
|
-
customer_information_structure
|
55
56
|
customer_unique_id
|
56
57
|
customer_registration_date
|
57
58
|
customer_registration_ip_address
|
@@ -59,7 +60,8 @@ module GenesisRuby
|
|
59
60
|
|
60
61
|
field_values.merge! device_fingerprint_type: [1, 2, 3],
|
61
62
|
profile_action_type: [1, 2],
|
62
|
-
profile_current_status:
|
63
|
+
profile_current_status:
|
64
|
+
GenesisRuby::Api::Constants::NonFinancial::Kyc::ProfileCurrentStatuses.all,
|
63
65
|
industry_type: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
|
64
66
|
field_values.merge! customer_information_required_field_values
|
65
67
|
end
|
@@ -0,0 +1,52 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'genesis_ruby/api/constants/non_financial/kyc/profile_current_statuses'
|
4
|
+
|
5
|
+
module GenesisRuby
|
6
|
+
module Api
|
7
|
+
module Requests
|
8
|
+
module NonFinancial
|
9
|
+
module Kyc
|
10
|
+
module ConsumerRegistration
|
11
|
+
# Update Consumer Registration Request class for KYC Non-Financial API services
|
12
|
+
class Update < Api::Requests::Base::NonFinancial::Kyc::Base
|
13
|
+
|
14
|
+
attr_accessor :reference_id, :profile_current_status, :status_reason
|
15
|
+
|
16
|
+
def initialize(configuration, _builder_interface = nil)
|
17
|
+
super configuration
|
18
|
+
|
19
|
+
self.request_path = 'update_consumer'
|
20
|
+
end
|
21
|
+
|
22
|
+
protected
|
23
|
+
|
24
|
+
# Sets the request field validations
|
25
|
+
def init_field_validations
|
26
|
+
super
|
27
|
+
|
28
|
+
required_fields.push *%i[
|
29
|
+
reference_id
|
30
|
+
profile_current_status
|
31
|
+
]
|
32
|
+
|
33
|
+
field_values.merge! profile_current_status:
|
34
|
+
GenesisRuby::Api::Constants::NonFinancial::Kyc::ProfileCurrentStatuses.all
|
35
|
+
end
|
36
|
+
|
37
|
+
# Defines the request structure
|
38
|
+
def request_structure
|
39
|
+
{
|
40
|
+
reference_id: reference_id,
|
41
|
+
profile_current_status: profile_current_status,
|
42
|
+
status_reason: status_reason
|
43
|
+
}
|
44
|
+
end
|
45
|
+
|
46
|
+
end
|
47
|
+
end
|
48
|
+
end
|
49
|
+
end
|
50
|
+
end
|
51
|
+
end
|
52
|
+
end
|
@@ -0,0 +1,52 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module GenesisRuby
|
4
|
+
module Api
|
5
|
+
module Requests
|
6
|
+
module NonFinancial
|
7
|
+
module Kyc
|
8
|
+
module Cpf
|
9
|
+
# Check the status of a specific Brazilian personal's CPF number
|
10
|
+
class Check < Api::Requests::Base::NonFinancial::Kyc::Base
|
11
|
+
|
12
|
+
include Api::Mixins::Requests::DocumentAttributes
|
13
|
+
|
14
|
+
# Initializes the CPF Check Request
|
15
|
+
def initialize(configuration, _builder_interface = nil)
|
16
|
+
super configuration
|
17
|
+
|
18
|
+
self.request_path = 'cpf/:document_id'
|
19
|
+
end
|
20
|
+
|
21
|
+
protected
|
22
|
+
|
23
|
+
# Sets the request field validations
|
24
|
+
def init_field_validations
|
25
|
+
super
|
26
|
+
|
27
|
+
required_fields.push *%i[document_id]
|
28
|
+
end
|
29
|
+
|
30
|
+
# CPF Check request structure
|
31
|
+
def request_structure
|
32
|
+
{}
|
33
|
+
end
|
34
|
+
|
35
|
+
# Override API endpoint with provided document ID
|
36
|
+
def process_request_parameters
|
37
|
+
super
|
38
|
+
|
39
|
+
processed_path = request_path.gsub(':document_id', document_id.to_s)
|
40
|
+
|
41
|
+
init_kyc_service_configuration(
|
42
|
+
request_path: "api/#{version}/#{processed_path}"
|
43
|
+
)
|
44
|
+
end
|
45
|
+
|
46
|
+
end
|
47
|
+
end
|
48
|
+
end
|
49
|
+
end
|
50
|
+
end
|
51
|
+
end
|
52
|
+
end
|
@@ -0,0 +1,43 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module GenesisRuby
|
4
|
+
module Api
|
5
|
+
module Requests
|
6
|
+
module NonFinancial
|
7
|
+
module Kyc
|
8
|
+
module IdentityDocument
|
9
|
+
# Uploaded documents will be stored by legal provisions and they can be requested for review.
|
10
|
+
class Download < Api::Requests::Base::NonFinancial::Kyc::Base
|
11
|
+
|
12
|
+
attr_accessor :identity_document_id
|
13
|
+
|
14
|
+
# Initialize the Download document request
|
15
|
+
def initialize(configuration, _builder_interface = nil)
|
16
|
+
super configuration
|
17
|
+
|
18
|
+
self.request_path = 'download_document'
|
19
|
+
end
|
20
|
+
|
21
|
+
protected
|
22
|
+
|
23
|
+
# Initializes the required fields for the Download Document request
|
24
|
+
def init_field_validations
|
25
|
+
super
|
26
|
+
|
27
|
+
required_fields.push *%i[identity_document_id]
|
28
|
+
end
|
29
|
+
|
30
|
+
# Returns the request structure for the Download Document request
|
31
|
+
def request_structure
|
32
|
+
{
|
33
|
+
identity_document_id: identity_document_id
|
34
|
+
}
|
35
|
+
end
|
36
|
+
|
37
|
+
end
|
38
|
+
end
|
39
|
+
end
|
40
|
+
end
|
41
|
+
end
|
42
|
+
end
|
43
|
+
end
|
@@ -0,0 +1,67 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'genesis_ruby/api/constants/non_financial/kyc/identity_document_methods'
|
4
|
+
|
5
|
+
module GenesisRuby
|
6
|
+
module Api
|
7
|
+
module Requests
|
8
|
+
module NonFinancial
|
9
|
+
module Kyc
|
10
|
+
module IdentityDocument
|
11
|
+
# Used to verify documents provided by the customer.
|
12
|
+
class Upload < Api::Requests::Base::NonFinancial::Kyc::Base
|
13
|
+
|
14
|
+
include Api::Mixins::Requests::NonFinancial::Kyc::IdentityDocumentAttributes
|
15
|
+
|
16
|
+
attr_accessor :customer_username, :customer_unique_id, :transaction_unique_id, :reference_id, :method
|
17
|
+
|
18
|
+
# Initialize the Upload Document request
|
19
|
+
def initialize(configuration, _builder_interface = nil)
|
20
|
+
super(configuration)
|
21
|
+
|
22
|
+
self.request_path = 'upload_document'
|
23
|
+
end
|
24
|
+
|
25
|
+
protected
|
26
|
+
|
27
|
+
# Initializes the required fields for the Upload Document request
|
28
|
+
def init_field_validations
|
29
|
+
super
|
30
|
+
|
31
|
+
required_fields.push *%i[
|
32
|
+
method
|
33
|
+
]
|
34
|
+
|
35
|
+
field_values.merge! method: GenesisRuby::Api::Constants::NonFinancial::Kyc::IdentityDocumentMethods.all
|
36
|
+
end
|
37
|
+
|
38
|
+
# Validates the request parameters
|
39
|
+
def check_requirements
|
40
|
+
raise ParameterError, 'Either transaction_unique_id or reference_id field has to be set.' if transaction_unique_id.nil? && reference_id.nil? # rubocop:disable Layout/LineLength
|
41
|
+
raise ParameterError, 'Add at least one document' if docs.empty?
|
42
|
+
|
43
|
+
super
|
44
|
+
end
|
45
|
+
|
46
|
+
# Returns the request structure for the Upload Document request
|
47
|
+
def request_structure # rubocop:disable Metrics/MethodLength
|
48
|
+
{
|
49
|
+
customer_username: customer_username,
|
50
|
+
customer_unique_id: customer_unique_id,
|
51
|
+
transaction_unique_id: transaction_unique_id,
|
52
|
+
reference_id: reference_id,
|
53
|
+
method: method,
|
54
|
+
doc: get_doc(0),
|
55
|
+
doc2: get_doc(1),
|
56
|
+
doc3: get_doc(2),
|
57
|
+
doc4: get_doc(3)
|
58
|
+
}
|
59
|
+
end
|
60
|
+
|
61
|
+
end
|
62
|
+
end
|
63
|
+
end
|
64
|
+
end
|
65
|
+
end
|
66
|
+
end
|
67
|
+
end
|