paypal-server-sdk 1.1.0 → 2.0.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 (402) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +32 -23
  3. data/lib/paypal_server_sdk/api_helper.rb +2 -2
  4. data/lib/paypal_server_sdk/client.rb +16 -3
  5. data/lib/paypal_server_sdk/configuration.rb +10 -8
  6. data/lib/paypal_server_sdk/controllers/base_controller.rb +4 -10
  7. data/lib/paypal_server_sdk/controllers/o_auth_authorization_controller.rb +4 -4
  8. data/lib/paypal_server_sdk/controllers/orders_controller.rb +211 -211
  9. data/lib/paypal_server_sdk/controllers/payments_controller.rb +110 -103
  10. data/lib/paypal_server_sdk/controllers/subscriptions_controller.rb +843 -0
  11. data/lib/paypal_server_sdk/controllers/transaction_search_controller.rb +178 -0
  12. data/lib/paypal_server_sdk/controllers/vault_controller.rb +95 -95
  13. data/lib/paypal_server_sdk/exceptions/api_exception.rb +2 -2
  14. data/lib/paypal_server_sdk/exceptions/default_error_exception.rb +95 -0
  15. data/lib/paypal_server_sdk/exceptions/error_exception.rb +2 -2
  16. data/lib/paypal_server_sdk/exceptions/o_auth_provider_exception.rb +2 -2
  17. data/lib/paypal_server_sdk/exceptions/search_error_exception.rb +107 -0
  18. data/lib/paypal_server_sdk/exceptions/subscription_error_exception.rb +95 -0
  19. data/lib/paypal_server_sdk/http/api_response.rb +6 -8
  20. data/lib/paypal_server_sdk/http/auth/o_auth2.rb +3 -3
  21. data/lib/paypal_server_sdk/http/http_call_back.rb +2 -2
  22. data/lib/paypal_server_sdk/http/http_method_enum.rb +2 -2
  23. data/lib/paypal_server_sdk/http/http_request.rb +2 -2
  24. data/lib/paypal_server_sdk/http/http_response.rb +2 -2
  25. data/lib/paypal_server_sdk/http/proxy_settings.rb +13 -0
  26. data/lib/paypal_server_sdk/logging/configuration/api_logging_configuration.rb +2 -2
  27. data/lib/paypal_server_sdk/logging/sdk_logger.rb +2 -2
  28. data/lib/paypal_server_sdk/models/activate_subscription_request.rb +63 -0
  29. data/lib/paypal_server_sdk/models/activity_timestamps.rb +2 -2
  30. data/lib/paypal_server_sdk/models/address.rb +2 -2
  31. data/lib/paypal_server_sdk/models/amount_breakdown.rb +4 -4
  32. data/lib/paypal_server_sdk/models/amount_with_breakdown.rb +2 -2
  33. data/lib/paypal_server_sdk/models/app_switch_context.rb +74 -0
  34. data/lib/paypal_server_sdk/models/apple_pay_attributes.rb +2 -2
  35. data/lib/paypal_server_sdk/models/apple_pay_attributes_response.rb +2 -2
  36. data/lib/paypal_server_sdk/models/apple_pay_card.rb +2 -2
  37. data/lib/paypal_server_sdk/models/apple_pay_card_response.rb +2 -2
  38. data/lib/paypal_server_sdk/models/apple_pay_decrypted_token_data.rb +2 -2
  39. data/lib/paypal_server_sdk/models/apple_pay_experience_context.rb +2 -2
  40. data/lib/paypal_server_sdk/models/apple_pay_payment_data.rb +2 -2
  41. data/lib/paypal_server_sdk/models/apple_pay_payment_data_type.rb +2 -2
  42. data/lib/paypal_server_sdk/models/apple_pay_payment_object.rb +2 -2
  43. data/lib/paypal_server_sdk/models/apple_pay_payment_token.rb +2 -2
  44. data/lib/paypal_server_sdk/models/apple_pay_request.rb +2 -2
  45. data/lib/paypal_server_sdk/models/apple_pay_request_card.rb +88 -0
  46. data/lib/paypal_server_sdk/models/apple_pay_tokenized_card.rb +3 -4
  47. data/lib/paypal_server_sdk/models/application_context_user_action.rb +29 -0
  48. data/lib/paypal_server_sdk/models/assurance_details.rb +2 -2
  49. data/lib/paypal_server_sdk/models/auction_information.rb +100 -0
  50. data/lib/paypal_server_sdk/models/authentication_response.rb +2 -2
  51. data/lib/paypal_server_sdk/models/authorization.rb +4 -4
  52. data/lib/paypal_server_sdk/models/authorization_incomplete_reason.rb +2 -2
  53. data/lib/paypal_server_sdk/models/authorization_status.rb +2 -2
  54. data/lib/paypal_server_sdk/models/authorization_status_details.rb +2 -2
  55. data/lib/paypal_server_sdk/models/authorization_status_with_details.rb +2 -2
  56. data/lib/paypal_server_sdk/models/authorization_with_additional_data.rb +4 -4
  57. data/lib/paypal_server_sdk/models/avs_code.rb +2 -2
  58. data/lib/paypal_server_sdk/models/balance_information.rb +106 -0
  59. data/lib/paypal_server_sdk/models/balances_response.rb +111 -0
  60. data/lib/paypal_server_sdk/models/bancontact_payment_object.rb +2 -2
  61. data/lib/paypal_server_sdk/models/bancontact_payment_request.rb +2 -2
  62. data/lib/paypal_server_sdk/models/bank_request.rb +71 -0
  63. data/lib/paypal_server_sdk/models/base_model.rb +2 -2
  64. data/lib/paypal_server_sdk/models/billing_cycle.rb +7 -18
  65. data/lib/paypal_server_sdk/models/billing_cycle_override.rb +91 -0
  66. data/lib/paypal_server_sdk/models/billing_plan.rb +212 -0
  67. data/lib/paypal_server_sdk/models/bin_details.rb +2 -2
  68. data/lib/paypal_server_sdk/models/blik_experience_context.rb +10 -8
  69. data/lib/paypal_server_sdk/models/blik_level0_payment_object.rb +2 -2
  70. data/lib/paypal_server_sdk/models/blik_one_click_payment_object.rb +2 -2
  71. data/lib/paypal_server_sdk/models/blik_one_click_payment_request.rb +2 -2
  72. data/lib/paypal_server_sdk/models/blik_payment_object.rb +2 -2
  73. data/lib/paypal_server_sdk/models/blik_payment_request.rb +2 -2
  74. data/lib/paypal_server_sdk/models/callback_configuration.rb +2 -2
  75. data/lib/paypal_server_sdk/models/callback_events.rb +2 -2
  76. data/lib/paypal_server_sdk/models/cancel_subscription_request.rb +60 -0
  77. data/lib/paypal_server_sdk/models/capture_incomplete_reason.rb +2 -2
  78. data/lib/paypal_server_sdk/models/capture_payment_instruction.rb +2 -2
  79. data/lib/paypal_server_sdk/models/capture_request.rb +33 -32
  80. data/lib/paypal_server_sdk/models/capture_status.rb +2 -2
  81. data/lib/paypal_server_sdk/models/capture_status_details.rb +2 -2
  82. data/lib/paypal_server_sdk/models/capture_status_with_details.rb +2 -2
  83. data/lib/paypal_server_sdk/models/capture_subscription_request.rb +78 -0
  84. data/lib/paypal_server_sdk/models/capture_type.rb +20 -0
  85. data/lib/paypal_server_sdk/models/captured_payment.rb +6 -6
  86. data/lib/paypal_server_sdk/models/card_attributes.rb +2 -2
  87. data/lib/paypal_server_sdk/models/card_attributes_response.rb +2 -2
  88. data/lib/paypal_server_sdk/models/card_authentication_response.rb +2 -2
  89. data/lib/paypal_server_sdk/models/card_brand.rb +17 -2
  90. data/lib/paypal_server_sdk/models/card_customer.rb +98 -0
  91. data/lib/paypal_server_sdk/models/card_customer_information.rb +2 -2
  92. data/lib/paypal_server_sdk/models/card_experience_context.rb +2 -2
  93. data/lib/paypal_server_sdk/models/card_from_request.rb +2 -2
  94. data/lib/paypal_server_sdk/models/card_payment_token_entity.rb +2 -2
  95. data/lib/paypal_server_sdk/models/card_request.rb +2 -2
  96. data/lib/paypal_server_sdk/models/card_response.rb +2 -2
  97. data/lib/paypal_server_sdk/models/card_response_address.rb +2 -2
  98. data/lib/paypal_server_sdk/models/card_response_with_billing_address.rb +100 -0
  99. data/lib/paypal_server_sdk/models/card_stored_credential.rb +4 -4
  100. data/lib/paypal_server_sdk/models/card_supplementary_data.rb +2 -2
  101. data/lib/paypal_server_sdk/models/card_type.rb +2 -2
  102. data/lib/paypal_server_sdk/models/card_vault_response.rb +2 -2
  103. data/lib/paypal_server_sdk/models/card_verification.rb +2 -2
  104. data/lib/paypal_server_sdk/models/card_verification_details.rb +8 -8
  105. data/lib/paypal_server_sdk/models/card_verification_processor_response.rb +2 -2
  106. data/lib/paypal_server_sdk/models/card_verification_status.rb +2 -2
  107. data/lib/paypal_server_sdk/models/cart_information.rb +94 -0
  108. data/lib/paypal_server_sdk/models/checkout_option.rb +77 -0
  109. data/lib/paypal_server_sdk/models/checkout_payment_intent.rb +2 -2
  110. data/lib/paypal_server_sdk/models/cobranded_card.rb +2 -2
  111. data/lib/paypal_server_sdk/models/confirm_order_request.rb +2 -2
  112. data/lib/paypal_server_sdk/models/create_subscription_request.rb +151 -0
  113. data/lib/paypal_server_sdk/models/customer.rb +2 -2
  114. data/lib/paypal_server_sdk/models/customer_information.rb +2 -2
  115. data/lib/paypal_server_sdk/models/customer_response.rb +2 -2
  116. data/lib/paypal_server_sdk/models/customer_vault_payment_tokens_response.rb +2 -2
  117. data/lib/paypal_server_sdk/models/cvv_code.rb +2 -2
  118. data/lib/paypal_server_sdk/models/cycle_execution.rb +124 -0
  119. data/lib/paypal_server_sdk/models/disbursement_mode.rb +2 -2
  120. data/lib/paypal_server_sdk/models/dispute_category.rb +2 -2
  121. data/lib/paypal_server_sdk/models/eci_flag.rb +2 -2
  122. data/lib/paypal_server_sdk/models/enrollment_status.rb +2 -2
  123. data/lib/paypal_server_sdk/models/eps_payment_object.rb +2 -2
  124. data/lib/paypal_server_sdk/models/eps_payment_request.rb +2 -2
  125. data/lib/paypal_server_sdk/models/error_details.rb +2 -2
  126. data/lib/paypal_server_sdk/models/exchange_rate.rb +2 -2
  127. data/lib/paypal_server_sdk/models/experience_context.rb +9 -7
  128. data/lib/paypal_server_sdk/models/experience_context_shipping_preference.rb +32 -0
  129. data/lib/paypal_server_sdk/models/experience_status.rb +33 -0
  130. data/lib/paypal_server_sdk/models/failed_payment_details.rb +98 -0
  131. data/lib/paypal_server_sdk/models/frequency.rb +75 -0
  132. data/lib/paypal_server_sdk/models/fulfillment_type.rb +2 -2
  133. data/lib/paypal_server_sdk/models/giropay_payment_object.rb +2 -2
  134. data/lib/paypal_server_sdk/models/giropay_payment_request.rb +2 -2
  135. data/lib/paypal_server_sdk/models/google_pay_authentication_method.rb +2 -2
  136. data/lib/paypal_server_sdk/models/google_pay_card.rb +2 -2
  137. data/lib/paypal_server_sdk/models/google_pay_card_response.rb +2 -2
  138. data/lib/paypal_server_sdk/models/google_pay_decrypted_token_data.rb +2 -2
  139. data/lib/paypal_server_sdk/models/google_pay_experience_context.rb +2 -2
  140. data/lib/paypal_server_sdk/models/google_pay_payment_method.rb +2 -2
  141. data/lib/paypal_server_sdk/models/google_pay_request.rb +2 -2
  142. data/lib/paypal_server_sdk/models/google_pay_request_card.rb +2 -2
  143. data/lib/paypal_server_sdk/models/google_pay_wallet_response.rb +2 -2
  144. data/lib/paypal_server_sdk/models/ideal_payment_object.rb +2 -2
  145. data/lib/paypal_server_sdk/models/ideal_payment_request.rb +2 -2
  146. data/lib/paypal_server_sdk/models/incentive_details.rb +99 -0
  147. data/lib/paypal_server_sdk/models/incentive_information.rb +71 -0
  148. data/lib/paypal_server_sdk/models/interval_unit.rb +29 -0
  149. data/lib/paypal_server_sdk/models/item.rb +2 -2
  150. data/lib/paypal_server_sdk/models/item_category.rb +2 -2
  151. data/lib/paypal_server_sdk/models/item_details.rb +287 -0
  152. data/lib/paypal_server_sdk/models/item_request.rb +163 -0
  153. data/lib/paypal_server_sdk/models/last_payment_details.rb +75 -0
  154. data/lib/paypal_server_sdk/models/level2_card_processing_data.rb +2 -2
  155. data/lib/paypal_server_sdk/models/level3_card_processing_data.rb +2 -2
  156. data/lib/paypal_server_sdk/models/liability_shift_indicator.rb +2 -2
  157. data/lib/paypal_server_sdk/models/line_item.rb +2 -2
  158. data/lib/paypal_server_sdk/models/link_description.rb +2 -2
  159. data/lib/paypal_server_sdk/models/link_http_method.rb +10 -10
  160. data/lib/paypal_server_sdk/models/merchant_preferences.rb +73 -0
  161. data/lib/paypal_server_sdk/models/mobile_return_flow.rb +28 -0
  162. data/lib/paypal_server_sdk/models/mobile_web_context.rb +76 -0
  163. data/lib/paypal_server_sdk/models/modify_subscription_request.rb +124 -0
  164. data/lib/paypal_server_sdk/models/modify_subscription_response.rb +141 -0
  165. data/lib/paypal_server_sdk/models/money.rb +2 -2
  166. data/lib/paypal_server_sdk/models/mybank_payment_object.rb +2 -2
  167. data/lib/paypal_server_sdk/models/mybank_payment_request.rb +2 -2
  168. data/lib/paypal_server_sdk/models/name.rb +2 -2
  169. data/lib/paypal_server_sdk/models/native_app_context.rb +72 -0
  170. data/lib/paypal_server_sdk/models/net_amount_breakdown_item.rb +2 -2
  171. data/lib/paypal_server_sdk/models/network_token.rb +2 -2
  172. data/lib/paypal_server_sdk/models/{network_transaction_reference.rb → network_transaction.rb} +14 -11
  173. data/lib/paypal_server_sdk/models/network_transaction_reference_entity.rb +2 -2
  174. data/lib/paypal_server_sdk/models/o_auth_provider_error.rb +2 -2
  175. data/lib/paypal_server_sdk/models/o_auth_token.rb +2 -2
  176. data/lib/paypal_server_sdk/models/one_time_charge.rb +2 -2
  177. data/lib/paypal_server_sdk/models/order.rb +7 -4
  178. data/lib/paypal_server_sdk/models/order_application_context.rb +26 -15
  179. data/lib/paypal_server_sdk/models/order_application_context_landing_page.rb +2 -2
  180. data/lib/paypal_server_sdk/models/order_application_context_shipping_preference.rb +3 -5
  181. data/lib/paypal_server_sdk/models/order_application_context_user_action.rb +2 -2
  182. data/lib/paypal_server_sdk/models/order_authorize_request.rb +2 -2
  183. data/lib/paypal_server_sdk/models/order_authorize_request_payment_source.rb +2 -2
  184. data/lib/paypal_server_sdk/models/order_authorize_response.rb +16 -9
  185. data/lib/paypal_server_sdk/models/order_authorize_response_payment_source.rb +2 -2
  186. data/lib/paypal_server_sdk/models/order_billing_plan.rb +2 -2
  187. data/lib/paypal_server_sdk/models/order_capture_request.rb +2 -2
  188. data/lib/paypal_server_sdk/models/order_capture_request_payment_source.rb +2 -2
  189. data/lib/paypal_server_sdk/models/order_confirm_application_context.rb +2 -2
  190. data/lib/paypal_server_sdk/models/order_request.rb +7 -4
  191. data/lib/paypal_server_sdk/models/order_status.rb +2 -2
  192. data/lib/paypal_server_sdk/models/order_tracker_item.rb +2 -2
  193. data/lib/paypal_server_sdk/models/order_tracker_request.rb +2 -2
  194. data/lib/paypal_server_sdk/models/order_tracker_response.rb +2 -2
  195. data/lib/paypal_server_sdk/models/order_tracker_status.rb +2 -2
  196. data/lib/paypal_server_sdk/models/orders_capture.rb +4 -4
  197. data/lib/paypal_server_sdk/models/orders_card_verification_method.rb +2 -2
  198. data/lib/paypal_server_sdk/models/os_type.rb +26 -0
  199. data/lib/paypal_server_sdk/models/p24_payment_object.rb +2 -2
  200. data/lib/paypal_server_sdk/models/p24_payment_request.rb +2 -2
  201. data/lib/paypal_server_sdk/models/pa_res_status.rb +2 -2
  202. data/lib/paypal_server_sdk/models/participant_metadata.rb +2 -2
  203. data/lib/paypal_server_sdk/models/patch.rb +2 -2
  204. data/lib/paypal_server_sdk/models/patch_op.rb +2 -2
  205. data/lib/paypal_server_sdk/models/payee_base.rb +2 -2
  206. data/lib/paypal_server_sdk/models/payee_payment_method_preference.rb +2 -2
  207. data/lib/paypal_server_sdk/models/payer.rb +4 -3
  208. data/lib/paypal_server_sdk/models/payer_base.rb +2 -2
  209. data/lib/paypal_server_sdk/models/payer_information.rb +146 -0
  210. data/lib/paypal_server_sdk/models/payer_name.rb +128 -0
  211. data/lib/paypal_server_sdk/models/payment_advice_code.rb +2 -2
  212. data/lib/paypal_server_sdk/models/payment_authorization.rb +4 -4
  213. data/lib/paypal_server_sdk/models/payment_collection.rb +2 -2
  214. data/lib/paypal_server_sdk/models/payment_initiator.rb +2 -2
  215. data/lib/paypal_server_sdk/models/payment_instruction.rb +2 -2
  216. data/lib/paypal_server_sdk/models/payment_method.rb +63 -0
  217. data/lib/paypal_server_sdk/models/payment_method_preference.rb +2 -2
  218. data/lib/paypal_server_sdk/models/payment_preferences.rb +105 -0
  219. data/lib/paypal_server_sdk/models/payment_preferences_override.rb +107 -0
  220. data/lib/paypal_server_sdk/models/payment_source.rb +2 -2
  221. data/lib/paypal_server_sdk/models/payment_source_response.rb +2 -2
  222. data/lib/paypal_server_sdk/models/payment_supplementary_data.rb +2 -2
  223. data/lib/paypal_server_sdk/models/payment_token_request.rb +2 -2
  224. data/lib/paypal_server_sdk/models/payment_token_request_card.rb +2 -2
  225. data/lib/paypal_server_sdk/models/payment_token_request_payment_source.rb +2 -2
  226. data/lib/paypal_server_sdk/models/payment_token_response.rb +5 -3
  227. data/lib/paypal_server_sdk/models/payment_token_response_payment_source.rb +4 -4
  228. data/lib/paypal_server_sdk/models/payment_token_status.rb +4 -4
  229. data/lib/paypal_server_sdk/models/payments_capture.rb +6 -6
  230. data/lib/paypal_server_sdk/models/paypal_experience_landing_page.rb +10 -3
  231. data/lib/paypal_server_sdk/models/paypal_experience_user_action.rb +2 -2
  232. data/lib/paypal_server_sdk/models/paypal_payment_token.rb +8 -7
  233. data/lib/paypal_server_sdk/models/paypal_payment_token_customer_type.rb +2 -2
  234. data/lib/paypal_server_sdk/models/paypal_payment_token_usage_type.rb +2 -2
  235. data/lib/paypal_server_sdk/models/paypal_reference_id_type.rb +29 -0
  236. data/lib/paypal_server_sdk/models/paypal_wallet.rb +2 -2
  237. data/lib/paypal_server_sdk/models/paypal_wallet_account_verification_status.rb +2 -2
  238. data/lib/paypal_server_sdk/models/paypal_wallet_attributes.rb +4 -3
  239. data/lib/paypal_server_sdk/models/paypal_wallet_attributes_response.rb +2 -2
  240. data/lib/paypal_server_sdk/models/paypal_wallet_contact_preference.rb +2 -2
  241. data/lib/paypal_server_sdk/models/paypal_wallet_context_shipping_preference.rb +2 -2
  242. data/lib/paypal_server_sdk/models/paypal_wallet_customer.rb +2 -2
  243. data/lib/paypal_server_sdk/models/paypal_wallet_customer_request.rb +2 -2
  244. data/lib/paypal_server_sdk/models/paypal_wallet_experience_context.rb +22 -9
  245. data/lib/paypal_server_sdk/models/paypal_wallet_response.rb +21 -6
  246. data/lib/paypal_server_sdk/models/paypal_wallet_stored_credential.rb +4 -3
  247. data/lib/paypal_server_sdk/models/paypal_wallet_vault_instruction.rb +12 -22
  248. data/lib/paypal_server_sdk/models/paypal_wallet_vault_response.rb +2 -2
  249. data/lib/paypal_server_sdk/models/paypal_wallet_vault_status.rb +2 -2
  250. data/lib/paypal_server_sdk/models/phone.rb +2 -2
  251. data/lib/paypal_server_sdk/models/phone_number.rb +4 -2
  252. data/lib/paypal_server_sdk/models/phone_number_with_country_code.rb +4 -2
  253. data/lib/paypal_server_sdk/models/phone_number_with_optional_country_code.rb +81 -0
  254. data/lib/paypal_server_sdk/models/phone_type.rb +7 -7
  255. data/lib/paypal_server_sdk/models/phone_with_type.rb +2 -2
  256. data/lib/paypal_server_sdk/models/plan.rb +7 -17
  257. data/lib/paypal_server_sdk/models/plan_collection.rb +111 -0
  258. data/lib/paypal_server_sdk/models/plan_details.rb +147 -0
  259. data/lib/paypal_server_sdk/models/plan_override.rb +96 -0
  260. data/lib/paypal_server_sdk/models/plan_request.rb +154 -0
  261. data/lib/paypal_server_sdk/models/plan_request_status.rb +28 -0
  262. data/lib/paypal_server_sdk/models/platform_fee.rb +2 -2
  263. data/lib/paypal_server_sdk/models/pricing_model.rb +2 -2
  264. data/lib/paypal_server_sdk/models/pricing_scheme.rb +2 -2
  265. data/lib/paypal_server_sdk/models/pricing_tier.rb +83 -0
  266. data/lib/paypal_server_sdk/models/processor_response.rb +2 -2
  267. data/lib/paypal_server_sdk/models/processor_response_code.rb +2 -2
  268. data/lib/paypal_server_sdk/models/purchase_unit.rb +2 -2
  269. data/lib/paypal_server_sdk/models/purchase_unit_request.rb +24 -14
  270. data/lib/paypal_server_sdk/models/reason_code.rb +41 -0
  271. data/lib/paypal_server_sdk/models/reauthorize_request.rb +2 -3
  272. data/lib/paypal_server_sdk/models/refund.rb +2 -2
  273. data/lib/paypal_server_sdk/models/refund_incomplete_reason.rb +2 -2
  274. data/lib/paypal_server_sdk/models/refund_payment_instruction.rb +2 -2
  275. data/lib/paypal_server_sdk/models/refund_platform_fee.rb +2 -2
  276. data/lib/paypal_server_sdk/models/refund_request.rb +2 -2
  277. data/lib/paypal_server_sdk/models/refund_status.rb +2 -2
  278. data/lib/paypal_server_sdk/models/refund_status_details.rb +2 -2
  279. data/lib/paypal_server_sdk/models/refund_status_with_details.rb +2 -2
  280. data/lib/paypal_server_sdk/models/related_identifiers.rb +2 -2
  281. data/lib/paypal_server_sdk/models/return_flow.rb +28 -0
  282. data/lib/paypal_server_sdk/models/risk_supplementary_data.rb +2 -2
  283. data/lib/paypal_server_sdk/models/search_response.rb +176 -0
  284. data/lib/paypal_server_sdk/models/seller_payable_breakdown.rb +2 -2
  285. data/lib/paypal_server_sdk/models/seller_protection.rb +2 -2
  286. data/lib/paypal_server_sdk/models/seller_protection_status.rb +2 -2
  287. data/lib/paypal_server_sdk/models/seller_receivable_breakdown.rb +2 -2
  288. data/lib/paypal_server_sdk/models/sepa_debit_experience_context.rb +88 -0
  289. data/lib/paypal_server_sdk/models/sepa_debit_request.rb +64 -0
  290. data/lib/paypal_server_sdk/models/setup_fee_failure_action.rb +24 -0
  291. data/lib/paypal_server_sdk/models/setup_token_request.rb +2 -2
  292. data/lib/paypal_server_sdk/models/setup_token_request_card.rb +5 -5
  293. data/lib/paypal_server_sdk/models/setup_token_request_payment_source.rb +28 -7
  294. data/lib/paypal_server_sdk/models/setup_token_response.rb +5 -3
  295. data/lib/paypal_server_sdk/models/setup_token_response_card.rb +2 -2
  296. data/lib/paypal_server_sdk/models/setup_token_response_payment_source.rb +4 -4
  297. data/lib/paypal_server_sdk/models/shipment_carrier.rb +111 -3
  298. data/lib/paypal_server_sdk/models/shipping_details.rb +2 -2
  299. data/lib/paypal_server_sdk/models/shipping_information.rb +101 -0
  300. data/lib/paypal_server_sdk/models/shipping_name.rb +2 -2
  301. data/lib/paypal_server_sdk/models/shipping_option.rb +2 -2
  302. data/lib/paypal_server_sdk/models/shipping_type.rb +2 -2
  303. data/lib/paypal_server_sdk/models/shipping_with_tracking_details.rb +33 -33
  304. data/lib/paypal_server_sdk/models/simple_postal_address_coarse_grained.rb +130 -0
  305. data/lib/paypal_server_sdk/models/sofort_payment_object.rb +2 -2
  306. data/lib/paypal_server_sdk/models/sofort_payment_request.rb +2 -2
  307. data/lib/paypal_server_sdk/models/standard_entry_class_code.rb +2 -2
  308. data/lib/paypal_server_sdk/models/store_in_vault_instruction.rb +2 -2
  309. data/lib/paypal_server_sdk/models/store_information.rb +71 -0
  310. data/lib/paypal_server_sdk/models/stored_payment_source.rb +4 -4
  311. data/lib/paypal_server_sdk/models/stored_payment_source_payment_type.rb +2 -2
  312. data/lib/paypal_server_sdk/models/stored_payment_source_usage_type.rb +2 -2
  313. data/lib/paypal_server_sdk/models/subscriber.rb +84 -0
  314. data/lib/paypal_server_sdk/models/subscriber_request.rb +97 -0
  315. data/lib/paypal_server_sdk/models/subscription.rb +205 -0
  316. data/lib/paypal_server_sdk/models/subscription_amount_with_breakdown.rb +119 -0
  317. data/lib/paypal_server_sdk/models/subscription_application_context.rb +134 -0
  318. data/lib/paypal_server_sdk/models/subscription_billing_cycle.rb +108 -0
  319. data/lib/paypal_server_sdk/models/subscription_billing_information.rb +148 -0
  320. data/lib/paypal_server_sdk/models/subscription_card_request.rb +141 -0
  321. data/lib/paypal_server_sdk/models/subscription_collection.rb +90 -0
  322. data/lib/paypal_server_sdk/models/subscription_customer_information.rb +84 -0
  323. data/lib/paypal_server_sdk/models/subscription_patch_application_context.rb +122 -0
  324. data/lib/paypal_server_sdk/models/subscription_payer_name.rb +114 -0
  325. data/lib/paypal_server_sdk/models/subscription_payment_source.rb +65 -0
  326. data/lib/paypal_server_sdk/models/subscription_payment_source_response.rb +63 -0
  327. data/lib/paypal_server_sdk/models/subscription_plan_status.rb +28 -0
  328. data/lib/paypal_server_sdk/models/subscription_pricing_model.rb +23 -0
  329. data/lib/paypal_server_sdk/models/subscription_pricing_scheme.rb +129 -0
  330. data/lib/paypal_server_sdk/models/subscription_transaction_details.rb +118 -0
  331. data/lib/paypal_server_sdk/models/subscriptions_card_attributes.rb +83 -0
  332. data/lib/paypal_server_sdk/models/subscriptions_card_brand.rb +97 -0
  333. data/lib/paypal_server_sdk/models/supplementary_data.rb +2 -2
  334. data/lib/paypal_server_sdk/models/suspend_subscription.rb +60 -0
  335. data/lib/paypal_server_sdk/models/tax_amount.rb +63 -0
  336. data/lib/paypal_server_sdk/models/tax_id_type.rb +2 -2
  337. data/lib/paypal_server_sdk/models/tax_info.rb +2 -2
  338. data/lib/paypal_server_sdk/models/taxes.rb +71 -0
  339. data/lib/paypal_server_sdk/models/taxes_override.rb +72 -0
  340. data/lib/paypal_server_sdk/models/tenure_type.rb +5 -3
  341. data/lib/paypal_server_sdk/models/three_d_secure_authentication_response.rb +2 -2
  342. data/lib/paypal_server_sdk/models/three_d_secure_card_authentication_response.rb +2 -2
  343. data/lib/paypal_server_sdk/models/token.rb +2 -2
  344. data/lib/paypal_server_sdk/models/token_type.rb +2 -2
  345. data/lib/paypal_server_sdk/models/transaction_details.rb +126 -0
  346. data/lib/paypal_server_sdk/models/transaction_information.rb +494 -0
  347. data/lib/paypal_server_sdk/models/{order_update_callback_error_response_details.rb → transaction_search_error_details.rb} +32 -10
  348. data/lib/paypal_server_sdk/models/transactions_list.rb +111 -0
  349. data/lib/paypal_server_sdk/models/trustly_payment_object.rb +2 -2
  350. data/lib/paypal_server_sdk/models/trustly_payment_request.rb +2 -2
  351. data/lib/paypal_server_sdk/models/universal_product_code.rb +2 -2
  352. data/lib/paypal_server_sdk/models/upc_type.rb +2 -2
  353. data/lib/paypal_server_sdk/models/update_pricing_scheme.rb +72 -0
  354. data/lib/paypal_server_sdk/models/update_pricing_schemes_request.rb +69 -0
  355. data/lib/paypal_server_sdk/models/usage_pattern.rb +2 -2
  356. data/lib/paypal_server_sdk/models/vault_apple_pay_request.rb +73 -0
  357. data/lib/paypal_server_sdk/models/{setup_token_card_experience_context.rb → vault_card_experience_context.rb} +27 -18
  358. data/lib/paypal_server_sdk/models/vault_card_verification_method.rb +2 -2
  359. data/lib/paypal_server_sdk/models/vault_customer.rb +2 -2
  360. data/lib/paypal_server_sdk/models/vault_experience_context.rb +35 -12
  361. data/lib/paypal_server_sdk/models/vault_instruction.rb +2 -2
  362. data/lib/paypal_server_sdk/models/vault_instruction_action.rb +2 -2
  363. data/lib/paypal_server_sdk/models/vault_instruction_base.rb +2 -2
  364. data/lib/paypal_server_sdk/models/vault_paypal_wallet_request.rb +3 -3
  365. data/lib/paypal_server_sdk/models/vault_response.rb +2 -2
  366. data/lib/paypal_server_sdk/models/vault_response_customer.rb +2 -2
  367. data/lib/paypal_server_sdk/models/vault_status.rb +2 -2
  368. data/lib/paypal_server_sdk/models/vault_token_request.rb +2 -2
  369. data/lib/paypal_server_sdk/models/vault_token_request_type.rb +2 -2
  370. data/lib/paypal_server_sdk/models/vault_user_action.rb +29 -0
  371. data/lib/paypal_server_sdk/models/vault_venmo_request.rb +6 -6
  372. data/lib/paypal_server_sdk/models/vaulted_digital_wallet.rb +2 -2
  373. data/lib/paypal_server_sdk/models/vaulted_digital_wallet_shipping_details.rb +21 -7
  374. data/lib/paypal_server_sdk/models/{vault_venmo_experience_context.rb → venmo_experience_context.rb} +26 -16
  375. data/lib/paypal_server_sdk/models/venmo_payment_token.rb +8 -7
  376. data/lib/paypal_server_sdk/models/venmo_payment_token_customer_type.rb +2 -2
  377. data/lib/paypal_server_sdk/models/venmo_payment_token_usage_pattern.rb +2 -2
  378. data/lib/paypal_server_sdk/models/venmo_payment_token_usage_type.rb +2 -2
  379. data/lib/paypal_server_sdk/models/venmo_vault_response.rb +100 -0
  380. data/lib/paypal_server_sdk/models/venmo_vault_response_status.rb +31 -0
  381. data/lib/paypal_server_sdk/models/venmo_wallet_additional_attributes.rb +2 -2
  382. data/lib/paypal_server_sdk/models/venmo_wallet_attributes_response.rb +5 -5
  383. data/lib/paypal_server_sdk/models/venmo_wallet_customer_information.rb +2 -2
  384. data/lib/paypal_server_sdk/models/venmo_wallet_experience_context.rb +24 -10
  385. data/lib/paypal_server_sdk/models/{shipping_preference.rb → venmo_wallet_experience_context_shipping_preference.rb} +4 -4
  386. data/lib/paypal_server_sdk/models/venmo_wallet_experience_context_user_action.rb +29 -0
  387. data/lib/paypal_server_sdk/models/venmo_wallet_request.rb +2 -2
  388. data/lib/paypal_server_sdk/models/venmo_wallet_response.rb +16 -6
  389. data/lib/paypal_server_sdk/models/venmo_wallet_vault_attributes.rb +2 -2
  390. data/lib/paypal_server_sdk/utilities/date_time_helper.rb +2 -2
  391. data/lib/paypal_server_sdk/utilities/file_wrapper.rb +2 -2
  392. data/lib/paypal_server_sdk.rb +252 -160
  393. metadata +111 -22
  394. data/lib/paypal_server_sdk/models/order_update_callback_error_response.rb +0 -89
  395. data/lib/paypal_server_sdk/models/order_update_callback_request.rb +0 -111
  396. data/lib/paypal_server_sdk/models/order_update_callback_response.rb +0 -72
  397. data/lib/paypal_server_sdk/models/order_update_callback_shipping_address.rb +0 -107
  398. data/lib/paypal_server_sdk/models/order_update_callback_shipping_option.rb +0 -93
  399. data/lib/paypal_server_sdk/models/payments_payment_advice_code.rb +0 -42
  400. data/lib/paypal_server_sdk/models/payments_processor_response.rb +0 -98
  401. data/lib/paypal_server_sdk/models/shipping_options_purchase_unit.rb +0 -121
  402. data/lib/paypal_server_sdk/models/supplementary_purchase_data.rb +0 -76
@@ -1,7 +1,7 @@
1
1
  # paypal_server_sdk
2
2
  #
3
- # This file was automatically generated by APIMATIC v2.0
4
- # ( https://apimatic.io ).
3
+ # This file was automatically generated by APIMATIC v3.0
4
+ # ( https://www.apimatic.io ).
5
5
 
6
6
  module PaypalServerSdk
7
7
  # The payment method to vault with the instrument details.
@@ -17,21 +17,31 @@ module PaypalServerSdk
17
17
  # @return [VaultPaypalWalletRequest]
18
18
  attr_accessor :paypal
19
19
 
20
- # A resource representing a request to vault PayPal Wallet.
20
+ # A resource representing a request to vault Venmo.
21
21
  # @return [VaultVenmoRequest]
22
22
  attr_accessor :venmo
23
23
 
24
+ # A resource representing a request to vault Apple Pay.
25
+ # @return [VaultApplePayRequest]
26
+ attr_accessor :apple_pay
27
+
24
28
  # The Tokenized Payment Source representing a Request to Vault a Token.
25
29
  # @return [VaultTokenRequest]
26
30
  attr_accessor :token
27
31
 
32
+ # A Resource representing a request to vault a Bank used for ACH Debit.
33
+ # @return [BankRequest]
34
+ attr_accessor :bank
35
+
28
36
  # A mapping from model property names to API property names.
29
37
  def self.names
30
38
  @_hash = {} if @_hash.nil?
31
39
  @_hash['card'] = 'card'
32
40
  @_hash['paypal'] = 'paypal'
33
41
  @_hash['venmo'] = 'venmo'
42
+ @_hash['apple_pay'] = 'apple_pay'
34
43
  @_hash['token'] = 'token'
44
+ @_hash['bank'] = 'bank'
35
45
  @_hash
36
46
  end
37
47
 
@@ -41,7 +51,9 @@ module PaypalServerSdk
41
51
  card
42
52
  paypal
43
53
  venmo
54
+ apple_pay
44
55
  token
56
+ bank
45
57
  ]
46
58
  end
47
59
 
@@ -50,11 +62,14 @@ module PaypalServerSdk
50
62
  []
51
63
  end
52
64
 
53
- def initialize(card: SKIP, paypal: SKIP, venmo: SKIP, token: SKIP)
65
+ def initialize(card: SKIP, paypal: SKIP, venmo: SKIP, apple_pay: SKIP,
66
+ token: SKIP, bank: SKIP)
54
67
  @card = card unless card == SKIP
55
68
  @paypal = paypal unless paypal == SKIP
56
69
  @venmo = venmo unless venmo == SKIP
70
+ @apple_pay = apple_pay unless apple_pay == SKIP
57
71
  @token = token unless token == SKIP
72
+ @bank = bank unless bank == SKIP
58
73
  end
59
74
 
60
75
  # Creates an instance of the object from a hash.
@@ -65,26 +80,32 @@ module PaypalServerSdk
65
80
  card = SetupTokenRequestCard.from_hash(hash['card']) if hash['card']
66
81
  paypal = VaultPaypalWalletRequest.from_hash(hash['paypal']) if hash['paypal']
67
82
  venmo = VaultVenmoRequest.from_hash(hash['venmo']) if hash['venmo']
83
+ apple_pay = VaultApplePayRequest.from_hash(hash['apple_pay']) if hash['apple_pay']
68
84
  token = VaultTokenRequest.from_hash(hash['token']) if hash['token']
85
+ bank = BankRequest.from_hash(hash['bank']) if hash['bank']
69
86
 
70
87
  # Create object from extracted values.
71
88
  SetupTokenRequestPaymentSource.new(card: card,
72
89
  paypal: paypal,
73
90
  venmo: venmo,
74
- token: token)
91
+ apple_pay: apple_pay,
92
+ token: token,
93
+ bank: bank)
75
94
  end
76
95
 
77
96
  # Provides a human-readable string representation of the object.
78
97
  def to_s
79
98
  class_name = self.class.name.split('::').last
80
- "<#{class_name} card: #{@card}, paypal: #{@paypal}, venmo: #{@venmo}, token: #{@token}>"
99
+ "<#{class_name} card: #{@card}, paypal: #{@paypal}, venmo: #{@venmo}, apple_pay:"\
100
+ " #{@apple_pay}, token: #{@token}, bank: #{@bank}>"
81
101
  end
82
102
 
83
103
  # Provides a debugging-friendly string with detailed object information.
84
104
  def inspect
85
105
  class_name = self.class.name.split('::').last
86
106
  "<#{class_name} card: #{@card.inspect}, paypal: #{@paypal.inspect}, venmo:"\
87
- " #{@venmo.inspect}, token: #{@token.inspect}>"
107
+ " #{@venmo.inspect}, apple_pay: #{@apple_pay.inspect}, token: #{@token.inspect}, bank:"\
108
+ " #{@bank.inspect}>"
88
109
  end
89
110
  end
90
111
  end
@@ -1,7 +1,7 @@
1
1
  # paypal_server_sdk
2
2
  #
3
- # This file was automatically generated by APIMATIC v2.0
4
- # ( https://apimatic.io ).
3
+ # This file was automatically generated by APIMATIC v3.0
4
+ # ( https://www.apimatic.io ).
5
5
 
6
6
  module PaypalServerSdk
7
7
  # Minimal representation of a cached setup token.
@@ -9,7 +9,9 @@ module PaypalServerSdk
9
9
  SKIP = Object.new
10
10
  private_constant :SKIP
11
11
 
12
- # The PayPal-generated ID for the vault token.
12
+ # The PayPal-generated ID for the vaulted payment source. This ID should be
13
+ # stored on the merchant's server so the saved payment source can be used
14
+ # for future transactions.
13
15
  # @return [String]
14
16
  attr_accessor :id
15
17
 
@@ -1,7 +1,7 @@
1
1
  # paypal_server_sdk
2
2
  #
3
- # This file was automatically generated by APIMATIC v2.0
4
- # ( https://apimatic.io ).
3
+ # This file was automatically generated by APIMATIC v3.0
4
+ # ( https://www.apimatic.io ).
5
5
 
6
6
  module PaypalServerSdk
7
7
  # SetupTokenResponseCard Model.
@@ -1,7 +1,7 @@
1
1
  # paypal_server_sdk
2
2
  #
3
- # This file was automatically generated by APIMATIC v2.0
4
- # ( https://apimatic.io ).
3
+ # This file was automatically generated by APIMATIC v3.0
4
+ # ( https://www.apimatic.io ).
5
5
 
6
6
  module PaypalServerSdk
7
7
  # The setup payment method details.
@@ -13,11 +13,11 @@ module PaypalServerSdk
13
13
  # @return [SetupTokenResponseCard]
14
14
  attr_accessor :card
15
15
 
16
- # TODO: Write general description for this method
16
+ # Full representation of a PayPal Payment Token.
17
17
  # @return [PaypalPaymentToken]
18
18
  attr_accessor :paypal
19
19
 
20
- # TODO: Write general description for this method
20
+ # Full representation of a Venmo Payment Token.
21
21
  # @return [VenmoPaymentToken]
22
22
  attr_accessor :venmo
23
23
 
@@ -1,7 +1,7 @@
1
1
  # paypal_server_sdk
2
2
  #
3
- # This file was automatically generated by APIMATIC v2.0
4
- # ( https://apimatic.io ).
3
+ # This file was automatically generated by APIMATIC v3.0
4
+ # ( https://www.apimatic.io ).
5
5
 
6
6
  module PaypalServerSdk
7
7
  # The carrier for the shipment. Some carriers have a global version as well as
@@ -4139,7 +4139,115 @@ module PaypalServerSdk
4139
4139
  WINESHIPPING = 'WINESHIPPING'.freeze,
4140
4140
 
4141
4141
  # Spedisci online.
4142
- SPEDISCI = 'SPEDISCI'.freeze
4142
+ SPEDISCI = 'SPEDISCI'.freeze,
4143
+
4144
+ # Fourkites.
4145
+ FOURKITES = 'FOURKITES'.freeze,
4146
+
4147
+ # Etonas.
4148
+ ETONAS = 'ETONAS'.freeze,
4149
+
4150
+ # Fin Mile.
4151
+ FINMILE = 'FINMILE'.freeze,
4152
+
4153
+ # Uniuni.
4154
+ UNIUNI = 'UNIUNI'.freeze,
4155
+
4156
+ # Rodonaves.
4157
+ RODONAVES = 'RODONAVES'.freeze,
4158
+
4159
+ # Inpost Italy.
4160
+ INPOST_IT = 'INPOST_IT'.freeze,
4161
+
4162
+ # Tforce Freight.
4163
+ TFORCE_FREIGHT = 'TFORCE_FREIGHT'.freeze,
4164
+
4165
+ # Rich Mom.
4166
+ RICHMOM = 'RICHMOM'.freeze,
4167
+
4168
+ # Corriere Franco.
4169
+ FRANCO = 'FRANCO'.freeze,
4170
+
4171
+ # Ecparcel.
4172
+ ECPARCEL = 'ECPARCEL'.freeze,
4173
+
4174
+ # Fedex China.
4175
+ FEDEX_CHINA = 'FEDEX_CHINA'.freeze,
4176
+
4177
+ # Gofo Express.
4178
+ GOFO_EXPRESS = 'GOFO_EXPRESS'.freeze,
4179
+
4180
+ # Shipbob.
4181
+ SHIPBOB = 'SHIPBOB'.freeze,
4182
+
4183
+ # Jersey Post Group.
4184
+ JERSEYPOST_ATLAS = 'JERSEYPOST_ATLAS'.freeze,
4185
+
4186
+ # Coretrails.
4187
+ CORETRAILS = 'CORETRAILS'.freeze,
4188
+
4189
+ # Rhenus Logistics Italy.
4190
+ RHENUS_ITALY = 'RHENUS_ITALY'.freeze,
4191
+
4192
+ # Jadlog.
4193
+ JADLOG = 'JADLOG'.freeze,
4194
+
4195
+ # Jitsu.
4196
+ JITSU = 'JITSU'.freeze,
4197
+
4198
+ # Yanwen Express.
4199
+ YANWEN_EXPRESS = 'YANWEN_EXPRESS'.freeze,
4200
+
4201
+ # Dashlink.
4202
+ DASHLINK = 'DASHLINK'.freeze,
4203
+
4204
+ # Seino Super Express.
4205
+ SEINO_SUPER_EXPRESS = 'SEINO_SUPER_EXPRESS'.freeze,
4206
+
4207
+ # Floship.
4208
+ FLOSHIP = 'FLOSHIP'.freeze,
4209
+
4210
+ # Metro Supply Chain.
4211
+ METROSCG = 'METROSCG'.freeze,
4212
+
4213
+ # Sendparcel.
4214
+ SENDPARCEL = 'SENDPARCEL'.freeze,
4215
+
4216
+ # P2p.
4217
+ P2P = 'P2P'.freeze,
4218
+
4219
+ # Cn Express.
4220
+ CN_EXPRESS = 'CN_EXPRESS'.freeze,
4221
+
4222
+ # Cirro Track.
4223
+ CIRROTRACK = 'CIRROTRACK'.freeze,
4224
+
4225
+ # Land Logistics.
4226
+ LAND_LOGISTICS = 'LAND_LOGISTICS'.freeze,
4227
+
4228
+ # Veho.
4229
+ VEHO = 'VEHO'.freeze,
4230
+
4231
+ # Medline.
4232
+ MEDLINE = 'MEDLINE'.freeze,
4233
+
4234
+ # Vdtrack.
4235
+ VDTRACK = 'VDTRACK'.freeze,
4236
+
4237
+ # Sino Scm.
4238
+ SINO_SCM = 'SINO_SCM'.freeze,
4239
+
4240
+ # 3pe Express.
4241
+ ENUM_3PE_EXPRESS = '3PE_EXPRESS'.freeze,
4242
+
4243
+ # Swiftx.
4244
+ SWIFTX = 'SWIFTX'.freeze,
4245
+
4246
+ # Sfyd Express.
4247
+ SFYDEXPRESS = 'SFYDEXPRESS'.freeze,
4248
+
4249
+ # Toptrans.
4250
+ TOPTRANS = 'TOPTRANS'.freeze
4143
4251
  ].freeze
4144
4252
 
4145
4253
  def self.validate(value)
@@ -1,7 +1,7 @@
1
1
  # paypal_server_sdk
2
2
  #
3
- # This file was automatically generated by APIMATIC v2.0
4
- # ( https://apimatic.io ).
3
+ # This file was automatically generated by APIMATIC v3.0
4
+ # ( https://www.apimatic.io ).
5
5
 
6
6
  module PaypalServerSdk
7
7
  # The shipping details.
@@ -0,0 +1,101 @@
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
+ # The shipping information.
8
+ class ShippingInformation < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # The recipient's name.
13
+ # @return [String]
14
+ attr_accessor :name
15
+
16
+ # The shipping method that is associated with this order.
17
+ # @return [String]
18
+ attr_accessor :method
19
+
20
+ # A simple postal address with coarse-grained fields. Do not use for an
21
+ # international address. Use for backward compatibility only. Does not
22
+ # contain phone.
23
+ # @return [SimplePostalAddressCoarseGrained]
24
+ attr_accessor :address
25
+
26
+ # A simple postal address with coarse-grained fields. Do not use for an
27
+ # international address. Use for backward compatibility only. Does not
28
+ # contain phone.
29
+ # @return [SimplePostalAddressCoarseGrained]
30
+ attr_accessor :secondary_shipping_address
31
+
32
+ # A mapping from model property names to API property names.
33
+ def self.names
34
+ @_hash = {} if @_hash.nil?
35
+ @_hash['name'] = 'name'
36
+ @_hash['method'] = 'method'
37
+ @_hash['address'] = 'address'
38
+ @_hash['secondary_shipping_address'] = 'secondary_shipping_address'
39
+ @_hash
40
+ end
41
+
42
+ # An array for optional fields
43
+ def self.optionals
44
+ %w[
45
+ name
46
+ method
47
+ address
48
+ secondary_shipping_address
49
+ ]
50
+ end
51
+
52
+ # An array for nullable fields
53
+ def self.nullables
54
+ []
55
+ end
56
+
57
+ def initialize(name: SKIP, method: SKIP, address: SKIP,
58
+ secondary_shipping_address: SKIP)
59
+ @name = name unless name == SKIP
60
+ @method = method unless method == SKIP
61
+ @address = address unless address == SKIP
62
+ unless secondary_shipping_address == SKIP
63
+ @secondary_shipping_address =
64
+ secondary_shipping_address
65
+ end
66
+ end
67
+
68
+ # Creates an instance of the object from a hash.
69
+ def self.from_hash(hash)
70
+ return nil unless hash
71
+
72
+ # Extract variables from the hash.
73
+ name = hash.key?('name') ? hash['name'] : SKIP
74
+ method = hash.key?('method') ? hash['method'] : SKIP
75
+ address = SimplePostalAddressCoarseGrained.from_hash(hash['address']) if hash['address']
76
+ if hash['secondary_shipping_address']
77
+ secondary_shipping_address = SimplePostalAddressCoarseGrained.from_hash(hash['secondary_shipping_address'])
78
+ end
79
+
80
+ # Create object from extracted values.
81
+ ShippingInformation.new(name: name,
82
+ method: method,
83
+ address: address,
84
+ secondary_shipping_address: secondary_shipping_address)
85
+ end
86
+
87
+ # Provides a human-readable string representation of the object.
88
+ def to_s
89
+ class_name = self.class.name.split('::').last
90
+ "<#{class_name} name: #{@name}, method: #{@method}, address: #{@address},"\
91
+ " secondary_shipping_address: #{@secondary_shipping_address}>"
92
+ end
93
+
94
+ # Provides a debugging-friendly string with detailed object information.
95
+ def inspect
96
+ class_name = self.class.name.split('::').last
97
+ "<#{class_name} name: #{@name.inspect}, method: #{@method.inspect}, address:"\
98
+ " #{@address.inspect}, secondary_shipping_address: #{@secondary_shipping_address.inspect}>"
99
+ end
100
+ end
101
+ end
@@ -1,7 +1,7 @@
1
1
  # paypal_server_sdk
2
2
  #
3
- # This file was automatically generated by APIMATIC v2.0
4
- # ( https://apimatic.io ).
3
+ # This file was automatically generated by APIMATIC v3.0
4
+ # ( https://www.apimatic.io ).
5
5
 
6
6
  module PaypalServerSdk
7
7
  # The name of the party.
@@ -1,7 +1,7 @@
1
1
  # paypal_server_sdk
2
2
  #
3
- # This file was automatically generated by APIMATIC v2.0
4
- # ( https://apimatic.io ).
3
+ # This file was automatically generated by APIMATIC v3.0
4
+ # ( https://www.apimatic.io ).
5
5
 
6
6
  module PaypalServerSdk
7
7
  # The options that the payee or merchant offers to the payer to ship or pick
@@ -1,7 +1,7 @@
1
1
  # paypal_server_sdk
2
2
  #
3
- # This file was automatically generated by APIMATIC v2.0
4
- # ( https://apimatic.io ).
3
+ # This file was automatically generated by APIMATIC v3.0
4
+ # ( https://www.apimatic.io ).
5
5
 
6
6
  module PaypalServerSdk
7
7
  # A classification for the method of purchase fulfillment.
@@ -1,14 +1,18 @@
1
1
  # paypal_server_sdk
2
2
  #
3
- # This file was automatically generated by APIMATIC v2.0
4
- # ( https://apimatic.io ).
3
+ # This file was automatically generated by APIMATIC v3.0
4
+ # ( https://www.apimatic.io ).
5
5
 
6
6
  module PaypalServerSdk
7
- # The order shipping details.
7
+ # ShippingWithTrackingDetails Model.
8
8
  class ShippingWithTrackingDetails < BaseModel
9
9
  SKIP = Object.new
10
10
  private_constant :SKIP
11
11
 
12
+ # An array of trackers for a transaction.
13
+ # @return [Array[OrderTrackerResponse]]
14
+ attr_accessor :trackers
15
+
12
16
  # The name of the party.
13
17
  # @return [ShippingName]
14
18
  attr_accessor :name
@@ -22,7 +26,7 @@ module PaypalServerSdk
22
26
 
23
27
  # The phone number in its canonical international [E.164 numbering plan
24
28
  # format](https://www.itu.int/rec/T-REC-E.164/en).
25
- # @return [PhoneNumberWithCountryCode]
29
+ # @return [PhoneNumberWithOptionalCountryCode]
26
30
  attr_accessor :phone_number
27
31
 
28
32
  # A classification for the method of purchase fulfillment (e.g shipping,
@@ -45,33 +49,29 @@ module PaypalServerSdk
45
49
  # @return [Address]
46
50
  attr_accessor :address
47
51
 
48
- # An array of trackers for a transaction.
49
- # @return [Array[OrderTrackerResponse]]
50
- attr_accessor :trackers
51
-
52
52
  # A mapping from model property names to API property names.
53
53
  def self.names
54
54
  @_hash = {} if @_hash.nil?
55
+ @_hash['trackers'] = 'trackers'
55
56
  @_hash['name'] = 'name'
56
57
  @_hash['email_address'] = 'email_address'
57
58
  @_hash['phone_number'] = 'phone_number'
58
59
  @_hash['type'] = 'type'
59
60
  @_hash['options'] = 'options'
60
61
  @_hash['address'] = 'address'
61
- @_hash['trackers'] = 'trackers'
62
62
  @_hash
63
63
  end
64
64
 
65
65
  # An array for optional fields
66
66
  def self.optionals
67
67
  %w[
68
+ trackers
68
69
  name
69
70
  email_address
70
71
  phone_number
71
72
  type
72
73
  options
73
74
  address
74
- trackers
75
75
  ]
76
76
  end
77
77
 
@@ -80,15 +80,15 @@ module PaypalServerSdk
80
80
  []
81
81
  end
82
82
 
83
- def initialize(name: SKIP, email_address: SKIP, phone_number: SKIP,
84
- type: SKIP, options: SKIP, address: SKIP, trackers: SKIP)
83
+ def initialize(trackers: SKIP, name: SKIP, email_address: SKIP,
84
+ phone_number: SKIP, type: SKIP, options: SKIP, address: SKIP)
85
+ @trackers = trackers unless trackers == SKIP
85
86
  @name = name unless name == SKIP
86
87
  @email_address = email_address unless email_address == SKIP
87
88
  @phone_number = phone_number unless phone_number == SKIP
88
89
  @type = type unless type == SKIP
89
90
  @options = options unless options == SKIP
90
91
  @address = address unless address == SKIP
91
- @trackers = trackers unless trackers == SKIP
92
92
  end
93
93
 
94
94
  # Creates an instance of the object from a hash.
@@ -96,9 +96,19 @@ module PaypalServerSdk
96
96
  return nil unless hash
97
97
 
98
98
  # Extract variables from the hash.
99
+ # Parameter is an array, so we need to iterate through it
100
+ trackers = nil
101
+ unless hash['trackers'].nil?
102
+ trackers = []
103
+ hash['trackers'].each do |structure|
104
+ trackers << (OrderTrackerResponse.from_hash(structure) if structure)
105
+ end
106
+ end
107
+
108
+ trackers = SKIP unless hash.key?('trackers')
99
109
  name = ShippingName.from_hash(hash['name']) if hash['name']
100
110
  email_address = hash.key?('email_address') ? hash['email_address'] : SKIP
101
- phone_number = PhoneNumberWithCountryCode.from_hash(hash['phone_number']) if
111
+ phone_number = PhoneNumberWithOptionalCountryCode.from_hash(hash['phone_number']) if
102
112
  hash['phone_number']
103
113
  type = hash.key?('type') ? hash['type'] : SKIP
104
114
  # Parameter is an array, so we need to iterate through it
@@ -112,41 +122,31 @@ module PaypalServerSdk
112
122
 
113
123
  options = SKIP unless hash.key?('options')
114
124
  address = Address.from_hash(hash['address']) if hash['address']
115
- # Parameter is an array, so we need to iterate through it
116
- trackers = nil
117
- unless hash['trackers'].nil?
118
- trackers = []
119
- hash['trackers'].each do |structure|
120
- trackers << (OrderTrackerResponse.from_hash(structure) if structure)
121
- end
122
- end
123
-
124
- trackers = SKIP unless hash.key?('trackers')
125
125
 
126
126
  # Create object from extracted values.
127
- ShippingWithTrackingDetails.new(name: name,
127
+ ShippingWithTrackingDetails.new(trackers: trackers,
128
+ name: name,
128
129
  email_address: email_address,
129
130
  phone_number: phone_number,
130
131
  type: type,
131
132
  options: options,
132
- address: address,
133
- trackers: trackers)
133
+ address: address)
134
134
  end
135
135
 
136
136
  # Provides a human-readable string representation of the object.
137
137
  def to_s
138
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}>"
139
+ "<#{class_name} trackers: #{@trackers}, name: #{@name}, email_address: #{@email_address},"\
140
+ " phone_number: #{@phone_number}, type: #{@type}, options: #{@options}, address:"\
141
+ " #{@address}>"
142
142
  end
143
143
 
144
144
  # Provides a debugging-friendly string with detailed object information.
145
145
  def inspect
146
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}>"
147
+ "<#{class_name} trackers: #{@trackers.inspect}, name: #{@name.inspect}, email_address:"\
148
+ " #{@email_address.inspect}, phone_number: #{@phone_number.inspect}, type: #{@type.inspect},"\
149
+ " options: #{@options.inspect}, address: #{@address.inspect}>"
150
150
  end
151
151
  end
152
152
  end