paypal-server-sdk 1.0.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 +52 -37
  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 +101 -61
  9. data/lib/paypal_server_sdk/controllers/payments_controller.rb +31 -21
  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 +14 -14
  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 +7 -5
  16. data/lib/paypal_server_sdk/exceptions/o_auth_provider_exception.rb +7 -5
  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 +4 -3
  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 +68 -0
  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 +20 -6
  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 +3 -4
  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 +18 -3
  90. data/lib/paypal_server_sdk/models/card_customer.rb +98 -0
  91. data/lib/paypal_server_sdk/models/card_customer_information.rb +16 -6
  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 +18 -7
  115. data/lib/paypal_server_sdk/models/customer_response.rb +3 -4
  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 +68 -0
  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 +19 -6
  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 +16 -6
  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 +24 -13
  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 +93 -0
  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 +7 -7
  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 +6 -5
  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 +34 -0
  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 +16 -6
  243. data/lib/paypal_server_sdk/models/paypal_wallet_customer_request.rb +16 -6
  244. data/lib/paypal_server_sdk/models/paypal_wallet_experience_context.rb +35 -8
  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 +17 -7
  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 +4 -3
  366. data/lib/paypal_server_sdk/models/vault_response_customer.rb +3 -3
  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 +26 -6
  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 +125 -29
  393. metadata +115 -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 -102
  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 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
@@ -0,0 +1,130 @@
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 simple postal address with coarse-grained fields. Do not use for an
8
+ # international address. Use for backward compatibility only. Does not contain
9
+ # phone.
10
+ class SimplePostalAddressCoarseGrained < BaseModel
11
+ SKIP = Object.new
12
+ private_constant :SKIP
13
+
14
+ # The first line of the address. For example, number or street.
15
+ # @return [String]
16
+ attr_accessor :line1
17
+
18
+ # The second line of the address. For example, suite or apartment number.
19
+ # @return [String]
20
+ attr_accessor :line2
21
+
22
+ # The city name.
23
+ # @return [String]
24
+ attr_accessor :city
25
+
26
+ # The [code](/docs/api/reference/state-codes/) for a US state or the
27
+ # equivalent for other countries. Required for transactions if the address
28
+ # is in one of these countries:
29
+ # [Argentina](/docs/api/reference/state-codes/#argentina),
30
+ # [Brazil](/docs/api/reference/state-codes/#brazil),
31
+ # [Canada](/docs/api/reference/state-codes/#canada),
32
+ # [China](/docs/api/reference/state-codes/#china),
33
+ # [India](/docs/api/reference/state-codes/#india),
34
+ # [Italy](/docs/api/reference/state-codes/#italy),
35
+ # [Japan](/docs/api/reference/state-codes/#japan),
36
+ # [Mexico](/docs/api/reference/state-codes/#mexico),
37
+ # [Thailand](/docs/api/reference/state-codes/#thailand), or [United
38
+ # States](/docs/api/reference/state-codes/#usa). Maximum length is 40
39
+ # single-byte characters.
40
+ # @return [String]
41
+ attr_accessor :state
42
+
43
+ # The [two-character ISO 3166-1
44
+ # code](/docs/integration/direct/rest/country-codes/) that identifies the
45
+ # country or region. Note: The country code for Great Britain is GB and not
46
+ # UK as used in the top-level domain names for that country. Use the `C2`
47
+ # country code for China worldwide for comparable uncontrolled price (CUP)
48
+ # method, bank card, and cross-border transactions.
49
+ # @return [String]
50
+ attr_accessor :country_code
51
+
52
+ # The postal code, which is the zip code or equivalent. Typically required
53
+ # for countries with a postal code or an equivalent. See [postal
54
+ # code](https://en.wikipedia.org/wiki/Postal_code).
55
+ # @return [String]
56
+ attr_accessor :postal_code
57
+
58
+ # A mapping from model property names to API property names.
59
+ def self.names
60
+ @_hash = {} if @_hash.nil?
61
+ @_hash['line1'] = 'line1'
62
+ @_hash['line2'] = 'line2'
63
+ @_hash['city'] = 'city'
64
+ @_hash['state'] = 'state'
65
+ @_hash['country_code'] = 'country_code'
66
+ @_hash['postal_code'] = 'postal_code'
67
+ @_hash
68
+ end
69
+
70
+ # An array for optional fields
71
+ def self.optionals
72
+ %w[
73
+ line2
74
+ state
75
+ postal_code
76
+ ]
77
+ end
78
+
79
+ # An array for nullable fields
80
+ def self.nullables
81
+ []
82
+ end
83
+
84
+ def initialize(line1:, city:, country_code:, line2: SKIP, state: SKIP,
85
+ postal_code: SKIP)
86
+ @line1 = line1
87
+ @line2 = line2 unless line2 == SKIP
88
+ @city = city
89
+ @state = state unless state == SKIP
90
+ @country_code = country_code
91
+ @postal_code = postal_code unless postal_code == SKIP
92
+ end
93
+
94
+ # Creates an instance of the object from a hash.
95
+ def self.from_hash(hash)
96
+ return nil unless hash
97
+
98
+ # Extract variables from the hash.
99
+ line1 = hash.key?('line1') ? hash['line1'] : nil
100
+ city = hash.key?('city') ? hash['city'] : nil
101
+ country_code = hash.key?('country_code') ? hash['country_code'] : nil
102
+ line2 = hash.key?('line2') ? hash['line2'] : SKIP
103
+ state = hash.key?('state') ? hash['state'] : SKIP
104
+ postal_code = hash.key?('postal_code') ? hash['postal_code'] : SKIP
105
+
106
+ # Create object from extracted values.
107
+ SimplePostalAddressCoarseGrained.new(line1: line1,
108
+ city: city,
109
+ country_code: country_code,
110
+ line2: line2,
111
+ state: state,
112
+ postal_code: postal_code)
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} line1: #{@line1}, line2: #{@line2}, city: #{@city}, state: #{@state},"\
119
+ " country_code: #{@country_code}, postal_code: #{@postal_code}>"
120
+ end
121
+
122
+ # Provides a debugging-friendly string with detailed object information.
123
+ def inspect
124
+ class_name = self.class.name.split('::').last
125
+ "<#{class_name} line1: #{@line1.inspect}, line2: #{@line2.inspect}, city: #{@city.inspect},"\
126
+ " state: #{@state.inspect}, country_code: #{@country_code.inspect}, postal_code:"\
127
+ " #{@postal_code.inspect}>"
128
+ end
129
+ end
130
+ 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
  # Information used to pay using Sofort.
@@ -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
  # Information needed to pay using Sofort.
@@ -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
  # NACHA (the regulatory body governing the ACH network) requires that API
@@ -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
  # Defines how and when the payment source gets vaulted.
@@ -0,0 +1,71 @@
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 store information.
8
+ class StoreInformation < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # The ID of a store for a merchant in the system of record.
13
+ # @return [String]
14
+ attr_accessor :store_id
15
+
16
+ # The terminal ID for the checkout stand in a merchant store.
17
+ # @return [String]
18
+ attr_accessor :terminal_id
19
+
20
+ # A mapping from model property names to API property names.
21
+ def self.names
22
+ @_hash = {} if @_hash.nil?
23
+ @_hash['store_id'] = 'store_id'
24
+ @_hash['terminal_id'] = 'terminal_id'
25
+ @_hash
26
+ end
27
+
28
+ # An array for optional fields
29
+ def self.optionals
30
+ %w[
31
+ store_id
32
+ terminal_id
33
+ ]
34
+ end
35
+
36
+ # An array for nullable fields
37
+ def self.nullables
38
+ []
39
+ end
40
+
41
+ def initialize(store_id: SKIP, terminal_id: SKIP)
42
+ @store_id = store_id unless store_id == SKIP
43
+ @terminal_id = terminal_id unless terminal_id == SKIP
44
+ end
45
+
46
+ # Creates an instance of the object from a hash.
47
+ def self.from_hash(hash)
48
+ return nil unless hash
49
+
50
+ # Extract variables from the hash.
51
+ store_id = hash.key?('store_id') ? hash['store_id'] : SKIP
52
+ terminal_id = hash.key?('terminal_id') ? hash['terminal_id'] : SKIP
53
+
54
+ # Create object from extracted values.
55
+ StoreInformation.new(store_id: store_id,
56
+ terminal_id: terminal_id)
57
+ end
58
+
59
+ # Provides a human-readable string representation of the object.
60
+ def to_s
61
+ class_name = self.class.name.split('::').last
62
+ "<#{class_name} store_id: #{@store_id}, terminal_id: #{@terminal_id}>"
63
+ end
64
+
65
+ # Provides a debugging-friendly string with detailed object information.
66
+ def inspect
67
+ class_name = self.class.name.split('::').last
68
+ "<#{class_name} store_id: #{@store_id.inspect}, terminal_id: #{@terminal_id.inspect}>"
69
+ end
70
+ end
71
+ end