genesis_ruby 0.2.6 → 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 +18 -0
- data/Gemfile.lock +19 -19
- data/README.md +21 -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 +6 -4
- 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 +2 -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 +2 -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/incremental_authorize.rb +2 -0
- data/lib/genesis_ruby/api/requests/financial/preauthorizations/partial_reversal.rb +2 -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 +2 -0
- data/lib/genesis_ruby/api/requests/non_financial/kyc/consumer_registration/update.rb +2 -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 +2 -43
- 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 +39 -2
@@ -0,0 +1,90 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'genesis_ruby/api/constants/non_financial/kyc/address_supported_types'
|
4
|
+
require 'genesis_ruby/api/constants/non_financial/kyc/languages'
|
5
|
+
require 'genesis_ruby/api/constants/non_financial/kyc/verification_modes'
|
6
|
+
|
7
|
+
module GenesisRuby
|
8
|
+
module Api
|
9
|
+
module Requests
|
10
|
+
module NonFinancial
|
11
|
+
module Kyc
|
12
|
+
module Verifications
|
13
|
+
# The verification request will provide a link that will be used to redirect the customer.
|
14
|
+
# The customer will provide the required documents and will be verified against them.
|
15
|
+
# As a result, the user will be redirected back to merchant based on the provided redirect URL.
|
16
|
+
class Create < Api::Requests::Base::NonFinancial::Kyc::Base
|
17
|
+
|
18
|
+
include Api::Mixins::Requests::NonFinancial::Kyc::BackgroundChecksAttributes
|
19
|
+
include Api::Mixins::Requests::NonFinancial::Kyc::FaceAttributes
|
20
|
+
include Api::Mixins::Requests::NonFinancial::Kyc::VerificationAttributes
|
21
|
+
include Api::Mixins::Requests::NonFinancial::Kyc::VerificationDocumentAttributes
|
22
|
+
|
23
|
+
attr_accessor :language, :address_backside_proof_required, :allow_retry, :verification_mode
|
24
|
+
attr_reader :redirect_url, :address_supported_types
|
25
|
+
|
26
|
+
# Initializes the Create Verification Request
|
27
|
+
def initialize(configuration, _builder_interface = nil)
|
28
|
+
super configuration
|
29
|
+
|
30
|
+
self.request_path = 'verifications'
|
31
|
+
end
|
32
|
+
|
33
|
+
# URL where the customer is sent to after completing the verification process
|
34
|
+
def redirect_url=(value)
|
35
|
+
unless GenesisRuby::Utils::Common.valid_url?(value)
|
36
|
+
raise ParameterError, "Invalid URL given for #{__method__}"
|
37
|
+
end
|
38
|
+
|
39
|
+
@redirect_url = value
|
40
|
+
end
|
41
|
+
|
42
|
+
# Supported types of address that can be verified
|
43
|
+
def address_supported_types=(value)
|
44
|
+
parse_array_of_strings attribute: __method__,
|
45
|
+
value: value,
|
46
|
+
allowed: Api::Constants::NonFinancial::Kyc::AddressSupportedTypes.all,
|
47
|
+
allow_empty: true
|
48
|
+
end
|
49
|
+
|
50
|
+
protected
|
51
|
+
|
52
|
+
def init_field_validations
|
53
|
+
required_fields.push *%i[email]
|
54
|
+
|
55
|
+
field_values.merge!(
|
56
|
+
language: Api::Constants::NonFinancial::Kyc::Languages.all,
|
57
|
+
address_backside_proof_required: [true, false],
|
58
|
+
allow_retry: [true, false],
|
59
|
+
verification_mode: Api::Constants::NonFinancial::Kyc::VerificationModes.all
|
60
|
+
)
|
61
|
+
end
|
62
|
+
|
63
|
+
# Returns request structure for the Create verification
|
64
|
+
def request_structure # rubocop:disable Metrics/MethodLength
|
65
|
+
{
|
66
|
+
email: email,
|
67
|
+
country: country,
|
68
|
+
language: language,
|
69
|
+
redirect_url: redirect_url,
|
70
|
+
reference_id: reference_id,
|
71
|
+
document_supported_types: document_supported_types,
|
72
|
+
address_supported_types: address_supported_types,
|
73
|
+
face: face_attributes_structure,
|
74
|
+
backside_proof_required: backside_proof_required,
|
75
|
+
address_backside_proof_required: address_backside_proof_required,
|
76
|
+
expiry_date: expiry_date,
|
77
|
+
allow_retry: allow_retry,
|
78
|
+
verification_mode: verification_mode,
|
79
|
+
background_checks: background_checks_attributes_structure,
|
80
|
+
document: verification_document_attributes_structure
|
81
|
+
}
|
82
|
+
end
|
83
|
+
|
84
|
+
end
|
85
|
+
end
|
86
|
+
end
|
87
|
+
end
|
88
|
+
end
|
89
|
+
end
|
90
|
+
end
|
@@ -0,0 +1,44 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module GenesisRuby
|
4
|
+
module Api
|
5
|
+
module Requests
|
6
|
+
module NonFinancial
|
7
|
+
module Kyc
|
8
|
+
module Verifications
|
9
|
+
# Verification register request can be performed by reference_id. A reference id registration
|
10
|
+
# allows you to store the reference id in Genesis and receive notifications in Genesis for it.
|
11
|
+
class Register < Api::Requests::Base::NonFinancial::Kyc::Base
|
12
|
+
|
13
|
+
include Api::Mixins::Requests::Financial::ReferenceAttributes
|
14
|
+
|
15
|
+
# Initialize the request
|
16
|
+
def initialize(configuration, _builder_interface = nil)
|
17
|
+
super configuration
|
18
|
+
|
19
|
+
self.request_path = 'verifications/register'
|
20
|
+
end
|
21
|
+
|
22
|
+
protected
|
23
|
+
|
24
|
+
# Set the request field validations
|
25
|
+
def init_field_validations
|
26
|
+
super
|
27
|
+
|
28
|
+
required_fields.push *%i[reference_id]
|
29
|
+
end
|
30
|
+
|
31
|
+
# Return request structure
|
32
|
+
def request_structure
|
33
|
+
{
|
34
|
+
reference_id: reference_id
|
35
|
+
}
|
36
|
+
end
|
37
|
+
|
38
|
+
end
|
39
|
+
end
|
40
|
+
end
|
41
|
+
end
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
@@ -1,4 +1,4 @@
|
|
1
|
-
|
1
|
+
# frozen_string_literal: true
|
2
2
|
|
3
3
|
module GenesisRuby
|
4
4
|
module Api
|
@@ -10,6 +10,7 @@ module GenesisRuby
|
|
10
10
|
class RemoteIdentity < Api::Requests::Base::NonFinancial::Kyc::Base
|
11
11
|
|
12
12
|
include Api::Mixins::Requests::NonFinancial::Kyc::DocumentAttributes
|
13
|
+
include Api::Mixins::Requests::NonFinancial::Kyc::VerificationAttributes
|
13
14
|
|
14
15
|
# Initializes the Remote Identity Verification Request
|
15
16
|
def initialize(configuration, _builder_interface = nil)
|
@@ -18,48 +19,6 @@ module GenesisRuby
|
|
18
19
|
self.request_path = 'verifications'
|
19
20
|
end
|
20
21
|
|
21
|
-
attr_accessor :reference_id, :country, :backside_proof_required
|
22
|
-
attr_reader :email
|
23
|
-
|
24
|
-
# Sets the email address for the Remote Identity verification
|
25
|
-
def email=(value)
|
26
|
-
raise InvalidArgumentError unless value =~ /\A.+@.+\..+\Z/
|
27
|
-
|
28
|
-
@email = value
|
29
|
-
end
|
30
|
-
|
31
|
-
# Gets the expiry date for the Remote Identity verification
|
32
|
-
def expiry_date
|
33
|
-
@expiry_date&.strftime(
|
34
|
-
Api::Constants::DateTimeFormats::YYYY_MM_DD_ISO_8601
|
35
|
-
)
|
36
|
-
end
|
37
|
-
|
38
|
-
# Sets the expiry date for the Remote Identity verification
|
39
|
-
def expiry_date=(value)
|
40
|
-
parse_date attribute: __method__, value: value, allow_empty: true
|
41
|
-
end
|
42
|
-
|
43
|
-
# Sets the document supported types for the Remote Identity verification
|
44
|
-
def document_supported_types=(value)
|
45
|
-
parse_array_of_strings attribute: __method__,
|
46
|
-
value: value,
|
47
|
-
allowed: Api::Constants::NonFinancial::Kyc::DocumentSupportedTypes.all
|
48
|
-
end
|
49
|
-
|
50
|
-
# Returns the document supported types for the Remote Identity verification
|
51
|
-
def document_supported_types
|
52
|
-
@document_supported_types || []
|
53
|
-
end
|
54
|
-
|
55
|
-
# Initializes field validations for the Remote Identity verification request
|
56
|
-
def init_field_validations
|
57
|
-
super
|
58
|
-
|
59
|
-
field_values.merge! country: GenesisRuby::Utils::Country::COUNTRIES.keys.map(&:upcase),
|
60
|
-
backside_proof_required: [true, false]
|
61
|
-
end
|
62
|
-
|
63
22
|
protected
|
64
23
|
|
65
24
|
# Performs validation checks for the Remote Identity verification request
|
@@ -0,0 +1,44 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module GenesisRuby
|
4
|
+
module Api
|
5
|
+
module Requests
|
6
|
+
module NonFinancial
|
7
|
+
module Kyc
|
8
|
+
module Verifications
|
9
|
+
# Verification status check request can be performed by reference_id. A status check may be needed
|
10
|
+
# if async notification has not arrived yet or when kyc notifications are not used in general.
|
11
|
+
class Status < Api::Requests::Base::NonFinancial::Kyc::Base
|
12
|
+
|
13
|
+
include Api::Mixins::Requests::Financial::ReferenceAttributes
|
14
|
+
|
15
|
+
# Initialize the request
|
16
|
+
def initialize(configuration, _builder_interface = nil)
|
17
|
+
super configuration
|
18
|
+
|
19
|
+
self.request_path = 'verifications/status'
|
20
|
+
end
|
21
|
+
|
22
|
+
protected
|
23
|
+
|
24
|
+
# Set the request field validations
|
25
|
+
def init_field_validations
|
26
|
+
super
|
27
|
+
|
28
|
+
required_fields.push *%i[reference_id]
|
29
|
+
end
|
30
|
+
|
31
|
+
# Return request structure
|
32
|
+
def request_structure
|
33
|
+
{
|
34
|
+
reference_id: reference_id
|
35
|
+
}
|
36
|
+
end
|
37
|
+
|
38
|
+
end
|
39
|
+
end
|
40
|
+
end
|
41
|
+
end
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
@@ -0,0 +1,73 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module GenesisRuby
|
4
|
+
module Api
|
5
|
+
module Requests
|
6
|
+
module NonFinancial
|
7
|
+
module Payee
|
8
|
+
module Account
|
9
|
+
# Create a Account related to a specific Payee.
|
10
|
+
class Create < Base::Versioned
|
11
|
+
|
12
|
+
PAYEE_ACCOUNT_TYPE_IBAN = 'iban'
|
13
|
+
PAYEE_ACCOUNT_TYPE_BANK = 'bank'
|
14
|
+
|
15
|
+
attr_accessor :payee_unique_id, :payee_account_type, :payee_account_number, :payee_account_country,
|
16
|
+
:payee_account_institution_code
|
17
|
+
|
18
|
+
# Retrieve Payee initialization
|
19
|
+
def initialize(configuration, _builder_interface = nil)
|
20
|
+
super configuration
|
21
|
+
|
22
|
+
self.request_path = 'payee/:payee_unique_id/account'
|
23
|
+
end
|
24
|
+
|
25
|
+
protected
|
26
|
+
|
27
|
+
# Sets the request field validations
|
28
|
+
def init_field_validations # rubocop:disable Metrics/MethodLength
|
29
|
+
super
|
30
|
+
|
31
|
+
required_fields.push *%i[
|
32
|
+
payee_unique_id payee_account_type payee_account_number
|
33
|
+
]
|
34
|
+
field_values.merge! payee_account_type: [PAYEE_ACCOUNT_TYPE_IBAN, PAYEE_ACCOUNT_TYPE_BANK],
|
35
|
+
payee_account_country: GenesisRuby::Utils::Country::COUNTRIES.keys
|
36
|
+
field_value_dependencies.merge!(
|
37
|
+
{
|
38
|
+
payee_account_type: {
|
39
|
+
PAYEE_ACCOUNT_TYPE_BANK => %i[payee_account_institution_code]
|
40
|
+
}
|
41
|
+
}
|
42
|
+
)
|
43
|
+
end
|
44
|
+
|
45
|
+
# Returns the request structure
|
46
|
+
def request_structure
|
47
|
+
{
|
48
|
+
account: {
|
49
|
+
type: payee_account_type,
|
50
|
+
number: payee_account_number,
|
51
|
+
country: payee_account_country,
|
52
|
+
institution_code: payee_account_institution_code
|
53
|
+
|
54
|
+
}
|
55
|
+
}
|
56
|
+
end
|
57
|
+
|
58
|
+
# Override API endpoint configuration
|
59
|
+
def process_request_parameters
|
60
|
+
super
|
61
|
+
|
62
|
+
processed_path = request_path.dup.gsub(':payee_unique_id', payee_unique_id.to_s)
|
63
|
+
|
64
|
+
init_api_service_configuration request_path: processed_path, include_token: false
|
65
|
+
end
|
66
|
+
|
67
|
+
end
|
68
|
+
end
|
69
|
+
end
|
70
|
+
end
|
71
|
+
end
|
72
|
+
end
|
73
|
+
end
|
@@ -0,0 +1,74 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module GenesisRuby
|
4
|
+
module Api
|
5
|
+
module Requests
|
6
|
+
module NonFinancial
|
7
|
+
module Payee
|
8
|
+
module Account
|
9
|
+
# Retrieve the details of all Account records that belongs to specific Payee.
|
10
|
+
class List < Base::Versioned
|
11
|
+
|
12
|
+
attr_accessor :payee_unique_id, :number_eq, :type_eq, :institution_code_eq
|
13
|
+
|
14
|
+
# Retrieve Payee initialization
|
15
|
+
def initialize(configuration, _builder_interface = nil)
|
16
|
+
super configuration
|
17
|
+
|
18
|
+
self.request_path = 'payee/:payee_unique_id/account'
|
19
|
+
end
|
20
|
+
|
21
|
+
protected
|
22
|
+
|
23
|
+
# Override default Versioned Network configuration
|
24
|
+
def init_configuration
|
25
|
+
super
|
26
|
+
|
27
|
+
init_get_configuration
|
28
|
+
end
|
29
|
+
|
30
|
+
# Sets the request field validations
|
31
|
+
def init_field_validations
|
32
|
+
super
|
33
|
+
|
34
|
+
required_fields.push *%i[
|
35
|
+
payee_unique_id
|
36
|
+
]
|
37
|
+
end
|
38
|
+
|
39
|
+
# Returns the request structure
|
40
|
+
def request_structure
|
41
|
+
{}
|
42
|
+
end
|
43
|
+
|
44
|
+
# Override API endpoint configuration
|
45
|
+
def process_request_parameters
|
46
|
+
processed_path = request_path.dup.gsub(':payee_unique_id', payee_unique_id.to_s)
|
47
|
+
|
48
|
+
query_params = build_query_params
|
49
|
+
processed_path += "?#{query_params}" unless query_params.empty?
|
50
|
+
|
51
|
+
init_api_service_configuration request_path: processed_path, include_token: false
|
52
|
+
|
53
|
+
super
|
54
|
+
end
|
55
|
+
|
56
|
+
private
|
57
|
+
|
58
|
+
# Build query parameters from filter fields
|
59
|
+
def build_query_params
|
60
|
+
params = {}
|
61
|
+
params['number_eq'] = number_eq if number_eq
|
62
|
+
params['type_eq'] = type_eq if type_eq
|
63
|
+
params['institution_code_eq'] = institution_code_eq if institution_code_eq
|
64
|
+
|
65
|
+
URI.encode_www_form(params)
|
66
|
+
end
|
67
|
+
|
68
|
+
end
|
69
|
+
end
|
70
|
+
end
|
71
|
+
end
|
72
|
+
end
|
73
|
+
end
|
74
|
+
end
|
@@ -0,0 +1,61 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module GenesisRuby
|
4
|
+
module Api
|
5
|
+
module Requests
|
6
|
+
module NonFinancial
|
7
|
+
module Payee
|
8
|
+
module Account
|
9
|
+
# Retrieve the details of a specific Account record based on it's unique ID that belongs to specific Payee.
|
10
|
+
class Retrieve < Base::Versioned
|
11
|
+
|
12
|
+
attr_accessor :payee_unique_id, :account_unique_id
|
13
|
+
|
14
|
+
# Retrieve Payee initialization
|
15
|
+
def initialize(configuration, _builder_interface = nil)
|
16
|
+
super configuration
|
17
|
+
|
18
|
+
self.request_path = 'payee/:payee_unique_id/account/:account_unique_id'
|
19
|
+
end
|
20
|
+
|
21
|
+
protected
|
22
|
+
|
23
|
+
# Override default Versioned Network configuration
|
24
|
+
def init_configuration
|
25
|
+
super
|
26
|
+
|
27
|
+
init_get_configuration
|
28
|
+
end
|
29
|
+
|
30
|
+
# Sets the request field validations
|
31
|
+
def init_field_validations
|
32
|
+
super
|
33
|
+
|
34
|
+
required_fields.push *%i[
|
35
|
+
payee_unique_id account_unique_id
|
36
|
+
]
|
37
|
+
end
|
38
|
+
|
39
|
+
# Returns the request structure
|
40
|
+
def request_structure
|
41
|
+
{}
|
42
|
+
end
|
43
|
+
|
44
|
+
# Override API endpoint configuration
|
45
|
+
def process_request_parameters
|
46
|
+
super
|
47
|
+
|
48
|
+
processed_path = request_path.dup
|
49
|
+
.gsub(':payee_unique_id', payee_unique_id.to_s)
|
50
|
+
.gsub(':account_unique_id', account_unique_id.to_s)
|
51
|
+
|
52
|
+
init_api_service_configuration request_path: processed_path, include_token: false
|
53
|
+
end
|
54
|
+
|
55
|
+
end
|
56
|
+
end
|
57
|
+
end
|
58
|
+
end
|
59
|
+
end
|
60
|
+
end
|
61
|
+
end
|
@@ -0,0 +1,60 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module GenesisRuby
|
4
|
+
module Api
|
5
|
+
module Requests
|
6
|
+
module NonFinancial
|
7
|
+
module Payee
|
8
|
+
# Create a Payee record.
|
9
|
+
class Create < Base::Versioned
|
10
|
+
|
11
|
+
PAYEE_TYPE_PERSON = 'person'
|
12
|
+
PAYEE_TYPE_COMPANY = 'company'
|
13
|
+
|
14
|
+
attr_accessor :payee_type, :payee_name, :payee_country
|
15
|
+
|
16
|
+
# Create Payee initialization
|
17
|
+
def initialize(configuration, _builder_interface = nil)
|
18
|
+
super configuration
|
19
|
+
|
20
|
+
self.request_path = 'payee'
|
21
|
+
end
|
22
|
+
|
23
|
+
protected
|
24
|
+
|
25
|
+
# Sets the request field validations
|
26
|
+
def init_field_validations
|
27
|
+
super
|
28
|
+
|
29
|
+
required_fields.push *%i[
|
30
|
+
payee_type payee_name payee_country
|
31
|
+
]
|
32
|
+
|
33
|
+
field_values.merge! payee_type: [PAYEE_TYPE_PERSON, PAYEE_TYPE_COMPANY],
|
34
|
+
payee_country: GenesisRuby::Utils::Country::COUNTRIES.keys
|
35
|
+
end
|
36
|
+
|
37
|
+
# Returns the request structure
|
38
|
+
def request_structure
|
39
|
+
{
|
40
|
+
payee: {
|
41
|
+
type: payee_type,
|
42
|
+
name: payee_name,
|
43
|
+
country: payee_country
|
44
|
+
}
|
45
|
+
}
|
46
|
+
end
|
47
|
+
|
48
|
+
# Override API endpoint configuration
|
49
|
+
def process_request_parameters
|
50
|
+
super
|
51
|
+
|
52
|
+
init_api_service_configuration request_path: request_path, include_token: false
|
53
|
+
end
|
54
|
+
|
55
|
+
end
|
56
|
+
end
|
57
|
+
end
|
58
|
+
end
|
59
|
+
end
|
60
|
+
end
|
@@ -0,0 +1,57 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module GenesisRuby
|
4
|
+
module Api
|
5
|
+
module Requests
|
6
|
+
module NonFinancial
|
7
|
+
module Payee
|
8
|
+
# Retrieve the details of a specific a Payee record based on it's unique ID.
|
9
|
+
class Retrieve < Base::Versioned
|
10
|
+
|
11
|
+
attr_accessor :payee_unique_id
|
12
|
+
|
13
|
+
# Retrieve Payee initialization
|
14
|
+
def initialize(configuration, _builder_interface = nil)
|
15
|
+
super configuration
|
16
|
+
|
17
|
+
self.request_path = 'payee/:payee_unique_id'
|
18
|
+
end
|
19
|
+
|
20
|
+
protected
|
21
|
+
|
22
|
+
# Override default Versioned Network configuration
|
23
|
+
def init_configuration
|
24
|
+
super
|
25
|
+
|
26
|
+
init_get_configuration
|
27
|
+
end
|
28
|
+
|
29
|
+
# Sets the request field validations
|
30
|
+
def init_field_validations
|
31
|
+
super
|
32
|
+
|
33
|
+
required_fields.push *%i[
|
34
|
+
payee_unique_id
|
35
|
+
]
|
36
|
+
end
|
37
|
+
|
38
|
+
# Returns the request structure
|
39
|
+
def request_structure
|
40
|
+
{}
|
41
|
+
end
|
42
|
+
|
43
|
+
# Override API endpoint configuration
|
44
|
+
def process_request_parameters
|
45
|
+
super
|
46
|
+
|
47
|
+
processed_path = request_path.dup.gsub(':payee_unique_id', payee_unique_id.to_s)
|
48
|
+
|
49
|
+
init_api_service_configuration request_path: processed_path, include_token: false
|
50
|
+
end
|
51
|
+
|
52
|
+
end
|
53
|
+
end
|
54
|
+
end
|
55
|
+
end
|
56
|
+
end
|
57
|
+
end
|