paypal-server-sdk 2.3.0 → 2.4.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.
Files changed (400) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +148 -148
  3. data/lib/paypal_server_sdk/api_helper.rb +10 -10
  4. data/lib/paypal_server_sdk/client.rb +102 -102
  5. data/lib/paypal_server_sdk/configuration.rb +135 -135
  6. data/lib/paypal_server_sdk/controllers/base_controller.rb +58 -58
  7. data/lib/paypal_server_sdk/controllers/o_auth_authorization_controller.rb +42 -42
  8. data/lib/paypal_server_sdk/controllers/orders_controller.rb +551 -551
  9. data/lib/paypal_server_sdk/controllers/payments_controller.rb +462 -462
  10. data/lib/paypal_server_sdk/controllers/subscriptions_controller.rb +843 -843
  11. data/lib/paypal_server_sdk/controllers/transaction_search_controller.rb +178 -178
  12. data/lib/paypal_server_sdk/controllers/vault_controller.rb +224 -224
  13. data/lib/paypal_server_sdk/exceptions/api_exception.rb +21 -21
  14. data/lib/paypal_server_sdk/exceptions/default_error_exception.rb +78 -78
  15. data/lib/paypal_server_sdk/exceptions/error_exception.rb +70 -70
  16. data/lib/paypal_server_sdk/exceptions/o_auth_provider_exception.rb +47 -47
  17. data/lib/paypal_server_sdk/exceptions/search_error_exception.rb +90 -90
  18. data/lib/paypal_server_sdk/exceptions/subscription_error_exception.rb +78 -78
  19. data/lib/paypal_server_sdk/http/api_response.rb +7 -7
  20. data/lib/paypal_server_sdk/http/auth/o_auth2.rb +144 -144
  21. data/lib/paypal_server_sdk/http/http_call_back.rb +10 -10
  22. data/lib/paypal_server_sdk/http/http_method_enum.rb +10 -10
  23. data/lib/paypal_server_sdk/http/http_request.rb +10 -10
  24. data/lib/paypal_server_sdk/http/http_response.rb +10 -10
  25. data/lib/paypal_server_sdk/http/proxy_settings.rb +5 -5
  26. data/lib/paypal_server_sdk/logging/configuration/api_logging_configuration.rb +5 -5
  27. data/lib/paypal_server_sdk/logging/sdk_logger.rb +5 -5
  28. data/lib/paypal_server_sdk/models/activate_subscription_request.rb +63 -63
  29. data/lib/paypal_server_sdk/models/activity_timestamps.rb +79 -79
  30. data/lib/paypal_server_sdk/models/address.rb +132 -132
  31. data/lib/paypal_server_sdk/models/amount_breakdown.rb +132 -132
  32. data/lib/paypal_server_sdk/models/amount_with_breakdown.rb +94 -94
  33. data/lib/paypal_server_sdk/models/app_switch_context.rb +74 -74
  34. data/lib/paypal_server_sdk/models/apple_pay_attributes.rb +73 -73
  35. data/lib/paypal_server_sdk/models/apple_pay_attributes_response.rb +62 -62
  36. data/lib/paypal_server_sdk/models/apple_pay_card.rb +108 -108
  37. data/lib/paypal_server_sdk/models/apple_pay_card_response.rb +210 -210
  38. data/lib/paypal_server_sdk/models/apple_pay_decrypted_token_data.rb +111 -111
  39. data/lib/paypal_server_sdk/models/apple_pay_experience_context.rb +68 -68
  40. data/lib/paypal_server_sdk/models/apple_pay_payment_data.rb +97 -97
  41. data/lib/paypal_server_sdk/models/apple_pay_payment_data_type.rb +36 -36
  42. data/lib/paypal_server_sdk/models/apple_pay_payment_object.rb +150 -150
  43. data/lib/paypal_server_sdk/models/apple_pay_payment_token.rb +63 -63
  44. data/lib/paypal_server_sdk/models/apple_pay_request.rb +165 -165
  45. data/lib/paypal_server_sdk/models/apple_pay_request_card.rb +88 -88
  46. data/lib/paypal_server_sdk/models/apple_pay_tokenized_card.rb +127 -127
  47. data/lib/paypal_server_sdk/models/application_context_user_action.rb +37 -37
  48. data/lib/paypal_server_sdk/models/assurance_details.rb +82 -82
  49. data/lib/paypal_server_sdk/models/auction_information.rb +100 -100
  50. data/lib/paypal_server_sdk/models/authentication_response.rb +74 -74
  51. data/lib/paypal_server_sdk/models/authorization.rb +211 -211
  52. data/lib/paypal_server_sdk/models/authorization_incomplete_reason.rb +31 -31
  53. data/lib/paypal_server_sdk/models/authorization_status.rb +54 -54
  54. data/lib/paypal_server_sdk/models/authorization_status_details.rb +62 -62
  55. data/lib/paypal_server_sdk/models/authorization_status_with_details.rb +72 -72
  56. data/lib/paypal_server_sdk/models/authorization_with_additional_data.rb +225 -225
  57. data/lib/paypal_server_sdk/models/avs_code.rb +152 -152
  58. data/lib/paypal_server_sdk/models/balance_information.rb +106 -106
  59. data/lib/paypal_server_sdk/models/balances_response.rb +111 -111
  60. data/lib/paypal_server_sdk/models/bancontact_payment_object.rb +110 -110
  61. data/lib/paypal_server_sdk/models/bancontact_payment_request.rb +87 -87
  62. data/lib/paypal_server_sdk/models/bank_request.rb +71 -71
  63. data/lib/paypal_server_sdk/models/base_model.rb +110 -110
  64. data/lib/paypal_server_sdk/models/billing_cycle.rb +129 -118
  65. data/lib/paypal_server_sdk/models/billing_cycle_override.rb +91 -91
  66. data/lib/paypal_server_sdk/models/billing_plan.rb +212 -212
  67. data/lib/paypal_server_sdk/models/bin_details.rb +102 -102
  68. data/lib/paypal_server_sdk/models/blik_experience_context.rb +142 -142
  69. data/lib/paypal_server_sdk/models/blik_level0_payment_object.rb +60 -60
  70. data/lib/paypal_server_sdk/models/blik_one_click_payment_object.rb +64 -64
  71. data/lib/paypal_server_sdk/models/blik_one_click_payment_request.rb +97 -97
  72. data/lib/paypal_server_sdk/models/blik_payment_object.rb +99 -99
  73. data/lib/paypal_server_sdk/models/blik_payment_request.rb +120 -120
  74. data/lib/paypal_server_sdk/models/callback_configuration.rb +74 -74
  75. data/lib/paypal_server_sdk/models/callback_events.rb +35 -35
  76. data/lib/paypal_server_sdk/models/cancel_subscription_request.rb +60 -60
  77. data/lib/paypal_server_sdk/models/capture_incomplete_reason.rb +82 -82
  78. data/lib/paypal_server_sdk/models/capture_payment_instruction.rb +104 -104
  79. data/lib/paypal_server_sdk/models/capture_request.rb +126 -126
  80. data/lib/paypal_server_sdk/models/capture_status.rb +52 -52
  81. data/lib/paypal_server_sdk/models/capture_status_details.rb +62 -62
  82. data/lib/paypal_server_sdk/models/capture_status_with_details.rb +72 -72
  83. data/lib/paypal_server_sdk/models/capture_subscription_request.rb +78 -78
  84. data/lib/paypal_server_sdk/models/capture_type.rb +24 -24
  85. data/lib/paypal_server_sdk/models/captured_payment.rb +274 -274
  86. data/lib/paypal_server_sdk/models/card_attributes.rb +83 -83
  87. data/lib/paypal_server_sdk/models/card_attributes_response.rb +62 -62
  88. data/lib/paypal_server_sdk/models/card_authentication_response.rb +63 -63
  89. data/lib/paypal_server_sdk/models/card_brand.rb +149 -149
  90. data/lib/paypal_server_sdk/models/card_customer.rb +98 -98
  91. data/lib/paypal_server_sdk/models/card_customer_information.rb +108 -108
  92. data/lib/paypal_server_sdk/models/card_experience_context.rb +71 -71
  93. data/lib/paypal_server_sdk/models/card_from_request.rb +72 -72
  94. data/lib/paypal_server_sdk/models/card_payment_token_entity.rb +178 -178
  95. data/lib/paypal_server_sdk/models/card_request.rb +191 -191
  96. data/lib/paypal_server_sdk/models/card_response.rb +180 -180
  97. data/lib/paypal_server_sdk/models/card_response_address.rb +137 -137
  98. data/lib/paypal_server_sdk/models/card_response_with_billing_address.rb +101 -101
  99. data/lib/paypal_server_sdk/models/card_stored_credential.rb +111 -111
  100. data/lib/paypal_server_sdk/models/card_supplementary_data.rb +79 -79
  101. data/lib/paypal_server_sdk/models/card_type.rb +44 -44
  102. data/lib/paypal_server_sdk/models/card_vault_response.rb +99 -99
  103. data/lib/paypal_server_sdk/models/card_verification.rb +64 -64
  104. data/lib/paypal_server_sdk/models/card_verification_details.rb +140 -140
  105. data/lib/paypal_server_sdk/models/card_verification_processor_response.rb +74 -74
  106. data/lib/paypal_server_sdk/models/card_verification_status.rb +31 -31
  107. data/lib/paypal_server_sdk/models/cart_information.rb +94 -94
  108. data/lib/paypal_server_sdk/models/checkout_option.rb +77 -77
  109. data/lib/paypal_server_sdk/models/checkout_payment_intent.rb +40 -40
  110. data/lib/paypal_server_sdk/models/cobranded_card.rb +83 -83
  111. data/lib/paypal_server_sdk/models/confirm_order_request.rb +85 -85
  112. data/lib/paypal_server_sdk/models/create_subscription_request.rb +151 -151
  113. data/lib/paypal_server_sdk/models/customer.rb +76 -76
  114. data/lib/paypal_server_sdk/models/customer_information.rb +95 -95
  115. data/lib/paypal_server_sdk/models/customer_response.rb +75 -75
  116. data/lib/paypal_server_sdk/models/customer_vault_payment_tokens_response.rb +123 -123
  117. data/lib/paypal_server_sdk/models/cvv_code.rb +89 -89
  118. data/lib/paypal_server_sdk/models/cycle_execution.rb +124 -124
  119. data/lib/paypal_server_sdk/models/cycle_frequency.rb +72 -0
  120. data/lib/paypal_server_sdk/models/disbursement_mode.rb +34 -34
  121. data/lib/paypal_server_sdk/models/dispute_category.rb +31 -31
  122. data/lib/paypal_server_sdk/models/eci_flag.rb +50 -50
  123. data/lib/paypal_server_sdk/models/enrollment_status.rb +43 -43
  124. data/lib/paypal_server_sdk/models/eps_payment_object.rb +87 -87
  125. data/lib/paypal_server_sdk/models/eps_payment_request.rb +87 -87
  126. data/lib/paypal_server_sdk/models/error_details.rb +125 -125
  127. data/lib/paypal_server_sdk/models/exchange_rate.rb +91 -91
  128. data/lib/paypal_server_sdk/models/experience_context.rb +116 -116
  129. data/lib/paypal_server_sdk/models/experience_context_shipping_preference.rb +41 -41
  130. data/lib/paypal_server_sdk/models/experience_status.rb +44 -44
  131. data/lib/paypal_server_sdk/models/failed_payment_details.rb +98 -98
  132. data/lib/paypal_server_sdk/models/frequency.rb +75 -75
  133. data/lib/paypal_server_sdk/models/frequency_interval_unit.rb +48 -0
  134. data/lib/paypal_server_sdk/models/fulfillment_type.rb +47 -47
  135. data/lib/paypal_server_sdk/models/giropay_payment_object.rb +87 -87
  136. data/lib/paypal_server_sdk/models/giropay_payment_request.rb +87 -87
  137. data/lib/paypal_server_sdk/models/google_pay_authentication_method.rb +37 -37
  138. data/lib/paypal_server_sdk/models/google_pay_card.rb +128 -128
  139. data/lib/paypal_server_sdk/models/google_pay_card_response.rb +120 -120
  140. data/lib/paypal_server_sdk/models/google_pay_decrypted_token_data.rb +131 -131
  141. data/lib/paypal_server_sdk/models/google_pay_experience_context.rb +68 -68
  142. data/lib/paypal_server_sdk/models/google_pay_payment_method.rb +24 -24
  143. data/lib/paypal_server_sdk/models/google_pay_request.rb +136 -136
  144. data/lib/paypal_server_sdk/models/google_pay_request_card.rb +98 -98
  145. data/lib/paypal_server_sdk/models/google_pay_wallet_response.rb +98 -98
  146. data/lib/paypal_server_sdk/models/ideal_payment_object.rb +99 -99
  147. data/lib/paypal_server_sdk/models/ideal_payment_request.rb +97 -97
  148. data/lib/paypal_server_sdk/models/incentive_details.rb +99 -99
  149. data/lib/paypal_server_sdk/models/incentive_information.rb +71 -71
  150. data/lib/paypal_server_sdk/models/interval_unit.rb +40 -40
  151. data/lib/paypal_server_sdk/models/item.rb +161 -161
  152. data/lib/paypal_server_sdk/models/item_category.rb +38 -38
  153. data/lib/paypal_server_sdk/models/item_details.rb +287 -287
  154. data/lib/paypal_server_sdk/models/item_request.rb +163 -163
  155. data/lib/paypal_server_sdk/models/last_payment_details.rb +75 -75
  156. data/lib/paypal_server_sdk/models/level2_card_processing_data.rb +78 -78
  157. data/lib/paypal_server_sdk/models/level3_card_processing_data.rb +137 -137
  158. data/lib/paypal_server_sdk/models/liability_shift_indicator.rb +35 -35
  159. data/lib/paypal_server_sdk/models/line_item.rb +209 -209
  160. data/lib/paypal_server_sdk/models/link_description.rb +92 -92
  161. data/lib/paypal_server_sdk/models/link_http_method.rb +56 -56
  162. data/lib/paypal_server_sdk/models/merchant_preferences.rb +73 -73
  163. data/lib/paypal_server_sdk/models/mobile_return_flow.rb +36 -36
  164. data/lib/paypal_server_sdk/models/mobile_web_context.rb +76 -76
  165. data/lib/paypal_server_sdk/models/modify_subscription_request.rb +124 -124
  166. data/lib/paypal_server_sdk/models/modify_subscription_response.rb +141 -141
  167. data/lib/paypal_server_sdk/models/money.rb +75 -75
  168. data/lib/paypal_server_sdk/models/mybank_payment_object.rb +99 -99
  169. data/lib/paypal_server_sdk/models/mybank_payment_request.rb +87 -87
  170. data/lib/paypal_server_sdk/models/name.rb +73 -73
  171. data/lib/paypal_server_sdk/models/native_app_context.rb +72 -72
  172. data/lib/paypal_server_sdk/models/net_amount_breakdown_item.rb +87 -87
  173. data/lib/paypal_server_sdk/models/network_token.rb +110 -110
  174. data/lib/paypal_server_sdk/models/network_transaction.rb +107 -107
  175. data/lib/paypal_server_sdk/models/network_transaction_reference_entity.rb +100 -100
  176. data/lib/paypal_server_sdk/models/o_auth_provider_error.rb +58 -58
  177. data/lib/paypal_server_sdk/models/o_auth_token.rb +106 -106
  178. data/lib/paypal_server_sdk/models/one_time_charge.rb +118 -118
  179. data/lib/paypal_server_sdk/models/order.rb +197 -197
  180. data/lib/paypal_server_sdk/models/order_application_context.rb +219 -219
  181. data/lib/paypal_server_sdk/models/order_application_context_landing_page.rb +48 -48
  182. data/lib/paypal_server_sdk/models/order_application_context_shipping_preference.rb +45 -45
  183. data/lib/paypal_server_sdk/models/order_application_context_user_action.rb +42 -42
  184. data/lib/paypal_server_sdk/models/order_authorize_request.rb +63 -63
  185. data/lib/paypal_server_sdk/models/order_authorize_request_payment_source.rb +115 -115
  186. data/lib/paypal_server_sdk/models/order_authorize_response.rb +194 -194
  187. data/lib/paypal_server_sdk/models/order_authorize_response_payment_source.rb +102 -102
  188. data/lib/paypal_server_sdk/models/order_billing_plan.rb +93 -93
  189. data/lib/paypal_server_sdk/models/order_capture_request.rb +63 -63
  190. data/lib/paypal_server_sdk/models/order_capture_request_payment_source.rb +115 -115
  191. data/lib/paypal_server_sdk/models/order_confirm_application_context.rb +123 -123
  192. data/lib/paypal_server_sdk/models/order_request.rb +132 -132
  193. data/lib/paypal_server_sdk/models/order_status.rb +60 -60
  194. data/lib/paypal_server_sdk/models/order_tracker_item.rb +114 -114
  195. data/lib/paypal_server_sdk/models/order_tracker_request.rb +133 -133
  196. data/lib/paypal_server_sdk/models/order_tracker_response.rb +135 -135
  197. data/lib/paypal_server_sdk/models/order_tracker_status.rb +34 -34
  198. data/lib/paypal_server_sdk/models/orders_capture.rb +252 -252
  199. data/lib/paypal_server_sdk/models/orders_card_verification_method.rb +61 -61
  200. data/lib/paypal_server_sdk/models/os_type.rb +35 -35
  201. data/lib/paypal_server_sdk/models/p24_payment_object.rb +123 -123
  202. data/lib/paypal_server_sdk/models/p24_payment_request.rb +98 -98
  203. data/lib/paypal_server_sdk/models/pa_res_status.rb +57 -57
  204. data/lib/paypal_server_sdk/models/participant_metadata.rb +64 -64
  205. data/lib/paypal_server_sdk/models/patch.rb +93 -93
  206. data/lib/paypal_server_sdk/models/patch_op.rb +84 -84
  207. data/lib/paypal_server_sdk/models/payee_base.rb +76 -76
  208. data/lib/paypal_server_sdk/models/payee_payment_method_preference.rb +33 -33
  209. data/lib/paypal_server_sdk/models/payer.rb +136 -136
  210. data/lib/paypal_server_sdk/models/payer_base.rb +75 -75
  211. data/lib/paypal_server_sdk/models/payer_information.rb +146 -146
  212. data/lib/paypal_server_sdk/models/payer_name.rb +128 -128
  213. data/lib/paypal_server_sdk/models/payment_advice_code.rb +97 -97
  214. data/lib/paypal_server_sdk/models/payment_authorization.rb +233 -233
  215. data/lib/paypal_server_sdk/models/payment_collection.rb +113 -113
  216. data/lib/paypal_server_sdk/models/payment_initiator.rb +34 -34
  217. data/lib/paypal_server_sdk/models/payment_instruction.rb +121 -121
  218. data/lib/paypal_server_sdk/models/payment_method.rb +63 -63
  219. data/lib/paypal_server_sdk/models/payment_method_preference.rb +86 -86
  220. data/lib/paypal_server_sdk/models/payment_preferences.rb +105 -105
  221. data/lib/paypal_server_sdk/models/payment_preferences_override.rb +107 -107
  222. data/lib/paypal_server_sdk/models/payment_source.rb +203 -203
  223. data/lib/paypal_server_sdk/models/payment_source_response.rb +190 -190
  224. data/lib/paypal_server_sdk/models/payment_supplementary_data.rb +62 -62
  225. data/lib/paypal_server_sdk/models/payment_token_request.rb +74 -74
  226. data/lib/paypal_server_sdk/models/payment_token_request_card.rb +120 -120
  227. data/lib/paypal_server_sdk/models/payment_token_request_payment_source.rb +71 -71
  228. data/lib/paypal_server_sdk/models/payment_token_response.rb +104 -104
  229. data/lib/paypal_server_sdk/models/payment_token_response_payment_source.rb +91 -91
  230. data/lib/paypal_server_sdk/models/payment_token_status.rb +48 -48
  231. data/lib/paypal_server_sdk/models/payments_capture.rb +252 -252
  232. data/lib/paypal_server_sdk/models/paypal_experience_landing_page.rb +52 -52
  233. data/lib/paypal_server_sdk/models/paypal_experience_user_action.rb +37 -37
  234. data/lib/paypal_server_sdk/models/paypal_payment_token.rb +211 -211
  235. data/lib/paypal_server_sdk/models/paypal_payment_token_customer_type.rb +37 -37
  236. data/lib/paypal_server_sdk/models/paypal_payment_token_usage_type.rb +35 -35
  237. data/lib/paypal_server_sdk/models/paypal_reference_id_type.rb +40 -40
  238. data/lib/paypal_server_sdk/models/paypal_wallet.rb +188 -188
  239. data/lib/paypal_server_sdk/models/paypal_wallet_account_verification_status.rb +36 -36
  240. data/lib/paypal_server_sdk/models/paypal_wallet_attributes.rb +71 -71
  241. data/lib/paypal_server_sdk/models/paypal_wallet_attributes_response.rb +82 -82
  242. data/lib/paypal_server_sdk/models/paypal_wallet_contact_preference.rb +43 -43
  243. data/lib/paypal_server_sdk/models/paypal_wallet_context_shipping_preference.rb +40 -40
  244. data/lib/paypal_server_sdk/models/paypal_wallet_customer.rb +108 -108
  245. data/lib/paypal_server_sdk/models/paypal_wallet_customer_request.rb +108 -108
  246. data/lib/paypal_server_sdk/models/paypal_wallet_experience_context.rb +201 -201
  247. data/lib/paypal_server_sdk/models/paypal_wallet_response.rb +213 -213
  248. data/lib/paypal_server_sdk/models/paypal_wallet_stored_credential.rb +99 -99
  249. data/lib/paypal_server_sdk/models/paypal_wallet_vault_base.rb +134 -134
  250. data/lib/paypal_server_sdk/models/paypal_wallet_vault_instruction.rb +132 -132
  251. data/lib/paypal_server_sdk/models/paypal_wallet_vault_response.rb +99 -99
  252. data/lib/paypal_server_sdk/models/paypal_wallet_vault_status.rb +40 -40
  253. data/lib/paypal_server_sdk/models/phone.rb +91 -91
  254. data/lib/paypal_server_sdk/models/phone_number.rb +68 -68
  255. data/lib/paypal_server_sdk/models/phone_number_with_country_code.rb +83 -83
  256. data/lib/paypal_server_sdk/models/phone_number_with_optional_country_code.rb +81 -81
  257. data/lib/paypal_server_sdk/models/phone_type.rb +44 -44
  258. data/lib/paypal_server_sdk/models/phone_with_type.rb +72 -72
  259. data/lib/paypal_server_sdk/models/plan.rb +92 -92
  260. data/lib/paypal_server_sdk/models/plan_collection.rb +111 -111
  261. data/lib/paypal_server_sdk/models/plan_details.rb +147 -147
  262. data/lib/paypal_server_sdk/models/plan_override.rb +96 -96
  263. data/lib/paypal_server_sdk/models/plan_request.rb +154 -154
  264. data/lib/paypal_server_sdk/models/plan_request_status.rb +37 -37
  265. data/lib/paypal_server_sdk/models/platform_fee.rb +75 -75
  266. data/lib/paypal_server_sdk/models/pricing_model.rb +37 -37
  267. data/lib/paypal_server_sdk/models/pricing_scheme.rb +84 -84
  268. data/lib/paypal_server_sdk/models/pricing_tier.rb +83 -83
  269. data/lib/paypal_server_sdk/models/processing_instruction.rb +31 -31
  270. data/lib/paypal_server_sdk/models/processor_response.rb +98 -98
  271. data/lib/paypal_server_sdk/models/processor_response_code.rb +644 -644
  272. data/lib/paypal_server_sdk/models/purchase_unit.rb +245 -245
  273. data/lib/paypal_server_sdk/models/purchase_unit_request.rb +219 -219
  274. data/lib/paypal_server_sdk/models/reason_code.rb +56 -56
  275. data/lib/paypal_server_sdk/models/reauthorize_request.rb +72 -72
  276. data/lib/paypal_server_sdk/models/refund.rb +214 -214
  277. data/lib/paypal_server_sdk/models/refund_incomplete_reason.rb +25 -25
  278. data/lib/paypal_server_sdk/models/refund_payment_instruction.rb +80 -80
  279. data/lib/paypal_server_sdk/models/refund_platform_fee.rb +64 -64
  280. data/lib/paypal_server_sdk/models/refund_request.rb +115 -115
  281. data/lib/paypal_server_sdk/models/refund_status.rb +40 -40
  282. data/lib/paypal_server_sdk/models/refund_status_details.rb +62 -62
  283. data/lib/paypal_server_sdk/models/refund_status_with_details.rb +72 -72
  284. data/lib/paypal_server_sdk/models/related_identifiers.rb +83 -83
  285. data/lib/paypal_server_sdk/models/return_flow.rb +36 -36
  286. data/lib/paypal_server_sdk/models/risk_supplementary_data.rb +63 -63
  287. data/lib/paypal_server_sdk/models/search_response.rb +176 -176
  288. data/lib/paypal_server_sdk/models/seller_payable_breakdown.rb +177 -177
  289. data/lib/paypal_server_sdk/models/seller_protection.rb +78 -78
  290. data/lib/paypal_server_sdk/models/seller_protection_status.rb +41 -41
  291. data/lib/paypal_server_sdk/models/seller_receivable_breakdown.rb +147 -147
  292. data/lib/paypal_server_sdk/models/sepa_debit_experience_context.rb +89 -89
  293. data/lib/paypal_server_sdk/models/sepa_debit_request.rb +64 -64
  294. data/lib/paypal_server_sdk/models/setup_fee_failure_action.rb +32 -32
  295. data/lib/paypal_server_sdk/models/setup_token_request.rb +74 -74
  296. data/lib/paypal_server_sdk/models/setup_token_request_card.rb +143 -143
  297. data/lib/paypal_server_sdk/models/setup_token_request_payment_source.rb +111 -111
  298. data/lib/paypal_server_sdk/models/setup_token_response.rb +116 -116
  299. data/lib/paypal_server_sdk/models/setup_token_response_card.rb +178 -178
  300. data/lib/paypal_server_sdk/models/setup_token_response_payment_source.rb +81 -81
  301. data/lib/paypal_server_sdk/models/shipment_carrier.rb +5682 -5682
  302. data/lib/paypal_server_sdk/models/shipping_details.rb +133 -133
  303. data/lib/paypal_server_sdk/models/shipping_information.rb +101 -101
  304. data/lib/paypal_server_sdk/models/shipping_name.rb +62 -62
  305. data/lib/paypal_server_sdk/models/shipping_option.rb +108 -108
  306. data/lib/paypal_server_sdk/models/shipping_type.rb +48 -48
  307. data/lib/paypal_server_sdk/models/shipping_with_tracking_details.rb +152 -152
  308. data/lib/paypal_server_sdk/models/simple_postal_address_coarse_grained.rb +130 -130
  309. data/lib/paypal_server_sdk/models/sofort_payment_object.rb +99 -99
  310. data/lib/paypal_server_sdk/models/sofort_payment_request.rb +87 -87
  311. data/lib/paypal_server_sdk/models/standard_entry_class_code.rb +55 -55
  312. data/lib/paypal_server_sdk/models/store_in_vault_instruction.rb +25 -25
  313. data/lib/paypal_server_sdk/models/store_information.rb +71 -71
  314. data/lib/paypal_server_sdk/models/stored_payment_source.rb +111 -111
  315. data/lib/paypal_server_sdk/models/stored_payment_source_payment_type.rb +38 -38
  316. data/lib/paypal_server_sdk/models/stored_payment_source_usage_type.rb +39 -39
  317. data/lib/paypal_server_sdk/models/subscriber.rb +107 -107
  318. data/lib/paypal_server_sdk/models/subscriber_request.rb +120 -120
  319. data/lib/paypal_server_sdk/models/subscription.rb +241 -205
  320. data/lib/paypal_server_sdk/models/subscription_amount_with_breakdown.rb +119 -119
  321. data/lib/paypal_server_sdk/models/subscription_application_context.rb +134 -134
  322. data/lib/paypal_server_sdk/models/subscription_billing_cycle.rb +108 -108
  323. data/lib/paypal_server_sdk/models/subscription_billing_information.rb +148 -148
  324. data/lib/paypal_server_sdk/models/subscription_card_request.rb +141 -141
  325. data/lib/paypal_server_sdk/models/subscription_collection.rb +90 -90
  326. data/lib/paypal_server_sdk/models/subscription_customer_information.rb +84 -84
  327. data/lib/paypal_server_sdk/models/subscription_patch_application_context.rb +122 -122
  328. data/lib/paypal_server_sdk/models/subscription_payer.rb +85 -85
  329. data/lib/paypal_server_sdk/models/subscription_payer_name.rb +114 -114
  330. data/lib/paypal_server_sdk/models/subscription_payment_source.rb +65 -65
  331. data/lib/paypal_server_sdk/models/subscription_payment_source_response.rb +63 -63
  332. data/lib/paypal_server_sdk/models/subscription_plan_status.rb +37 -37
  333. data/lib/paypal_server_sdk/models/subscription_pricing_model.rb +31 -31
  334. data/lib/paypal_server_sdk/models/subscription_pricing_scheme.rb +129 -129
  335. data/lib/paypal_server_sdk/models/subscription_status.rb +52 -0
  336. data/lib/paypal_server_sdk/models/subscription_transaction_details.rb +118 -118
  337. data/lib/paypal_server_sdk/models/subscriptions_card_attributes.rb +83 -83
  338. data/lib/paypal_server_sdk/models/subscriptions_card_brand.rb +129 -129
  339. data/lib/paypal_server_sdk/models/supplementary_data.rb +76 -76
  340. data/lib/paypal_server_sdk/models/suspend_subscription.rb +60 -60
  341. data/lib/paypal_server_sdk/models/tax_amount.rb +63 -63
  342. data/lib/paypal_server_sdk/models/tax_id_type.rb +31 -31
  343. data/lib/paypal_server_sdk/models/tax_info.rb +69 -69
  344. data/lib/paypal_server_sdk/models/taxes.rb +71 -71
  345. data/lib/paypal_server_sdk/models/taxes_override.rb +72 -72
  346. data/lib/paypal_server_sdk/models/tenure_type.rb +38 -38
  347. data/lib/paypal_server_sdk/models/three_d_secure_authentication_response.rb +76 -76
  348. data/lib/paypal_server_sdk/models/three_d_secure_card_authentication_response.rb +89 -89
  349. data/lib/paypal_server_sdk/models/token.rb +68 -68
  350. data/lib/paypal_server_sdk/models/token_type.rb +25 -25
  351. data/lib/paypal_server_sdk/models/transaction_details.rb +126 -126
  352. data/lib/paypal_server_sdk/models/transaction_information.rb +494 -494
  353. data/lib/paypal_server_sdk/models/transaction_search_error_details.rb +103 -103
  354. data/lib/paypal_server_sdk/models/transactions_list.rb +111 -111
  355. data/lib/paypal_server_sdk/models/trustly_payment_object.rb +111 -111
  356. data/lib/paypal_server_sdk/models/trustly_payment_request.rb +98 -98
  357. data/lib/paypal_server_sdk/models/universal_product_code.rb +68 -68
  358. data/lib/paypal_server_sdk/models/upc_type.rb +52 -52
  359. data/lib/paypal_server_sdk/models/update_pricing_scheme.rb +72 -72
  360. data/lib/paypal_server_sdk/models/update_pricing_schemes_request.rb +69 -69
  361. data/lib/paypal_server_sdk/models/usage_pattern.rb +91 -91
  362. data/lib/paypal_server_sdk/models/usage_type.rb +34 -34
  363. data/lib/paypal_server_sdk/models/vault_apple_pay_request.rb +73 -73
  364. data/lib/paypal_server_sdk/models/vault_card_experience_context.rb +129 -129
  365. data/lib/paypal_server_sdk/models/vault_card_verification_method.rb +47 -47
  366. data/lib/paypal_server_sdk/models/vault_customer.rb +72 -72
  367. data/lib/paypal_server_sdk/models/vault_experience_context.rb +155 -155
  368. data/lib/paypal_server_sdk/models/vault_instruction.rb +62 -62
  369. data/lib/paypal_server_sdk/models/vault_instruction_action.rb +34 -34
  370. data/lib/paypal_server_sdk/models/vault_instruction_base.rb +64 -64
  371. data/lib/paypal_server_sdk/models/vault_paypal_wallet_request.rb +154 -154
  372. data/lib/paypal_server_sdk/models/vault_response.rb +100 -100
  373. data/lib/paypal_server_sdk/models/vault_response_customer.rb +86 -86
  374. data/lib/paypal_server_sdk/models/vault_status.rb +40 -40
  375. data/lib/paypal_server_sdk/models/vault_token_request.rb +68 -68
  376. data/lib/paypal_server_sdk/models/vault_token_request_type.rb +24 -24
  377. data/lib/paypal_server_sdk/models/vault_user_action.rb +37 -37
  378. data/lib/paypal_server_sdk/models/vault_venmo_request.rb +143 -143
  379. data/lib/paypal_server_sdk/models/vaulted_digital_wallet.rb +132 -132
  380. data/lib/paypal_server_sdk/models/vaulted_digital_wallet_shipping_details.rb +114 -114
  381. data/lib/paypal_server_sdk/models/venmo_experience_context.rb +101 -101
  382. data/lib/paypal_server_sdk/models/venmo_payment_token.rb +199 -199
  383. data/lib/paypal_server_sdk/models/venmo_payment_token_customer_type.rb +35 -35
  384. data/lib/paypal_server_sdk/models/venmo_payment_token_usage_pattern.rb +54 -54
  385. data/lib/paypal_server_sdk/models/venmo_payment_token_usage_type.rb +34 -34
  386. data/lib/paypal_server_sdk/models/venmo_vault_response.rb +100 -100
  387. data/lib/paypal_server_sdk/models/venmo_vault_response_status.rb +40 -40
  388. data/lib/paypal_server_sdk/models/venmo_wallet_additional_attributes.rb +72 -72
  389. data/lib/paypal_server_sdk/models/venmo_wallet_attributes_response.rb +62 -62
  390. data/lib/paypal_server_sdk/models/venmo_wallet_customer_information.rb +94 -94
  391. data/lib/paypal_server_sdk/models/venmo_wallet_experience_context.rb +108 -108
  392. data/lib/paypal_server_sdk/models/venmo_wallet_experience_context_shipping_preference.rb +38 -38
  393. data/lib/paypal_server_sdk/models/venmo_wallet_experience_context_user_action.rb +37 -37
  394. data/lib/paypal_server_sdk/models/venmo_wallet_request.rb +102 -102
  395. data/lib/paypal_server_sdk/models/venmo_wallet_response.rb +146 -146
  396. data/lib/paypal_server_sdk/models/venmo_wallet_vault_attributes.rb +131 -131
  397. data/lib/paypal_server_sdk/utilities/date_time_helper.rb +11 -11
  398. data/lib/paypal_server_sdk/utilities/file_wrapper.rb +17 -17
  399. data/lib/paypal_server_sdk.rb +440 -437
  400. metadata +5 -2
@@ -1,143 +1,143 @@
1
- # paypal_server_sdk
2
- #
3
- # This file was automatically generated by APIMATIC v3.0
4
- # ( https://www.apimatic.io ).
5
-
6
- module PaypalServerSdk
7
- # A resource representing a request to vault Venmo.
8
- class VaultVenmoRequest < BaseModel
9
- SKIP = Object.new
10
- private_constant :SKIP
11
-
12
- # The description displayed to the consumer on the approval flow for a
13
- # digital wallet, as well as on the merchant view of the payment token
14
- # management experience. exp: PayPal.com.
15
- # @return [String]
16
- attr_accessor :description
17
-
18
- # Expected business/charge model for the billing agreement.
19
- # @return [UsagePattern]
20
- attr_accessor :usage_pattern
21
-
22
- # The shipping details.
23
- # @return [VaultedDigitalWalletShippingDetails]
24
- attr_accessor :shipping
25
-
26
- # Create multiple payment tokens for the same payer, merchant/platform
27
- # combination. Use this when the customer has not logged in at
28
- # merchant/platform. The payment token thus generated, can then also be used
29
- # to create the customer account at merchant/platform. Use this also when
30
- # multiple payment tokens are required for the same payer, different
31
- # customer at merchant/platform. This helps to identify customers distinctly
32
- # even though they may share the same PayPal account. This only applies to
33
- # PayPal payment source.
34
- # @return [TrueClass | FalseClass]
35
- attr_accessor :permit_multiple_payment_tokens
36
-
37
- # The usage type associated with a digital wallet payment token.
38
- # @return [PaypalPaymentTokenUsageType]
39
- attr_accessor :usage_type
40
-
41
- # The customer type associated with a digital wallet payment token. This is
42
- # to indicate whether the customer acting on the merchant / platform is
43
- # either a business or a consumer.
44
- # @return [PaypalPaymentTokenCustomerType]
45
- attr_accessor :customer_type
46
-
47
- # A resource representing an experience context of vault a venmo account.
48
- # @return [VenmoExperienceContext]
49
- attr_accessor :experience_context
50
-
51
- # A mapping from model property names to API property names.
52
- def self.names
53
- @_hash = {} if @_hash.nil?
54
- @_hash['description'] = 'description'
55
- @_hash['usage_pattern'] = 'usage_pattern'
56
- @_hash['shipping'] = 'shipping'
57
- @_hash['permit_multiple_payment_tokens'] =
58
- 'permit_multiple_payment_tokens'
59
- @_hash['usage_type'] = 'usage_type'
60
- @_hash['customer_type'] = 'customer_type'
61
- @_hash['experience_context'] = 'experience_context'
62
- @_hash
63
- end
64
-
65
- # An array for optional fields
66
- def self.optionals
67
- %w[
68
- description
69
- usage_pattern
70
- shipping
71
- permit_multiple_payment_tokens
72
- usage_type
73
- customer_type
74
- experience_context
75
- ]
76
- end
77
-
78
- # An array for nullable fields
79
- def self.nullables
80
- []
81
- end
82
-
83
- def initialize(description: SKIP, usage_pattern: SKIP, shipping: SKIP,
84
- permit_multiple_payment_tokens: false, usage_type: SKIP,
85
- customer_type: SKIP, experience_context: SKIP)
86
- @description = description unless description == SKIP
87
- @usage_pattern = usage_pattern unless usage_pattern == SKIP
88
- @shipping = shipping unless shipping == SKIP
89
- unless permit_multiple_payment_tokens == SKIP
90
- @permit_multiple_payment_tokens =
91
- permit_multiple_payment_tokens
92
- end
93
- @usage_type = usage_type unless usage_type == SKIP
94
- @customer_type = customer_type unless customer_type == SKIP
95
- @experience_context = experience_context unless experience_context == SKIP
96
- end
97
-
98
- # Creates an instance of the object from a hash.
99
- def self.from_hash(hash)
100
- return nil unless hash
101
-
102
- # Extract variables from the hash.
103
- description = hash.key?('description') ? hash['description'] : SKIP
104
- usage_pattern = hash.key?('usage_pattern') ? hash['usage_pattern'] : SKIP
105
- shipping = VaultedDigitalWalletShippingDetails.from_hash(hash['shipping']) if
106
- hash['shipping']
107
- permit_multiple_payment_tokens =
108
- hash['permit_multiple_payment_tokens'] ||= false
109
- usage_type = hash.key?('usage_type') ? hash['usage_type'] : SKIP
110
- customer_type = hash.key?('customer_type') ? hash['customer_type'] : SKIP
111
- experience_context = VenmoExperienceContext.from_hash(hash['experience_context']) if
112
- hash['experience_context']
113
-
114
- # Create object from extracted values.
115
- VaultVenmoRequest.new(description: description,
116
- usage_pattern: usage_pattern,
117
- shipping: shipping,
118
- permit_multiple_payment_tokens: permit_multiple_payment_tokens,
119
- usage_type: usage_type,
120
- customer_type: customer_type,
121
- experience_context: experience_context)
122
- end
123
-
124
- # Provides a human-readable string representation of the object.
125
- def to_s
126
- class_name = self.class.name.split('::').last
127
- "<#{class_name} description: #{@description}, usage_pattern: #{@usage_pattern}, shipping:"\
128
- " #{@shipping}, permit_multiple_payment_tokens: #{@permit_multiple_payment_tokens},"\
129
- " usage_type: #{@usage_type}, customer_type: #{@customer_type}, experience_context:"\
130
- " #{@experience_context}>"
131
- end
132
-
133
- # Provides a debugging-friendly string with detailed object information.
134
- def inspect
135
- class_name = self.class.name.split('::').last
136
- "<#{class_name} description: #{@description.inspect}, usage_pattern:"\
137
- " #{@usage_pattern.inspect}, shipping: #{@shipping.inspect}, permit_multiple_payment_tokens:"\
138
- " #{@permit_multiple_payment_tokens.inspect}, usage_type: #{@usage_type.inspect},"\
139
- " customer_type: #{@customer_type.inspect}, experience_context:"\
140
- " #{@experience_context.inspect}>"
141
- end
142
- end
143
- end
1
+ # paypal_server_sdk
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0
4
+ # ( https://www.apimatic.io ).
5
+
6
+ module PaypalServerSdk
7
+ # A resource representing a request to vault Venmo.
8
+ class VaultVenmoRequest < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # The description displayed to the consumer on the approval flow for a
13
+ # digital wallet, as well as on the merchant view of the payment token
14
+ # management experience. exp: PayPal.com.
15
+ # @return [String]
16
+ attr_accessor :description
17
+
18
+ # Expected business/charge model for the billing agreement.
19
+ # @return [UsagePattern]
20
+ attr_accessor :usage_pattern
21
+
22
+ # The shipping details.
23
+ # @return [VaultedDigitalWalletShippingDetails]
24
+ attr_accessor :shipping
25
+
26
+ # Create multiple payment tokens for the same payer, merchant/platform
27
+ # combination. Use this when the customer has not logged in at
28
+ # merchant/platform. The payment token thus generated, can then also be used
29
+ # to create the customer account at merchant/platform. Use this also when
30
+ # multiple payment tokens are required for the same payer, different
31
+ # customer at merchant/platform. This helps to identify customers distinctly
32
+ # even though they may share the same PayPal account. This only applies to
33
+ # PayPal payment source.
34
+ # @return [TrueClass | FalseClass]
35
+ attr_accessor :permit_multiple_payment_tokens
36
+
37
+ # The usage type associated with a digital wallet payment token.
38
+ # @return [PaypalPaymentTokenUsageType]
39
+ attr_accessor :usage_type
40
+
41
+ # The customer type associated with a digital wallet payment token. This is
42
+ # to indicate whether the customer acting on the merchant / platform is
43
+ # either a business or a consumer.
44
+ # @return [PaypalPaymentTokenCustomerType]
45
+ attr_accessor :customer_type
46
+
47
+ # A resource representing an experience context of vault a venmo account.
48
+ # @return [VenmoExperienceContext]
49
+ attr_accessor :experience_context
50
+
51
+ # A mapping from model property names to API property names.
52
+ def self.names
53
+ @_hash = {} if @_hash.nil?
54
+ @_hash['description'] = 'description'
55
+ @_hash['usage_pattern'] = 'usage_pattern'
56
+ @_hash['shipping'] = 'shipping'
57
+ @_hash['permit_multiple_payment_tokens'] =
58
+ 'permit_multiple_payment_tokens'
59
+ @_hash['usage_type'] = 'usage_type'
60
+ @_hash['customer_type'] = 'customer_type'
61
+ @_hash['experience_context'] = 'experience_context'
62
+ @_hash
63
+ end
64
+
65
+ # An array for optional fields
66
+ def self.optionals
67
+ %w[
68
+ description
69
+ usage_pattern
70
+ shipping
71
+ permit_multiple_payment_tokens
72
+ usage_type
73
+ customer_type
74
+ experience_context
75
+ ]
76
+ end
77
+
78
+ # An array for nullable fields
79
+ def self.nullables
80
+ []
81
+ end
82
+
83
+ def initialize(description: SKIP, usage_pattern: SKIP, shipping: SKIP,
84
+ permit_multiple_payment_tokens: false, usage_type: SKIP,
85
+ customer_type: SKIP, experience_context: SKIP)
86
+ @description = description unless description == SKIP
87
+ @usage_pattern = usage_pattern unless usage_pattern == SKIP
88
+ @shipping = shipping unless shipping == SKIP
89
+ unless permit_multiple_payment_tokens == SKIP
90
+ @permit_multiple_payment_tokens =
91
+ permit_multiple_payment_tokens
92
+ end
93
+ @usage_type = usage_type unless usage_type == SKIP
94
+ @customer_type = customer_type unless customer_type == SKIP
95
+ @experience_context = experience_context unless experience_context == SKIP
96
+ end
97
+
98
+ # Creates an instance of the object from a hash.
99
+ def self.from_hash(hash)
100
+ return nil unless hash
101
+
102
+ # Extract variables from the hash.
103
+ description = hash.key?('description') ? hash['description'] : SKIP
104
+ usage_pattern = hash.key?('usage_pattern') ? hash['usage_pattern'] : SKIP
105
+ shipping = VaultedDigitalWalletShippingDetails.from_hash(hash['shipping']) if
106
+ hash['shipping']
107
+ permit_multiple_payment_tokens =
108
+ hash['permit_multiple_payment_tokens'] ||= false
109
+ usage_type = hash.key?('usage_type') ? hash['usage_type'] : SKIP
110
+ customer_type = hash.key?('customer_type') ? hash['customer_type'] : SKIP
111
+ experience_context = VenmoExperienceContext.from_hash(hash['experience_context']) if
112
+ hash['experience_context']
113
+
114
+ # Create object from extracted values.
115
+ VaultVenmoRequest.new(description: description,
116
+ usage_pattern: usage_pattern,
117
+ shipping: shipping,
118
+ permit_multiple_payment_tokens: permit_multiple_payment_tokens,
119
+ usage_type: usage_type,
120
+ customer_type: customer_type,
121
+ experience_context: experience_context)
122
+ end
123
+
124
+ # Provides a human-readable string representation of the object.
125
+ def to_s
126
+ class_name = self.class.name.split('::').last
127
+ "<#{class_name} description: #{@description}, usage_pattern: #{@usage_pattern}, shipping:"\
128
+ " #{@shipping}, permit_multiple_payment_tokens: #{@permit_multiple_payment_tokens},"\
129
+ " usage_type: #{@usage_type}, customer_type: #{@customer_type}, experience_context:"\
130
+ " #{@experience_context}>"
131
+ end
132
+
133
+ # Provides a debugging-friendly string with detailed object information.
134
+ def inspect
135
+ class_name = self.class.name.split('::').last
136
+ "<#{class_name} description: #{@description.inspect}, usage_pattern:"\
137
+ " #{@usage_pattern.inspect}, shipping: #{@shipping.inspect}, permit_multiple_payment_tokens:"\
138
+ " #{@permit_multiple_payment_tokens.inspect}, usage_type: #{@usage_type.inspect},"\
139
+ " customer_type: #{@customer_type.inspect}, experience_context:"\
140
+ " #{@experience_context.inspect}>"
141
+ end
142
+ end
143
+ end
@@ -1,132 +1,132 @@
1
- # paypal_server_sdk
2
- #
3
- # This file was automatically generated by APIMATIC v3.0
4
- # ( https://www.apimatic.io ).
5
-
6
- module PaypalServerSdk
7
- # Resource consolidating common request and response attributes for vaulting a
8
- # Digital Wallet.
9
- class VaultedDigitalWallet < BaseModel
10
- SKIP = Object.new
11
- private_constant :SKIP
12
-
13
- # The description displayed to the consumer on the approval flow for a
14
- # digital wallet, as well as on the merchant view of the payment token
15
- # management experience. exp: PayPal.com.
16
- # @return [String]
17
- attr_accessor :description
18
-
19
- # Expected business/charge model for the billing agreement.
20
- # @return [UsagePattern]
21
- attr_accessor :usage_pattern
22
-
23
- # The shipping details.
24
- # @return [VaultedDigitalWalletShippingDetails]
25
- attr_accessor :shipping
26
-
27
- # Create multiple payment tokens for the same payer, merchant/platform
28
- # combination. Use this when the customer has not logged in at
29
- # merchant/platform. The payment token thus generated, can then also be used
30
- # to create the customer account at merchant/platform. Use this also when
31
- # multiple payment tokens are required for the same payer, different
32
- # customer at merchant/platform. This helps to identify customers distinctly
33
- # even though they may share the same PayPal account. This only applies to
34
- # PayPal payment source.
35
- # @return [TrueClass | FalseClass]
36
- attr_accessor :permit_multiple_payment_tokens
37
-
38
- # The usage type associated with a digital wallet payment token.
39
- # @return [PaypalPaymentTokenUsageType]
40
- attr_accessor :usage_type
41
-
42
- # The customer type associated with a digital wallet payment token. This is
43
- # to indicate whether the customer acting on the merchant / platform is
44
- # either a business or a consumer.
45
- # @return [PaypalPaymentTokenCustomerType]
46
- attr_accessor :customer_type
47
-
48
- # A mapping from model property names to API property names.
49
- def self.names
50
- @_hash = {} if @_hash.nil?
51
- @_hash['description'] = 'description'
52
- @_hash['usage_pattern'] = 'usage_pattern'
53
- @_hash['shipping'] = 'shipping'
54
- @_hash['permit_multiple_payment_tokens'] =
55
- 'permit_multiple_payment_tokens'
56
- @_hash['usage_type'] = 'usage_type'
57
- @_hash['customer_type'] = 'customer_type'
58
- @_hash
59
- end
60
-
61
- # An array for optional fields
62
- def self.optionals
63
- %w[
64
- description
65
- usage_pattern
66
- shipping
67
- permit_multiple_payment_tokens
68
- usage_type
69
- customer_type
70
- ]
71
- end
72
-
73
- # An array for nullable fields
74
- def self.nullables
75
- []
76
- end
77
-
78
- def initialize(description: SKIP, usage_pattern: SKIP, shipping: SKIP,
79
- permit_multiple_payment_tokens: false, usage_type: SKIP,
80
- customer_type: SKIP)
81
- @description = description unless description == SKIP
82
- @usage_pattern = usage_pattern unless usage_pattern == SKIP
83
- @shipping = shipping unless shipping == SKIP
84
- unless permit_multiple_payment_tokens == SKIP
85
- @permit_multiple_payment_tokens =
86
- permit_multiple_payment_tokens
87
- end
88
- @usage_type = usage_type unless usage_type == SKIP
89
- @customer_type = customer_type unless customer_type == SKIP
90
- end
91
-
92
- # Creates an instance of the object from a hash.
93
- def self.from_hash(hash)
94
- return nil unless hash
95
-
96
- # Extract variables from the hash.
97
- description = hash.key?('description') ? hash['description'] : SKIP
98
- usage_pattern = hash.key?('usage_pattern') ? hash['usage_pattern'] : SKIP
99
- shipping = VaultedDigitalWalletShippingDetails.from_hash(hash['shipping']) if
100
- hash['shipping']
101
- permit_multiple_payment_tokens =
102
- hash['permit_multiple_payment_tokens'] ||= false
103
- usage_type = hash.key?('usage_type') ? hash['usage_type'] : SKIP
104
- customer_type = hash.key?('customer_type') ? hash['customer_type'] : SKIP
105
-
106
- # Create object from extracted values.
107
- VaultedDigitalWallet.new(description: description,
108
- usage_pattern: usage_pattern,
109
- shipping: shipping,
110
- permit_multiple_payment_tokens: permit_multiple_payment_tokens,
111
- usage_type: usage_type,
112
- customer_type: customer_type)
113
- end
114
-
115
- # Provides a human-readable string representation of the object.
116
- def to_s
117
- class_name = self.class.name.split('::').last
118
- "<#{class_name} description: #{@description}, usage_pattern: #{@usage_pattern}, shipping:"\
119
- " #{@shipping}, permit_multiple_payment_tokens: #{@permit_multiple_payment_tokens},"\
120
- " usage_type: #{@usage_type}, customer_type: #{@customer_type}>"
121
- end
122
-
123
- # Provides a debugging-friendly string with detailed object information.
124
- def inspect
125
- class_name = self.class.name.split('::').last
126
- "<#{class_name} description: #{@description.inspect}, usage_pattern:"\
127
- " #{@usage_pattern.inspect}, shipping: #{@shipping.inspect}, permit_multiple_payment_tokens:"\
128
- " #{@permit_multiple_payment_tokens.inspect}, usage_type: #{@usage_type.inspect},"\
129
- " customer_type: #{@customer_type.inspect}>"
130
- end
131
- end
132
- end
1
+ # paypal_server_sdk
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0
4
+ # ( https://www.apimatic.io ).
5
+
6
+ module PaypalServerSdk
7
+ # Resource consolidating common request and response attributes for vaulting a
8
+ # Digital Wallet.
9
+ class VaultedDigitalWallet < BaseModel
10
+ SKIP = Object.new
11
+ private_constant :SKIP
12
+
13
+ # The description displayed to the consumer on the approval flow for a
14
+ # digital wallet, as well as on the merchant view of the payment token
15
+ # management experience. exp: PayPal.com.
16
+ # @return [String]
17
+ attr_accessor :description
18
+
19
+ # Expected business/charge model for the billing agreement.
20
+ # @return [UsagePattern]
21
+ attr_accessor :usage_pattern
22
+
23
+ # The shipping details.
24
+ # @return [VaultedDigitalWalletShippingDetails]
25
+ attr_accessor :shipping
26
+
27
+ # Create multiple payment tokens for the same payer, merchant/platform
28
+ # combination. Use this when the customer has not logged in at
29
+ # merchant/platform. The payment token thus generated, can then also be used
30
+ # to create the customer account at merchant/platform. Use this also when
31
+ # multiple payment tokens are required for the same payer, different
32
+ # customer at merchant/platform. This helps to identify customers distinctly
33
+ # even though they may share the same PayPal account. This only applies to
34
+ # PayPal payment source.
35
+ # @return [TrueClass | FalseClass]
36
+ attr_accessor :permit_multiple_payment_tokens
37
+
38
+ # The usage type associated with a digital wallet payment token.
39
+ # @return [PaypalPaymentTokenUsageType]
40
+ attr_accessor :usage_type
41
+
42
+ # The customer type associated with a digital wallet payment token. This is
43
+ # to indicate whether the customer acting on the merchant / platform is
44
+ # either a business or a consumer.
45
+ # @return [PaypalPaymentTokenCustomerType]
46
+ attr_accessor :customer_type
47
+
48
+ # A mapping from model property names to API property names.
49
+ def self.names
50
+ @_hash = {} if @_hash.nil?
51
+ @_hash['description'] = 'description'
52
+ @_hash['usage_pattern'] = 'usage_pattern'
53
+ @_hash['shipping'] = 'shipping'
54
+ @_hash['permit_multiple_payment_tokens'] =
55
+ 'permit_multiple_payment_tokens'
56
+ @_hash['usage_type'] = 'usage_type'
57
+ @_hash['customer_type'] = 'customer_type'
58
+ @_hash
59
+ end
60
+
61
+ # An array for optional fields
62
+ def self.optionals
63
+ %w[
64
+ description
65
+ usage_pattern
66
+ shipping
67
+ permit_multiple_payment_tokens
68
+ usage_type
69
+ customer_type
70
+ ]
71
+ end
72
+
73
+ # An array for nullable fields
74
+ def self.nullables
75
+ []
76
+ end
77
+
78
+ def initialize(description: SKIP, usage_pattern: SKIP, shipping: SKIP,
79
+ permit_multiple_payment_tokens: false, usage_type: SKIP,
80
+ customer_type: SKIP)
81
+ @description = description unless description == SKIP
82
+ @usage_pattern = usage_pattern unless usage_pattern == SKIP
83
+ @shipping = shipping unless shipping == SKIP
84
+ unless permit_multiple_payment_tokens == SKIP
85
+ @permit_multiple_payment_tokens =
86
+ permit_multiple_payment_tokens
87
+ end
88
+ @usage_type = usage_type unless usage_type == SKIP
89
+ @customer_type = customer_type unless customer_type == SKIP
90
+ end
91
+
92
+ # Creates an instance of the object from a hash.
93
+ def self.from_hash(hash)
94
+ return nil unless hash
95
+
96
+ # Extract variables from the hash.
97
+ description = hash.key?('description') ? hash['description'] : SKIP
98
+ usage_pattern = hash.key?('usage_pattern') ? hash['usage_pattern'] : SKIP
99
+ shipping = VaultedDigitalWalletShippingDetails.from_hash(hash['shipping']) if
100
+ hash['shipping']
101
+ permit_multiple_payment_tokens =
102
+ hash['permit_multiple_payment_tokens'] ||= false
103
+ usage_type = hash.key?('usage_type') ? hash['usage_type'] : SKIP
104
+ customer_type = hash.key?('customer_type') ? hash['customer_type'] : SKIP
105
+
106
+ # Create object from extracted values.
107
+ VaultedDigitalWallet.new(description: description,
108
+ usage_pattern: usage_pattern,
109
+ shipping: shipping,
110
+ permit_multiple_payment_tokens: permit_multiple_payment_tokens,
111
+ usage_type: usage_type,
112
+ customer_type: customer_type)
113
+ end
114
+
115
+ # Provides a human-readable string representation of the object.
116
+ def to_s
117
+ class_name = self.class.name.split('::').last
118
+ "<#{class_name} description: #{@description}, usage_pattern: #{@usage_pattern}, shipping:"\
119
+ " #{@shipping}, permit_multiple_payment_tokens: #{@permit_multiple_payment_tokens},"\
120
+ " usage_type: #{@usage_type}, customer_type: #{@customer_type}>"
121
+ end
122
+
123
+ # Provides a debugging-friendly string with detailed object information.
124
+ def inspect
125
+ class_name = self.class.name.split('::').last
126
+ "<#{class_name} description: #{@description.inspect}, usage_pattern:"\
127
+ " #{@usage_pattern.inspect}, shipping: #{@shipping.inspect}, permit_multiple_payment_tokens:"\
128
+ " #{@permit_multiple_payment_tokens.inspect}, usage_type: #{@usage_type.inspect},"\
129
+ " customer_type: #{@customer_type.inspect}>"
130
+ end
131
+ end
132
+ end