paypal-server-sdk 0.6.1 → 0.7.0
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/LICENSE +34 -34
- data/README.md +19 -30
- data/lib/paypal_server_sdk/controllers/base_controller.rb +1 -1
- data/lib/paypal_server_sdk/controllers/orders_controller.rb +103 -148
- data/lib/paypal_server_sdk/controllers/payments_controller.rb +94 -73
- data/lib/paypal_server_sdk/controllers/vault_controller.rb +12 -12
- data/lib/paypal_server_sdk/exceptions/api_exception.rb +11 -0
- data/lib/paypal_server_sdk/exceptions/error_exception.rb +14 -0
- data/lib/paypal_server_sdk/exceptions/o_auth_provider_exception.rb +14 -0
- data/lib/paypal_server_sdk/models/activity_timestamps.rb +17 -6
- data/lib/paypal_server_sdk/models/address.rb +24 -9
- data/lib/paypal_server_sdk/models/amount_breakdown.rb +17 -0
- data/lib/paypal_server_sdk/models/amount_with_breakdown.rb +22 -9
- data/lib/paypal_server_sdk/models/apple_pay_attributes.rb +12 -0
- data/lib/paypal_server_sdk/models/apple_pay_attributes_response.rb +12 -0
- data/lib/paypal_server_sdk/models/apple_pay_card.rb +14 -0
- data/lib/paypal_server_sdk/models/apple_pay_card_response.rb +48 -6
- data/lib/paypal_server_sdk/models/apple_pay_decrypted_token_data.rb +16 -0
- data/lib/paypal_server_sdk/models/apple_pay_payment_data.rb +14 -0
- data/lib/paypal_server_sdk/models/apple_pay_payment_data_type.rb +6 -2
- data/lib/paypal_server_sdk/models/apple_pay_payment_object.rb +43 -7
- data/lib/paypal_server_sdk/models/apple_pay_payment_token.rb +12 -0
- data/lib/paypal_server_sdk/models/apple_pay_request.rb +27 -13
- data/lib/paypal_server_sdk/models/apple_pay_tokenized_card.rb +15 -0
- data/lib/paypal_server_sdk/models/assurance_details.rb +14 -0
- data/lib/paypal_server_sdk/models/authentication_response.rb +13 -0
- data/lib/paypal_server_sdk/models/authorization.rb +28 -9
- data/lib/paypal_server_sdk/models/authorization_incomplete_reason.rb +2 -2
- data/lib/paypal_server_sdk/models/authorization_status.rb +12 -6
- data/lib/paypal_server_sdk/models/authorization_status_details.rb +12 -0
- data/lib/paypal_server_sdk/models/authorization_status_with_details.rb +12 -0
- data/lib/paypal_server_sdk/models/authorization_with_additional_data.rb +29 -9
- data/lib/paypal_server_sdk/models/avs_code.rb +102 -71
- data/lib/paypal_server_sdk/models/bancontact_payment_object.rb +19 -5
- data/lib/paypal_server_sdk/models/bancontact_payment_request.rb +18 -5
- data/lib/paypal_server_sdk/models/base_model.rb +76 -28
- data/lib/paypal_server_sdk/models/billing_cycle.rb +129 -0
- data/lib/paypal_server_sdk/models/bin_details.rb +18 -5
- data/lib/paypal_server_sdk/models/blik_experience_context.rb +17 -0
- data/lib/paypal_server_sdk/models/blik_level0_payment_object.rb +12 -0
- data/lib/paypal_server_sdk/models/blik_one_click_payment_object.rb +12 -0
- data/lib/paypal_server_sdk/models/blik_one_click_payment_request.rb +15 -0
- data/lib/paypal_server_sdk/models/blik_payment_object.rb +22 -10
- data/lib/paypal_server_sdk/models/blik_payment_request.rb +24 -10
- data/lib/paypal_server_sdk/models/callback_configuration.rb +75 -0
- data/lib/paypal_server_sdk/models/callback_events.rb +27 -0
- data/lib/paypal_server_sdk/models/capture_incomplete_reason.rb +22 -14
- data/lib/paypal_server_sdk/models/capture_payment_instruction.rb +15 -0
- data/lib/paypal_server_sdk/models/capture_request.rb +17 -0
- data/lib/paypal_server_sdk/models/capture_status.rb +10 -6
- data/lib/paypal_server_sdk/models/capture_status_details.rb +12 -0
- data/lib/paypal_server_sdk/models/capture_status_with_details.rb +12 -0
- data/lib/paypal_server_sdk/models/captured_payment.rb +36 -10
- data/lib/paypal_server_sdk/models/card_attributes.rb +13 -0
- data/lib/paypal_server_sdk/models/card_attributes_response.rb +12 -0
- data/lib/paypal_server_sdk/models/card_authentication_response.rb +14 -2
- data/lib/paypal_server_sdk/models/card_brand.rb +29 -25
- data/lib/paypal_server_sdk/models/card_customer_information.rb +18 -5
- data/lib/paypal_server_sdk/models/card_experience_context.rb +12 -0
- data/lib/paypal_server_sdk/models/card_from_request.rb +12 -0
- data/lib/paypal_server_sdk/models/{card_response_entity.rb → card_payment_token_entity.rb} +37 -15
- data/lib/paypal_server_sdk/models/card_request.rb +32 -17
- data/lib/paypal_server_sdk/models/card_response.rb +43 -2
- data/lib/paypal_server_sdk/models/{portable_postal_address_medium_grained.rb → card_response_address.rb} +43 -23
- data/lib/paypal_server_sdk/models/card_stored_credential.rb +23 -7
- data/lib/paypal_server_sdk/models/card_supplementary_data.rb +13 -5
- data/lib/paypal_server_sdk/models/card_type.rb +5 -5
- data/lib/paypal_server_sdk/models/card_vault_response.rb +13 -0
- data/lib/paypal_server_sdk/models/card_verification.rb +16 -3
- data/lib/paypal_server_sdk/models/card_verification_details.rb +27 -11
- data/lib/paypal_server_sdk/models/card_verification_processor_response.rb +12 -0
- data/lib/paypal_server_sdk/models/card_verification_status.rb +23 -0
- data/lib/paypal_server_sdk/models/checkout_payment_intent.rb +10 -2
- data/lib/paypal_server_sdk/models/cobranded_card.rb +13 -0
- data/lib/paypal_server_sdk/models/confirm_order_request.rb +15 -12
- data/lib/paypal_server_sdk/models/{customer_request.rb → customer.rb} +18 -4
- data/lib/paypal_server_sdk/models/customer_information.rb +17 -5
- data/lib/paypal_server_sdk/models/customer_response.rb +76 -0
- data/lib/paypal_server_sdk/models/customer_vault_payment_tokens_response.rb +21 -4
- data/lib/paypal_server_sdk/models/cvv_code.rb +35 -27
- data/lib/paypal_server_sdk/models/disbursement_mode.rb +5 -2
- data/lib/paypal_server_sdk/models/dispute_category.rb +2 -2
- data/lib/paypal_server_sdk/models/eci_flag.rb +6 -8
- data/lib/paypal_server_sdk/models/enrollment_status.rb +11 -8
- data/lib/paypal_server_sdk/models/eps_payment_object.rb +17 -5
- data/lib/paypal_server_sdk/models/eps_payment_request.rb +18 -5
- data/lib/paypal_server_sdk/models/error_details.rb +15 -0
- data/lib/paypal_server_sdk/models/exchange_rate.rb +14 -0
- data/lib/paypal_server_sdk/models/experience_context.rb +15 -0
- data/lib/paypal_server_sdk/models/fulfillment_type.rb +9 -4
- data/lib/paypal_server_sdk/models/giropay_payment_object.rb +17 -5
- data/lib/paypal_server_sdk/models/giropay_payment_request.rb +18 -5
- data/lib/paypal_server_sdk/models/google_pay_authentication_method.rb +8 -2
- data/lib/paypal_server_sdk/models/google_pay_card.rb +17 -3
- data/lib/paypal_server_sdk/models/google_pay_card_response.rb +16 -0
- data/lib/paypal_server_sdk/models/google_pay_decrypted_token_data.rb +17 -0
- data/lib/paypal_server_sdk/models/google_pay_payment_method.rb +1 -1
- data/lib/paypal_server_sdk/models/google_pay_request.rb +22 -17
- data/lib/paypal_server_sdk/models/google_pay_request_card.rb +14 -0
- data/lib/paypal_server_sdk/models/google_pay_wallet_response.rb +18 -5
- data/lib/paypal_server_sdk/models/ideal_payment_object.rb +18 -5
- data/lib/paypal_server_sdk/models/ideal_payment_request.rb +18 -5
- data/lib/paypal_server_sdk/models/item.rb +17 -0
- data/lib/paypal_server_sdk/models/item_category.rb +6 -3
- data/lib/paypal_server_sdk/models/level2_card_processing_data.rb +12 -0
- data/lib/paypal_server_sdk/models/level3_card_processing_data.rb +17 -0
- data/lib/paypal_server_sdk/models/liability_shift_indicator.rb +3 -3
- data/lib/paypal_server_sdk/models/line_item.rb +21 -0
- data/lib/paypal_server_sdk/models/link_description.rb +12 -0
- data/lib/paypal_server_sdk/models/money.rb +16 -4
- data/lib/paypal_server_sdk/models/mybank_payment_object.rb +18 -5
- data/lib/paypal_server_sdk/models/mybank_payment_request.rb +18 -5
- data/lib/paypal_server_sdk/models/name.rb +12 -0
- data/lib/paypal_server_sdk/models/net_amount_breakdown_item.rb +14 -0
- data/lib/paypal_server_sdk/models/network_token.rb +15 -0
- data/lib/paypal_server_sdk/models/network_transaction_reference.rb +14 -0
- data/lib/paypal_server_sdk/models/network_transaction_reference_entity.rb +15 -3
- data/lib/paypal_server_sdk/models/one_time_charge.rb +118 -0
- data/lib/paypal_server_sdk/models/order.rb +22 -19
- data/lib/paypal_server_sdk/models/order_application_context.rb +40 -25
- data/lib/paypal_server_sdk/models/order_application_context_landing_page.rb +10 -3
- data/lib/paypal_server_sdk/models/order_application_context_shipping_preference.rb +14 -10
- data/lib/paypal_server_sdk/models/order_application_context_user_action.rb +11 -6
- data/lib/paypal_server_sdk/models/order_authorize_request.rb +12 -0
- data/lib/paypal_server_sdk/models/order_authorize_request_payment_source.rb +20 -9
- data/lib/paypal_server_sdk/models/order_authorize_response.rb +22 -19
- data/lib/paypal_server_sdk/models/order_authorize_response_payment_source.rb +14 -0
- data/lib/paypal_server_sdk/models/order_capture_request.rb +12 -0
- data/lib/paypal_server_sdk/models/order_capture_request_payment_source.rb +20 -9
- data/lib/paypal_server_sdk/models/order_confirm_application_context.rb +21 -8
- data/lib/paypal_server_sdk/models/order_request.rb +18 -4
- data/lib/paypal_server_sdk/models/order_status.rb +19 -6
- data/lib/paypal_server_sdk/models/order_tracker_item.rb +15 -0
- data/lib/paypal_server_sdk/models/order_tracker_request.rb +22 -5
- data/lib/paypal_server_sdk/models/order_tracker_response.rb +19 -6
- data/lib/paypal_server_sdk/models/order_tracker_status.rb +5 -2
- data/lib/paypal_server_sdk/models/order_update_callback_error_response.rb +89 -0
- data/lib/paypal_server_sdk/models/order_update_callback_error_response_details.rb +81 -0
- data/lib/paypal_server_sdk/models/order_update_callback_request.rb +111 -0
- data/lib/paypal_server_sdk/models/order_update_callback_response.rb +72 -0
- data/lib/paypal_server_sdk/models/order_update_callback_shipping_address.rb +107 -0
- data/lib/paypal_server_sdk/models/order_update_callback_shipping_option.rb +93 -0
- data/lib/paypal_server_sdk/models/{capture.rb → orders_capture.rb} +46 -22
- data/lib/paypal_server_sdk/models/orders_card_verification_method.rb +51 -0
- data/lib/paypal_server_sdk/models/p24_payment_object.rb +24 -10
- data/lib/paypal_server_sdk/models/p24_payment_request.rb +22 -10
- data/lib/paypal_server_sdk/models/pa_res_status.rb +16 -16
- data/lib/paypal_server_sdk/models/participant_metadata.rb +64 -0
- data/lib/paypal_server_sdk/models/patch.rb +20 -10
- data/lib/paypal_server_sdk/models/patch_op.rb +43 -6
- data/lib/paypal_server_sdk/models/payee_base.rb +17 -5
- data/lib/paypal_server_sdk/models/payee_payment_method_preference.rb +4 -2
- data/lib/paypal_server_sdk/models/payer.rb +20 -5
- data/lib/paypal_server_sdk/models/payer_base.rb +16 -5
- data/lib/paypal_server_sdk/models/payment_advice_code.rb +53 -8
- data/lib/paypal_server_sdk/models/payment_authorization.rb +32 -11
- data/lib/paypal_server_sdk/models/payment_collection.rb +16 -2
- data/lib/paypal_server_sdk/models/payment_initiator.rb +5 -2
- data/lib/paypal_server_sdk/models/payment_instruction.rb +16 -0
- data/lib/paypal_server_sdk/models/payment_method_preference.rb +14 -0
- data/lib/paypal_server_sdk/models/payment_source.rb +25 -9
- data/lib/paypal_server_sdk/models/payment_source_response.rb +19 -0
- data/lib/paypal_server_sdk/models/payment_supplementary_data.rb +12 -0
- data/lib/paypal_server_sdk/models/payment_token_request.rb +17 -3
- data/lib/paypal_server_sdk/models/payment_token_request_card.rb +17 -22
- data/lib/paypal_server_sdk/models/payment_token_request_payment_source.rb +12 -0
- data/lib/paypal_server_sdk/models/payment_token_response.rb +18 -3
- data/lib/paypal_server_sdk/models/payment_token_response_payment_source.rb +18 -14
- data/lib/paypal_server_sdk/models/payment_token_status.rb +36 -0
- data/lib/paypal_server_sdk/models/payments_capture.rb +252 -0
- data/lib/paypal_server_sdk/models/payments_payment_advice_code.rb +42 -0
- data/lib/paypal_server_sdk/models/payments_processor_response.rb +98 -0
- data/lib/paypal_server_sdk/models/paypal_experience_landing_page.rb +11 -3
- data/lib/paypal_server_sdk/models/paypal_experience_user_action.rb +9 -4
- data/lib/paypal_server_sdk/models/paypal_payment_token.rb +38 -8
- data/lib/paypal_server_sdk/models/paypal_payment_token_customer_type.rb +7 -3
- data/lib/paypal_server_sdk/models/paypal_payment_token_usage_type.rb +7 -3
- data/lib/paypal_server_sdk/models/paypal_wallet.rb +41 -11
- data/lib/paypal_server_sdk/models/paypal_wallet_account_verification_status.rb +6 -2
- data/lib/paypal_server_sdk/models/paypal_wallet_attributes.rb +12 -0
- data/lib/paypal_server_sdk/models/paypal_wallet_attributes_response.rb +12 -0
- data/lib/paypal_server_sdk/models/paypal_wallet_context_shipping_preference.rb +31 -0
- data/lib/paypal_server_sdk/models/paypal_wallet_customer.rb +18 -5
- data/lib/paypal_server_sdk/models/paypal_wallet_customer_request.rb +18 -5
- data/lib/paypal_server_sdk/models/paypal_wallet_experience_context.rb +45 -12
- data/lib/paypal_server_sdk/models/paypal_wallet_response.rb +39 -7
- data/lib/paypal_server_sdk/models/paypal_wallet_stored_credential.rb +98 -0
- data/lib/paypal_server_sdk/models/paypal_wallet_vault_instruction.rb +18 -1
- data/lib/paypal_server_sdk/models/paypal_wallet_vault_response.rb +13 -0
- data/lib/paypal_server_sdk/models/paypal_wallet_vault_status.rb +8 -3
- data/lib/paypal_server_sdk/models/phone.rb +14 -0
- data/lib/paypal_server_sdk/models/phone_number.rb +12 -0
- data/lib/paypal_server_sdk/models/phone_number_with_country_code.rb +15 -0
- data/lib/paypal_server_sdk/models/phone_with_type.rb +13 -0
- data/lib/paypal_server_sdk/models/plan.rb +102 -0
- data/lib/paypal_server_sdk/models/platform_fee.rb +12 -0
- data/lib/paypal_server_sdk/models/pricing_model.rb +28 -0
- data/lib/paypal_server_sdk/models/pricing_scheme.rb +84 -0
- data/lib/paypal_server_sdk/models/processor_response.rb +15 -0
- data/lib/paypal_server_sdk/models/processor_response_code.rb +312 -308
- data/lib/paypal_server_sdk/models/purchase_unit.rb +43 -25
- data/lib/paypal_server_sdk/models/purchase_unit_request.rb +36 -20
- data/lib/paypal_server_sdk/models/reauthorize_request.rb +19 -8
- data/lib/paypal_server_sdk/models/refund.rb +25 -6
- data/lib/paypal_server_sdk/models/refund_incomplete_reason.rb +2 -1
- data/lib/paypal_server_sdk/models/refund_payment_instruction.rb +12 -0
- data/lib/paypal_server_sdk/models/refund_platform_fee.rb +12 -0
- data/lib/paypal_server_sdk/models/refund_request.rb +17 -2
- data/lib/paypal_server_sdk/models/refund_status.rb +4 -4
- data/lib/paypal_server_sdk/models/refund_status_details.rb +12 -0
- data/lib/paypal_server_sdk/models/refund_status_with_details.rb +12 -0
- data/lib/paypal_server_sdk/models/related_identifiers.rb +14 -0
- data/lib/paypal_server_sdk/models/risk_supplementary_data.rb +63 -0
- data/lib/paypal_server_sdk/models/seller_payable_breakdown.rb +21 -0
- data/lib/paypal_server_sdk/models/seller_protection.rb +13 -0
- data/lib/paypal_server_sdk/models/seller_protection_status.rb +6 -3
- data/lib/paypal_server_sdk/models/seller_receivable_breakdown.rb +18 -0
- data/lib/paypal_server_sdk/models/setup_token_card_experience_context.rb +21 -5
- data/lib/paypal_server_sdk/models/setup_token_request.rb +17 -3
- data/lib/paypal_server_sdk/models/setup_token_request_card.rb +20 -18
- data/lib/paypal_server_sdk/models/setup_token_request_payment_source.rb +13 -0
- data/lib/paypal_server_sdk/models/setup_token_response.rb +23 -16
- data/lib/paypal_server_sdk/models/setup_token_response_card.rb +25 -3
- data/lib/paypal_server_sdk/models/setup_token_response_payment_source.rb +13 -0
- data/lib/paypal_server_sdk/models/shipment_carrier.rb +1377 -1402
- data/lib/paypal_server_sdk/models/shipping_details.rb +29 -2
- data/lib/paypal_server_sdk/models/shipping_name.rb +12 -0
- data/lib/paypal_server_sdk/models/shipping_option.rb +14 -0
- data/lib/paypal_server_sdk/models/shipping_options_purchase_unit.rb +102 -0
- data/lib/paypal_server_sdk/models/shipping_preference.rb +6 -3
- data/lib/paypal_server_sdk/models/shipping_type.rb +12 -4
- data/lib/paypal_server_sdk/models/shipping_with_tracking_details.rb +30 -2
- data/lib/paypal_server_sdk/models/sofort_payment_object.rb +18 -5
- data/lib/paypal_server_sdk/models/sofort_payment_request.rb +18 -5
- data/lib/paypal_server_sdk/models/standard_entry_class_code.rb +12 -4
- data/lib/paypal_server_sdk/models/store_in_vault_instruction.rb +2 -1
- data/lib/paypal_server_sdk/models/stored_payment_source.rb +23 -7
- data/lib/paypal_server_sdk/models/stored_payment_source_payment_type.rb +6 -3
- data/lib/paypal_server_sdk/models/stored_payment_source_usage_type.rb +6 -3
- data/lib/paypal_server_sdk/models/supplementary_data.rb +25 -7
- data/lib/paypal_server_sdk/models/supplementary_purchase_data.rb +13 -0
- data/lib/paypal_server_sdk/models/tax_id_type.rb +2 -2
- data/lib/paypal_server_sdk/models/tax_info.rb +12 -0
- data/lib/paypal_server_sdk/models/tenure_type.rb +28 -0
- data/lib/paypal_server_sdk/models/three_d_secure_authentication_response.rb +14 -0
- data/lib/paypal_server_sdk/models/three_d_secure_card_authentication_response.rb +89 -0
- data/lib/paypal_server_sdk/models/token.rb +12 -0
- data/lib/paypal_server_sdk/models/token_type.rb +2 -1
- data/lib/paypal_server_sdk/models/trustly_payment_object.rb +31 -6
- data/lib/paypal_server_sdk/models/trustly_payment_request.rb +30 -6
- data/lib/paypal_server_sdk/models/universal_product_code.rb +12 -0
- data/lib/paypal_server_sdk/models/upc_type.rb +14 -14
- data/lib/paypal_server_sdk/models/usage_pattern.rb +72 -0
- data/lib/paypal_server_sdk/models/vault_card_verification_method.rb +39 -0
- data/lib/paypal_server_sdk/models/vault_customer.rb +12 -0
- data/lib/paypal_server_sdk/models/vault_experience_context.rb +26 -7
- data/lib/paypal_server_sdk/models/vault_instruction.rb +12 -0
- data/lib/paypal_server_sdk/models/vault_instruction_action.rb +26 -0
- data/lib/paypal_server_sdk/models/vault_instruction_base.rb +12 -0
- data/lib/paypal_server_sdk/models/vault_paypal_wallet_request.rb +43 -4
- data/lib/paypal_server_sdk/models/vault_response.rb +13 -0
- data/lib/paypal_server_sdk/models/vault_response_customer.rb +86 -0
- data/lib/paypal_server_sdk/models/vault_status.rb +8 -3
- data/lib/paypal_server_sdk/models/vault_token_request.rb +13 -1
- data/lib/paypal_server_sdk/models/vault_token_request_type.rb +20 -0
- data/lib/paypal_server_sdk/models/vault_venmo_experience_context.rb +24 -6
- data/lib/paypal_server_sdk/models/vault_venmo_request.rb +31 -3
- data/lib/paypal_server_sdk/models/vaulted_digital_wallet.rb +29 -3
- data/lib/paypal_server_sdk/models/vaulted_digital_wallet_shipping_details.rb +26 -1
- data/lib/paypal_server_sdk/models/venmo_payment_token.rb +37 -8
- data/lib/paypal_server_sdk/models/venmo_payment_token_customer_type.rb +4 -2
- data/lib/paypal_server_sdk/models/venmo_payment_token_usage_pattern.rb +12 -6
- data/lib/paypal_server_sdk/models/venmo_payment_token_usage_type.rb +5 -2
- data/lib/paypal_server_sdk/models/venmo_wallet_additional_attributes.rb +12 -0
- data/lib/paypal_server_sdk/models/venmo_wallet_attributes_response.rb +12 -0
- data/lib/paypal_server_sdk/models/venmo_wallet_customer_information.rb +16 -5
- data/lib/paypal_server_sdk/models/venmo_wallet_experience_context.rb +34 -5
- data/lib/paypal_server_sdk/models/venmo_wallet_request.rb +21 -8
- data/lib/paypal_server_sdk/models/venmo_wallet_response.rb +21 -5
- data/lib/paypal_server_sdk/models/venmo_wallet_vault_attributes.rb +17 -0
- data/lib/paypal_server_sdk/utilities/file_wrapper.rb +14 -2
- data/lib/paypal_server_sdk.rb +43 -14
- metadata +40 -15
- data/lib/paypal_server_sdk/models/address_details.rb +0 -160
- data/lib/paypal_server_sdk/models/card_payment_token.rb +0 -166
- data/lib/paypal_server_sdk/models/card_verification_method.rb +0 -29
- data/lib/paypal_server_sdk/models/google_pay_card_attributes.rb +0 -51
- data/lib/paypal_server_sdk/models/payee.rb +0 -65
- data/lib/paypal_server_sdk/models/paypal_payment_token_usage_pattern.rb +0 -35
- data/lib/paypal_server_sdk/models/token_request_type.rb +0 -23
@@ -13,6 +13,13 @@ module PaypalServerSdk
|
|
13
13
|
# @return [ShippingName]
|
14
14
|
attr_accessor :name
|
15
15
|
|
16
|
+
# The internationalized email address. Note: Up to 64 characters are allowed
|
17
|
+
# before and 255 characters are allowed after the @ sign. However, the
|
18
|
+
# generally accepted maximum length for an email address is 254 characters.
|
19
|
+
# The pattern verifies that an unquoted @ sign exists.
|
20
|
+
# @return [String]
|
21
|
+
attr_accessor :email_address
|
22
|
+
|
16
23
|
# The phone number in its canonical international [E.164 numbering plan
|
17
24
|
# format](https://www.itu.int/rec/T-REC-E.164/en).
|
18
25
|
# @return [PhoneNumberWithCountryCode]
|
@@ -42,6 +49,7 @@ module PaypalServerSdk
|
|
42
49
|
def self.names
|
43
50
|
@_hash = {} if @_hash.nil?
|
44
51
|
@_hash['name'] = 'name'
|
52
|
+
@_hash['email_address'] = 'email_address'
|
45
53
|
@_hash['phone_number'] = 'phone_number'
|
46
54
|
@_hash['type'] = 'type'
|
47
55
|
@_hash['options'] = 'options'
|
@@ -53,6 +61,7 @@ module PaypalServerSdk
|
|
53
61
|
def self.optionals
|
54
62
|
%w[
|
55
63
|
name
|
64
|
+
email_address
|
56
65
|
phone_number
|
57
66
|
type
|
58
67
|
options
|
@@ -65,9 +74,10 @@ module PaypalServerSdk
|
|
65
74
|
[]
|
66
75
|
end
|
67
76
|
|
68
|
-
def initialize(name: SKIP,
|
69
|
-
address: SKIP)
|
77
|
+
def initialize(name: SKIP, email_address: SKIP, phone_number: SKIP,
|
78
|
+
type: SKIP, options: SKIP, address: SKIP)
|
70
79
|
@name = name unless name == SKIP
|
80
|
+
@email_address = email_address unless email_address == SKIP
|
71
81
|
@phone_number = phone_number unless phone_number == SKIP
|
72
82
|
@type = type unless type == SKIP
|
73
83
|
@options = options unless options == SKIP
|
@@ -80,6 +90,7 @@ module PaypalServerSdk
|
|
80
90
|
|
81
91
|
# Extract variables from the hash.
|
82
92
|
name = ShippingName.from_hash(hash['name']) if hash['name']
|
93
|
+
email_address = hash.key?('email_address') ? hash['email_address'] : SKIP
|
83
94
|
phone_number = PhoneNumberWithCountryCode.from_hash(hash['phone_number']) if
|
84
95
|
hash['phone_number']
|
85
96
|
type = hash.key?('type') ? hash['type'] : SKIP
|
@@ -97,10 +108,26 @@ module PaypalServerSdk
|
|
97
108
|
|
98
109
|
# Create object from extracted values.
|
99
110
|
ShippingDetails.new(name: name,
|
111
|
+
email_address: email_address,
|
100
112
|
phone_number: phone_number,
|
101
113
|
type: type,
|
102
114
|
options: options,
|
103
115
|
address: address)
|
104
116
|
end
|
117
|
+
|
118
|
+
# Provides a human-readable string representation of the object.
|
119
|
+
def to_s
|
120
|
+
class_name = self.class.name.split('::').last
|
121
|
+
"<#{class_name} name: #{@name}, email_address: #{@email_address}, phone_number:"\
|
122
|
+
" #{@phone_number}, type: #{@type}, options: #{@options}, address: #{@address}>"
|
123
|
+
end
|
124
|
+
|
125
|
+
# Provides a debugging-friendly string with detailed object information.
|
126
|
+
def inspect
|
127
|
+
class_name = self.class.name.split('::').last
|
128
|
+
"<#{class_name} name: #{@name.inspect}, email_address: #{@email_address.inspect},"\
|
129
|
+
" phone_number: #{@phone_number.inspect}, type: #{@type.inspect}, options:"\
|
130
|
+
" #{@options.inspect}, address: #{@address.inspect}>"
|
131
|
+
end
|
105
132
|
end
|
106
133
|
end
|
@@ -46,5 +46,17 @@ module PaypalServerSdk
|
|
46
46
|
# Create object from extracted values.
|
47
47
|
ShippingName.new(full_name: full_name)
|
48
48
|
end
|
49
|
+
|
50
|
+
# Provides a human-readable string representation of the object.
|
51
|
+
def to_s
|
52
|
+
class_name = self.class.name.split('::').last
|
53
|
+
"<#{class_name} full_name: #{@full_name}>"
|
54
|
+
end
|
55
|
+
|
56
|
+
# Provides a debugging-friendly string with detailed object information.
|
57
|
+
def inspect
|
58
|
+
class_name = self.class.name.split('::').last
|
59
|
+
"<#{class_name} full_name: #{@full_name.inspect}>"
|
60
|
+
end
|
49
61
|
end
|
50
62
|
end
|
@@ -90,5 +90,19 @@ module PaypalServerSdk
|
|
90
90
|
type: type,
|
91
91
|
amount: amount)
|
92
92
|
end
|
93
|
+
|
94
|
+
# Provides a human-readable string representation of the object.
|
95
|
+
def to_s
|
96
|
+
class_name = self.class.name.split('::').last
|
97
|
+
"<#{class_name} id: #{@id}, label: #{@label}, type: #{@type}, amount: #{@amount}, selected:"\
|
98
|
+
" #{@selected}>"
|
99
|
+
end
|
100
|
+
|
101
|
+
# Provides a debugging-friendly string with detailed object information.
|
102
|
+
def inspect
|
103
|
+
class_name = self.class.name.split('::').last
|
104
|
+
"<#{class_name} id: #{@id.inspect}, label: #{@label.inspect}, type: #{@type.inspect},"\
|
105
|
+
" amount: #{@amount.inspect}, selected: #{@selected.inspect}>"
|
106
|
+
end
|
93
107
|
end
|
94
108
|
end
|
@@ -0,0 +1,102 @@
|
|
1
|
+
# paypal_server_sdk
|
2
|
+
#
|
3
|
+
# This file was automatically generated by APIMATIC v2.0
|
4
|
+
# ( https://apimatic.io ).
|
5
|
+
|
6
|
+
module PaypalServerSdk
|
7
|
+
# This would contain shipping option and amount data at purchase unit level.
|
8
|
+
class ShippingOptionsPurchaseUnit < BaseModel
|
9
|
+
SKIP = Object.new
|
10
|
+
private_constant :SKIP
|
11
|
+
|
12
|
+
# The API caller-provided external ID for the purchase unit. Required for
|
13
|
+
# multiple purchase units when you must update the order through `PATCH`. If
|
14
|
+
# you omit this value and the order contains only one purchase unit, PayPal
|
15
|
+
# sets this value to `default`. Note: If there are multiple purchase units,
|
16
|
+
# reference_id is required for each purchase unit.
|
17
|
+
# @return [String]
|
18
|
+
attr_accessor :reference_id
|
19
|
+
|
20
|
+
# The total order amount with an optional breakdown that provides details,
|
21
|
+
# such as the total item amount, total tax amount, shipping, handling,
|
22
|
+
# insurance, and discounts, if any. If you specify `amount.breakdown`, the
|
23
|
+
# amount equals `item_total` plus `tax_total` plus `shipping` plus
|
24
|
+
# `handling` plus `insurance` minus `shipping_discount` minus discount. The
|
25
|
+
# amount must be a positive number. For listed of supported currencies and
|
26
|
+
# decimal precision, see the PayPal REST APIs Currency Codes.
|
27
|
+
# @return [AmountWithBreakdown]
|
28
|
+
attr_accessor :amount
|
29
|
+
|
30
|
+
# An array of shipping options that the payee or merchant offers to the
|
31
|
+
# payer to ship or pick up their items.
|
32
|
+
# @return [Array[ShippingOption]]
|
33
|
+
attr_accessor :shipping_options
|
34
|
+
|
35
|
+
# A mapping from model property names to API property names.
|
36
|
+
def self.names
|
37
|
+
@_hash = {} if @_hash.nil?
|
38
|
+
@_hash['reference_id'] = 'reference_id'
|
39
|
+
@_hash['amount'] = 'amount'
|
40
|
+
@_hash['shipping_options'] = 'shipping_options'
|
41
|
+
@_hash
|
42
|
+
end
|
43
|
+
|
44
|
+
# An array for optional fields
|
45
|
+
def self.optionals
|
46
|
+
%w[
|
47
|
+
reference_id
|
48
|
+
amount
|
49
|
+
shipping_options
|
50
|
+
]
|
51
|
+
end
|
52
|
+
|
53
|
+
# An array for nullable fields
|
54
|
+
def self.nullables
|
55
|
+
[]
|
56
|
+
end
|
57
|
+
|
58
|
+
def initialize(reference_id: SKIP, amount: SKIP, shipping_options: SKIP)
|
59
|
+
@reference_id = reference_id unless reference_id == SKIP
|
60
|
+
@amount = amount unless amount == SKIP
|
61
|
+
@shipping_options = shipping_options unless shipping_options == SKIP
|
62
|
+
end
|
63
|
+
|
64
|
+
# Creates an instance of the object from a hash.
|
65
|
+
def self.from_hash(hash)
|
66
|
+
return nil unless hash
|
67
|
+
|
68
|
+
# Extract variables from the hash.
|
69
|
+
reference_id = hash.key?('reference_id') ? hash['reference_id'] : SKIP
|
70
|
+
amount = AmountWithBreakdown.from_hash(hash['amount']) if hash['amount']
|
71
|
+
# Parameter is an array, so we need to iterate through it
|
72
|
+
shipping_options = nil
|
73
|
+
unless hash['shipping_options'].nil?
|
74
|
+
shipping_options = []
|
75
|
+
hash['shipping_options'].each do |structure|
|
76
|
+
shipping_options << (ShippingOption.from_hash(structure) if structure)
|
77
|
+
end
|
78
|
+
end
|
79
|
+
|
80
|
+
shipping_options = SKIP unless hash.key?('shipping_options')
|
81
|
+
|
82
|
+
# Create object from extracted values.
|
83
|
+
ShippingOptionsPurchaseUnit.new(reference_id: reference_id,
|
84
|
+
amount: amount,
|
85
|
+
shipping_options: shipping_options)
|
86
|
+
end
|
87
|
+
|
88
|
+
# Provides a human-readable string representation of the object.
|
89
|
+
def to_s
|
90
|
+
class_name = self.class.name.split('::').last
|
91
|
+
"<#{class_name} reference_id: #{@reference_id}, amount: #{@amount}, shipping_options:"\
|
92
|
+
" #{@shipping_options}>"
|
93
|
+
end
|
94
|
+
|
95
|
+
# Provides a debugging-friendly string with detailed object information.
|
96
|
+
def inspect
|
97
|
+
class_name = self.class.name.split('::').last
|
98
|
+
"<#{class_name} reference_id: #{@reference_id.inspect}, amount: #{@amount.inspect},"\
|
99
|
+
" shipping_options: #{@shipping_options.inspect}>"
|
100
|
+
end
|
101
|
+
end
|
102
|
+
end
|
@@ -7,13 +7,16 @@ module PaypalServerSdk
|
|
7
7
|
# The location from which the shipping address is derived.
|
8
8
|
class ShippingPreference
|
9
9
|
SHIPPING_PREFERENCE = [
|
10
|
-
#
|
10
|
+
# Get the customer-provided shipping address on the PayPal site.
|
11
11
|
GET_FROM_FILE = 'GET_FROM_FILE'.freeze,
|
12
12
|
|
13
|
-
#
|
13
|
+
# Redacts the shipping address from the PayPal site. Recommended for
|
14
|
+
# digital goods.
|
14
15
|
NO_SHIPPING = 'NO_SHIPPING'.freeze,
|
15
16
|
|
16
|
-
#
|
17
|
+
# Get the merchant-provided address. The customer cannot change this
|
18
|
+
# address on the PayPal site. If merchant does not pass an address,
|
19
|
+
# customer can choose the address on PayPal pages.
|
17
20
|
SET_PROVIDED_ADDRESS = 'SET_PROVIDED_ADDRESS'.freeze
|
18
21
|
].freeze
|
19
22
|
|
@@ -7,16 +7,24 @@ module PaypalServerSdk
|
|
7
7
|
# A classification for the method of purchase fulfillment.
|
8
8
|
class ShippingType
|
9
9
|
SHIPPING_TYPE = [
|
10
|
-
#
|
10
|
+
# The payer intends to receive the items at a specified address.
|
11
11
|
SHIPPING = 'SHIPPING'.freeze,
|
12
12
|
|
13
|
-
#
|
13
|
+
# DEPRECATED. To ensure that seller protection is correctly assigned,
|
14
|
+
# please use 'PICKUP_IN_STORE' or 'PICKUP_FROM_PERSON' instead. Currently,
|
15
|
+
# this field indicates that the payer intends to pick up the items at a
|
16
|
+
# specified address (ie. a store address).
|
14
17
|
PICKUP = 'PICKUP'.freeze,
|
15
18
|
|
16
|
-
#
|
19
|
+
# The payer intends to pick up the item(s) from the payee's physical
|
20
|
+
# store. Also termed as BOPIS, "Buy Online, Pick-up in Store". Seller
|
21
|
+
# protection is provided with this option.
|
17
22
|
PICKUP_IN_STORE = 'PICKUP_IN_STORE'.freeze,
|
18
23
|
|
19
|
-
#
|
24
|
+
# The payer intends to pick up the item(s) from the payee in person. Also
|
25
|
+
# termed as BOPIP, "Buy Online, Pick-up in Person". Seller protection is
|
26
|
+
# not available, since the payer is receiving the item from the payee in
|
27
|
+
# person, and can validate the item prior to payment.
|
20
28
|
PICKUP_FROM_PERSON = 'PICKUP_FROM_PERSON'.freeze
|
21
29
|
].freeze
|
22
30
|
|
@@ -13,6 +13,13 @@ module PaypalServerSdk
|
|
13
13
|
# @return [ShippingName]
|
14
14
|
attr_accessor :name
|
15
15
|
|
16
|
+
# The internationalized email address. Note: Up to 64 characters are allowed
|
17
|
+
# before and 255 characters are allowed after the @ sign. However, the
|
18
|
+
# generally accepted maximum length for an email address is 254 characters.
|
19
|
+
# The pattern verifies that an unquoted @ sign exists.
|
20
|
+
# @return [String]
|
21
|
+
attr_accessor :email_address
|
22
|
+
|
16
23
|
# The phone number in its canonical international [E.164 numbering plan
|
17
24
|
# format](https://www.itu.int/rec/T-REC-E.164/en).
|
18
25
|
# @return [PhoneNumberWithCountryCode]
|
@@ -46,6 +53,7 @@ module PaypalServerSdk
|
|
46
53
|
def self.names
|
47
54
|
@_hash = {} if @_hash.nil?
|
48
55
|
@_hash['name'] = 'name'
|
56
|
+
@_hash['email_address'] = 'email_address'
|
49
57
|
@_hash['phone_number'] = 'phone_number'
|
50
58
|
@_hash['type'] = 'type'
|
51
59
|
@_hash['options'] = 'options'
|
@@ -58,6 +66,7 @@ module PaypalServerSdk
|
|
58
66
|
def self.optionals
|
59
67
|
%w[
|
60
68
|
name
|
69
|
+
email_address
|
61
70
|
phone_number
|
62
71
|
type
|
63
72
|
options
|
@@ -71,9 +80,10 @@ module PaypalServerSdk
|
|
71
80
|
[]
|
72
81
|
end
|
73
82
|
|
74
|
-
def initialize(name: SKIP,
|
75
|
-
address: SKIP, trackers: SKIP)
|
83
|
+
def initialize(name: SKIP, email_address: SKIP, phone_number: SKIP,
|
84
|
+
type: SKIP, options: SKIP, address: SKIP, trackers: SKIP)
|
76
85
|
@name = name unless name == SKIP
|
86
|
+
@email_address = email_address unless email_address == SKIP
|
77
87
|
@phone_number = phone_number unless phone_number == SKIP
|
78
88
|
@type = type unless type == SKIP
|
79
89
|
@options = options unless options == SKIP
|
@@ -87,6 +97,7 @@ module PaypalServerSdk
|
|
87
97
|
|
88
98
|
# Extract variables from the hash.
|
89
99
|
name = ShippingName.from_hash(hash['name']) if hash['name']
|
100
|
+
email_address = hash.key?('email_address') ? hash['email_address'] : SKIP
|
90
101
|
phone_number = PhoneNumberWithCountryCode.from_hash(hash['phone_number']) if
|
91
102
|
hash['phone_number']
|
92
103
|
type = hash.key?('type') ? hash['type'] : SKIP
|
@@ -114,11 +125,28 @@ module PaypalServerSdk
|
|
114
125
|
|
115
126
|
# Create object from extracted values.
|
116
127
|
ShippingWithTrackingDetails.new(name: name,
|
128
|
+
email_address: email_address,
|
117
129
|
phone_number: phone_number,
|
118
130
|
type: type,
|
119
131
|
options: options,
|
120
132
|
address: address,
|
121
133
|
trackers: trackers)
|
122
134
|
end
|
135
|
+
|
136
|
+
# Provides a human-readable string representation of the object.
|
137
|
+
def to_s
|
138
|
+
class_name = self.class.name.split('::').last
|
139
|
+
"<#{class_name} name: #{@name}, email_address: #{@email_address}, phone_number:"\
|
140
|
+
" #{@phone_number}, type: #{@type}, options: #{@options}, address: #{@address}, trackers:"\
|
141
|
+
" #{@trackers}>"
|
142
|
+
end
|
143
|
+
|
144
|
+
# Provides a debugging-friendly string with detailed object information.
|
145
|
+
def inspect
|
146
|
+
class_name = self.class.name.split('::').last
|
147
|
+
"<#{class_name} name: #{@name.inspect}, email_address: #{@email_address.inspect},"\
|
148
|
+
" phone_number: #{@phone_number.inspect}, type: #{@type.inspect}, options:"\
|
149
|
+
" #{@options.inspect}, address: #{@address.inspect}, trackers: #{@trackers.inspect}>"
|
150
|
+
end
|
123
151
|
end
|
124
152
|
end
|
@@ -14,11 +14,10 @@ module PaypalServerSdk
|
|
14
14
|
attr_accessor :name
|
15
15
|
|
16
16
|
# The [two-character ISO 3166-1 code](/api/rest/reference/country-codes/)
|
17
|
-
# that identifies the country or region
|
18
|
-
#
|
19
|
-
#
|
20
|
-
#
|
21
|
-
# price (CUP) method, bank card, and cross-border transactions.</blockquote>
|
17
|
+
# that identifies the country or region. Note: The country code for Great
|
18
|
+
# Britain is GB and not UK as used in the top-level domain names for that
|
19
|
+
# country. Use the `C2` country code for China worldwide for comparable
|
20
|
+
# uncontrolled price (CUP) method, bank card, and cross-border transactions.
|
22
21
|
# @return [String]
|
23
22
|
attr_accessor :country_code
|
24
23
|
|
@@ -81,5 +80,19 @@ module PaypalServerSdk
|
|
81
80
|
bic: bic,
|
82
81
|
iban_last_chars: iban_last_chars)
|
83
82
|
end
|
83
|
+
|
84
|
+
# Provides a human-readable string representation of the object.
|
85
|
+
def to_s
|
86
|
+
class_name = self.class.name.split('::').last
|
87
|
+
"<#{class_name} name: #{@name}, country_code: #{@country_code}, bic: #{@bic},"\
|
88
|
+
" iban_last_chars: #{@iban_last_chars}>"
|
89
|
+
end
|
90
|
+
|
91
|
+
# Provides a debugging-friendly string with detailed object information.
|
92
|
+
def inspect
|
93
|
+
class_name = self.class.name.split('::').last
|
94
|
+
"<#{class_name} name: #{@name.inspect}, country_code: #{@country_code.inspect}, bic:"\
|
95
|
+
" #{@bic.inspect}, iban_last_chars: #{@iban_last_chars.inspect}>"
|
96
|
+
end
|
84
97
|
end
|
85
98
|
end
|
@@ -14,11 +14,10 @@ module PaypalServerSdk
|
|
14
14
|
attr_accessor :name
|
15
15
|
|
16
16
|
# The [two-character ISO 3166-1 code](/api/rest/reference/country-codes/)
|
17
|
-
# that identifies the country or region
|
18
|
-
#
|
19
|
-
#
|
20
|
-
#
|
21
|
-
# price (CUP) method, bank card, and cross-border transactions.</blockquote>
|
17
|
+
# that identifies the country or region. Note: The country code for Great
|
18
|
+
# Britain is GB and not UK as used in the top-level domain names for that
|
19
|
+
# country. Use the `C2` country code for China worldwide for comparable
|
20
|
+
# uncontrolled price (CUP) method, bank card, and cross-border transactions.
|
22
21
|
# @return [String]
|
23
22
|
attr_accessor :country_code
|
24
23
|
|
@@ -69,5 +68,19 @@ module PaypalServerSdk
|
|
69
68
|
country_code: country_code,
|
70
69
|
experience_context: experience_context)
|
71
70
|
end
|
71
|
+
|
72
|
+
# Provides a human-readable string representation of the object.
|
73
|
+
def to_s
|
74
|
+
class_name = self.class.name.split('::').last
|
75
|
+
"<#{class_name} name: #{@name}, country_code: #{@country_code}, experience_context:"\
|
76
|
+
" #{@experience_context}>"
|
77
|
+
end
|
78
|
+
|
79
|
+
# Provides a debugging-friendly string with detailed object information.
|
80
|
+
def inspect
|
81
|
+
class_name = self.class.name.split('::').last
|
82
|
+
"<#{class_name} name: #{@name.inspect}, country_code: #{@country_code.inspect},"\
|
83
|
+
" experience_context: #{@experience_context.inspect}>"
|
84
|
+
end
|
72
85
|
end
|
73
86
|
end
|
@@ -14,16 +14,24 @@ module PaypalServerSdk
|
|
14
14
|
# PayPal supports the following SEC codes.
|
15
15
|
class StandardEntryClassCode
|
16
16
|
STANDARD_ENTRY_CLASS_CODE = [
|
17
|
-
#
|
17
|
+
# The API caller (merchant/partner) accepts authorization and payment
|
18
|
+
# information from a consumer over the telephone.
|
18
19
|
TEL = 'TEL'.freeze,
|
19
20
|
|
20
|
-
#
|
21
|
+
# The API caller (merchant/partner) accepts Debit transactions from a
|
22
|
+
# consumer on their website.
|
21
23
|
WEB = 'WEB'.freeze,
|
22
24
|
|
23
|
-
#
|
25
|
+
# Cash concentration and disbursement for corporate debit transaction.
|
26
|
+
# Used to disburse or consolidate funds. Entries are usually Optional
|
27
|
+
# high-dollar, low-volume, and time-critical. (e.g. intra-company
|
28
|
+
# transfers or invoice payments to suppliers).
|
24
29
|
CCD = 'CCD'.freeze,
|
25
30
|
|
26
|
-
#
|
31
|
+
# Prearranged payment and deposit entries. Used for debit payments
|
32
|
+
# authorized by a consumer account holder, and usually initiated by a
|
33
|
+
# company. These are usually recurring debits (such as insurance
|
34
|
+
# premiums).
|
27
35
|
PPD = 'PPD'.freeze
|
28
36
|
].freeze
|
29
37
|
|
@@ -7,7 +7,8 @@ module PaypalServerSdk
|
|
7
7
|
# Defines how and when the payment source gets vaulted.
|
8
8
|
class StoreInVaultInstruction
|
9
9
|
STORE_IN_VAULT_INSTRUCTION = [
|
10
|
-
#
|
10
|
+
# Defines that the payment_source will be vaulted only when at least one
|
11
|
+
# authorization or capture using that payment_source is successful.
|
11
12
|
ON_SUCCESS = 'ON_SUCCESS'.freeze
|
12
13
|
].freeze
|
13
14
|
|
@@ -6,15 +6,14 @@
|
|
6
6
|
module PaypalServerSdk
|
7
7
|
# Provides additional details to process a payment using a `payment_source`
|
8
8
|
# that has been stored or is intended to be stored (also referred to as
|
9
|
-
# stored_credential or card-on-file)
|
10
|
-
#
|
11
|
-
# `payment_initiator=CUSTOMER
|
12
|
-
# `payment_initiator=CUSTOMER
|
9
|
+
# stored_credential or card-on-file). Parameter compatibility:
|
10
|
+
# `payment_type=ONE_TIME` is compatible only with
|
11
|
+
# `payment_initiator=CUSTOMER`. `usage=FIRST` is compatible only with
|
12
|
+
# `payment_initiator=CUSTOMER`. `previous_transaction_reference` or
|
13
13
|
# `previous_network_transaction_reference` is compatible only with
|
14
|
-
# `payment_initiator=MERCHANT
|
14
|
+
# `payment_initiator=MERCHANT`. Only one of the parameters -
|
15
15
|
# `previous_transaction_reference` and
|
16
|
-
# `previous_network_transaction_reference` - can be present in the
|
17
|
-
# request.</li></ul>
|
16
|
+
# `previous_network_transaction_reference` - can be present in the request.
|
18
17
|
class StoredPaymentSource < BaseModel
|
19
18
|
SKIP = Object.new
|
20
19
|
private_constant :SKIP
|
@@ -91,5 +90,22 @@ module PaypalServerSdk
|
|
91
90
|
usage: usage,
|
92
91
|
previous_network_transaction_reference: previous_network_transaction_reference)
|
93
92
|
end
|
93
|
+
|
94
|
+
# Provides a human-readable string representation of the object.
|
95
|
+
def to_s
|
96
|
+
class_name = self.class.name.split('::').last
|
97
|
+
"<#{class_name} payment_initiator: #{@payment_initiator}, payment_type: #{@payment_type},"\
|
98
|
+
" usage: #{@usage}, previous_network_transaction_reference:"\
|
99
|
+
" #{@previous_network_transaction_reference}>"
|
100
|
+
end
|
101
|
+
|
102
|
+
# Provides a debugging-friendly string with detailed object information.
|
103
|
+
def inspect
|
104
|
+
class_name = self.class.name.split('::').last
|
105
|
+
"<#{class_name} payment_initiator: #{@payment_initiator.inspect}, payment_type:"\
|
106
|
+
" #{@payment_type.inspect}, usage: #{@usage.inspect},"\
|
107
|
+
' previous_network_transaction_reference:'\
|
108
|
+
" #{@previous_network_transaction_reference.inspect}>"
|
109
|
+
end
|
94
110
|
end
|
95
111
|
end
|
@@ -7,13 +7,16 @@ module PaypalServerSdk
|
|
7
7
|
# Indicates the type of the stored payment_source payment.
|
8
8
|
class StoredPaymentSourcePaymentType
|
9
9
|
STORED_PAYMENT_SOURCE_PAYMENT_TYPE = [
|
10
|
-
#
|
10
|
+
# One Time payment such as online purchase or donation. (e.g. Checkout
|
11
|
+
# with one-click).
|
11
12
|
ONE_TIME = 'ONE_TIME'.freeze,
|
12
13
|
|
13
|
-
#
|
14
|
+
# Payment which is part of a series of payments with fixed or variable
|
15
|
+
# amounts, following a fixed time interval. (e.g. Subscription payments).
|
14
16
|
RECURRING = 'RECURRING'.freeze,
|
15
17
|
|
16
|
-
#
|
18
|
+
# Payment which is part of a series of payments that occur on a non-fixed
|
19
|
+
# schedule and/or have variable amounts. (e.g. Account Topup payments).
|
17
20
|
UNSCHEDULED = 'UNSCHEDULED'.freeze
|
18
21
|
].freeze
|
19
22
|
|
@@ -8,13 +8,16 @@ module PaypalServerSdk
|
|
8
8
|
# payment source (also referred to as stored credential or card on file).
|
9
9
|
class StoredPaymentSourceUsageType
|
10
10
|
STORED_PAYMENT_SOURCE_USAGE_TYPE = [
|
11
|
-
#
|
11
|
+
# Indicates the Initial/First payment with a payment_source that is
|
12
|
+
# intended to be stored upon successful processing of the payment.
|
12
13
|
FIRST = 'FIRST'.freeze,
|
13
14
|
|
14
|
-
#
|
15
|
+
# Indicates a payment using a stored payment_source which has been
|
16
|
+
# successfully used previously for a payment.
|
15
17
|
SUBSEQUENT = 'SUBSEQUENT'.freeze,
|
16
18
|
|
17
|
-
#
|
19
|
+
# Indicates that PayPal will derive the value of `FIRST` or `SUBSEQUENT`
|
20
|
+
# based on data available to PayPal.
|
18
21
|
DERIVED = 'DERIVED'.freeze
|
19
22
|
].freeze
|
20
23
|
|
@@ -13,18 +13,20 @@ module PaypalServerSdk
|
|
13
13
|
|
14
14
|
# Merchants and partners can add Level 2 and 3 data to payments to reduce
|
15
15
|
# risk and payment processing costs. For more information about processing
|
16
|
-
# payments, see
|
17
|
-
# href="https://developer.paypal.com/docs/checkout/advanced/processing/">che
|
18
|
-
# ckout</a> or <a
|
19
|
-
# href="https://developer.paypal.com/docs/multiparty/checkout/advanced/proce
|
20
|
-
# ssing/">multiparty checkout</a>.
|
16
|
+
# payments, see checkout or multiparty checkout.
|
21
17
|
# @return [CardSupplementaryData]
|
22
18
|
attr_accessor :card
|
23
19
|
|
20
|
+
# Additional information necessary to evaluate the risk profile of a
|
21
|
+
# transaction.
|
22
|
+
# @return [RiskSupplementaryData]
|
23
|
+
attr_accessor :risk
|
24
|
+
|
24
25
|
# A mapping from model property names to API property names.
|
25
26
|
def self.names
|
26
27
|
@_hash = {} if @_hash.nil?
|
27
28
|
@_hash['card'] = 'card'
|
29
|
+
@_hash['risk'] = 'risk'
|
28
30
|
@_hash
|
29
31
|
end
|
30
32
|
|
@@ -32,6 +34,7 @@ module PaypalServerSdk
|
|
32
34
|
def self.optionals
|
33
35
|
%w[
|
34
36
|
card
|
37
|
+
risk
|
35
38
|
]
|
36
39
|
end
|
37
40
|
|
@@ -40,8 +43,9 @@ module PaypalServerSdk
|
|
40
43
|
[]
|
41
44
|
end
|
42
45
|
|
43
|
-
def initialize(card: SKIP)
|
46
|
+
def initialize(card: SKIP, risk: SKIP)
|
44
47
|
@card = card unless card == SKIP
|
48
|
+
@risk = risk unless risk == SKIP
|
45
49
|
end
|
46
50
|
|
47
51
|
# Creates an instance of the object from a hash.
|
@@ -50,9 +54,23 @@ module PaypalServerSdk
|
|
50
54
|
|
51
55
|
# Extract variables from the hash.
|
52
56
|
card = CardSupplementaryData.from_hash(hash['card']) if hash['card']
|
57
|
+
risk = RiskSupplementaryData.from_hash(hash['risk']) if hash['risk']
|
53
58
|
|
54
59
|
# Create object from extracted values.
|
55
|
-
SupplementaryData.new(card: card
|
60
|
+
SupplementaryData.new(card: card,
|
61
|
+
risk: risk)
|
62
|
+
end
|
63
|
+
|
64
|
+
# Provides a human-readable string representation of the object.
|
65
|
+
def to_s
|
66
|
+
class_name = self.class.name.split('::').last
|
67
|
+
"<#{class_name} card: #{@card}, risk: #{@risk}>"
|
68
|
+
end
|
69
|
+
|
70
|
+
# Provides a debugging-friendly string with detailed object information.
|
71
|
+
def inspect
|
72
|
+
class_name = self.class.name.split('::').last
|
73
|
+
"<#{class_name} card: #{@card.inspect}, risk: #{@risk.inspect}>"
|
56
74
|
end
|
57
75
|
end
|
58
76
|
end
|
@@ -59,5 +59,18 @@ module PaypalServerSdk
|
|
59
59
|
SupplementaryPurchaseData.new(invoice_id: invoice_id,
|
60
60
|
note_to_payer: note_to_payer)
|
61
61
|
end
|
62
|
+
|
63
|
+
# Provides a human-readable string representation of the object.
|
64
|
+
def to_s
|
65
|
+
class_name = self.class.name.split('::').last
|
66
|
+
"<#{class_name} invoice_id: #{@invoice_id}, note_to_payer: #{@note_to_payer}>"
|
67
|
+
end
|
68
|
+
|
69
|
+
# Provides a debugging-friendly string with detailed object information.
|
70
|
+
def inspect
|
71
|
+
class_name = self.class.name.split('::').last
|
72
|
+
"<#{class_name} invoice_id: #{@invoice_id.inspect}, note_to_payer:"\
|
73
|
+
" #{@note_to_payer.inspect}>"
|
74
|
+
end
|
62
75
|
end
|
63
76
|
end
|
@@ -7,10 +7,10 @@ module PaypalServerSdk
|
|
7
7
|
# The customer's tax ID type.
|
8
8
|
class TaxIdType
|
9
9
|
TAX_ID_TYPE = [
|
10
|
-
#
|
10
|
+
# The individual tax ID type, typically is 11 characters long.
|
11
11
|
BR_CPF = 'BR_CPF'.freeze,
|
12
12
|
|
13
|
-
#
|
13
|
+
# The business tax ID type, typically is 14 characters long.
|
14
14
|
BR_CNPJ = 'BR_CNPJ'.freeze
|
15
15
|
].freeze
|
16
16
|
|