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 PayPal Wallet response.
@@ -79,6 +79,12 @@ module PaypalServerSdk
79
79
  # @return [PaypalWalletStoredCredential]
80
80
  attr_accessor :stored_credential
81
81
 
82
+ # This field indicates the status of PayPal's Checkout experience throughout
83
+ # the order lifecycle. The values reflect the current stage of the checkout
84
+ # process.
85
+ # @return [ExperienceStatus]
86
+ attr_accessor :experience_status
87
+
82
88
  # A mapping from model property names to API property names.
83
89
  def self.names
84
90
  @_hash = {} if @_hash.nil?
@@ -94,6 +100,7 @@ module PaypalServerSdk
94
100
  @_hash['address'] = 'address'
95
101
  @_hash['attributes'] = 'attributes'
96
102
  @_hash['stored_credential'] = 'stored_credential'
103
+ @_hash['experience_status'] = 'experience_status'
97
104
  @_hash
98
105
  end
99
106
 
@@ -112,6 +119,7 @@ module PaypalServerSdk
112
119
  address
113
120
  attributes
114
121
  stored_credential
122
+ experience_status
115
123
  ]
116
124
  end
117
125
 
@@ -123,7 +131,8 @@ module PaypalServerSdk
123
131
  def initialize(email_address: SKIP, account_id: SKIP, account_status: SKIP,
124
132
  name: SKIP, phone_type: SKIP, phone_number: SKIP,
125
133
  birth_date: SKIP, business_name: SKIP, tax_info: SKIP,
126
- address: SKIP, attributes: SKIP, stored_credential: SKIP)
134
+ address: SKIP, attributes: SKIP, stored_credential: SKIP,
135
+ experience_status: SKIP)
127
136
  @email_address = email_address unless email_address == SKIP
128
137
  @account_id = account_id unless account_id == SKIP
129
138
  @account_status = account_status unless account_status == SKIP
@@ -136,6 +145,7 @@ module PaypalServerSdk
136
145
  @address = address unless address == SKIP
137
146
  @attributes = attributes unless attributes == SKIP
138
147
  @stored_credential = stored_credential unless stored_credential == SKIP
148
+ @experience_status = experience_status unless experience_status == SKIP
139
149
  end
140
150
 
141
151
  # Creates an instance of the object from a hash.
@@ -158,6 +168,8 @@ module PaypalServerSdk
158
168
  hash['attributes']
159
169
  stored_credential = PaypalWalletStoredCredential.from_hash(hash['stored_credential']) if
160
170
  hash['stored_credential']
171
+ experience_status =
172
+ hash.key?('experience_status') ? hash['experience_status'] : SKIP
161
173
 
162
174
  # Create object from extracted values.
163
175
  PaypalWalletResponse.new(email_address: email_address,
@@ -171,7 +183,8 @@ module PaypalServerSdk
171
183
  tax_info: tax_info,
172
184
  address: address,
173
185
  attributes: attributes,
174
- stored_credential: stored_credential)
186
+ stored_credential: stored_credential,
187
+ experience_status: experience_status)
175
188
  end
176
189
 
177
190
  # Provides a human-readable string representation of the object.
@@ -181,7 +194,8 @@ module PaypalServerSdk
181
194
  " account_status: #{@account_status}, name: #{@name}, phone_type: #{@phone_type},"\
182
195
  " phone_number: #{@phone_number}, birth_date: #{@birth_date}, business_name:"\
183
196
  " #{@business_name}, tax_info: #{@tax_info}, address: #{@address}, attributes:"\
184
- " #{@attributes}, stored_credential: #{@stored_credential}>"
197
+ " #{@attributes}, stored_credential: #{@stored_credential}, experience_status:"\
198
+ " #{@experience_status}>"
185
199
  end
186
200
 
187
201
  # Provides a debugging-friendly string with detailed object information.
@@ -192,7 +206,8 @@ module PaypalServerSdk
192
206
  " #{@name.inspect}, phone_type: #{@phone_type.inspect}, phone_number:"\
193
207
  " #{@phone_number.inspect}, birth_date: #{@birth_date.inspect}, business_name:"\
194
208
  " #{@business_name.inspect}, tax_info: #{@tax_info.inspect}, address: #{@address.inspect},"\
195
- " attributes: #{@attributes.inspect}, stored_credential: #{@stored_credential.inspect}>"
209
+ " attributes: #{@attributes.inspect}, stored_credential: #{@stored_credential.inspect},"\
210
+ " experience_status: #{@experience_status.inspect}>"
196
211
  end
197
212
  end
198
213
  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
  # Provides additional details to process a payment using the PayPal wallet
@@ -15,7 +15,8 @@ module PaypalServerSdk
15
15
  # @return [PaymentInitiator]
16
16
  attr_accessor :payment_initiator
17
17
 
18
- # Expected business/pricing model for the billing agreement.
18
+ # DEPRECATED. Expected business/pricing model for the billing agreement,
19
+ # Please use usage_pattern instead.
19
20
  # @return [UsagePattern]
20
21
  attr_accessor :charge_pattern
21
22
 
@@ -1,18 +1,15 @@
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
- # PaypalWalletVaultInstruction Model.
7
+ # Resource consolidating common request and response attributes for vaulting
8
+ # PayPal Wallet.
8
9
  class PaypalWalletVaultInstruction < BaseModel
9
10
  SKIP = Object.new
10
11
  private_constant :SKIP
11
12
 
12
- # Defines how and when the payment source gets vaulted.
13
- # @return [StoreInVaultInstruction]
14
- attr_accessor :store_in_vault
15
-
16
13
  # The description displayed to PayPal consumer on the approval flow for
17
14
  # PayPal, as well as on the PayPal payment token management experience on
18
15
  # PayPal.com.
@@ -47,7 +44,6 @@ module PaypalServerSdk
47
44
  # A mapping from model property names to API property names.
48
45
  def self.names
49
46
  @_hash = {} if @_hash.nil?
50
- @_hash['store_in_vault'] = 'store_in_vault'
51
47
  @_hash['description'] = 'description'
52
48
  @_hash['usage_pattern'] = 'usage_pattern'
53
49
  @_hash['usage_type'] = 'usage_type'
@@ -60,7 +56,6 @@ module PaypalServerSdk
60
56
  # An array for optional fields
61
57
  def self.optionals
62
58
  %w[
63
- store_in_vault
64
59
  description
65
60
  usage_pattern
66
61
  customer_type
@@ -73,11 +68,9 @@ module PaypalServerSdk
73
68
  []
74
69
  end
75
70
 
76
- def initialize(usage_type:, store_in_vault: SKIP, description: SKIP,
77
- usage_pattern: SKIP,
71
+ def initialize(usage_type:, description: SKIP, usage_pattern: SKIP,
78
72
  customer_type: PaypalPaymentTokenCustomerType::CONSUMER,
79
73
  permit_multiple_payment_tokens: false)
80
- @store_in_vault = store_in_vault unless store_in_vault == SKIP
81
74
  @description = description unless description == SKIP
82
75
  @usage_pattern = usage_pattern unless usage_pattern == SKIP
83
76
  @usage_type = usage_type
@@ -94,8 +87,6 @@ module PaypalServerSdk
94
87
 
95
88
  # Extract variables from the hash.
96
89
  usage_type = hash.key?('usage_type') ? hash['usage_type'] : nil
97
- store_in_vault =
98
- hash.key?('store_in_vault') ? hash['store_in_vault'] : SKIP
99
90
  description = hash.key?('description') ? hash['description'] : SKIP
100
91
  usage_pattern = hash.key?('usage_pattern') ? hash['usage_pattern'] : SKIP
101
92
  customer_type =
@@ -105,7 +96,6 @@ module PaypalServerSdk
105
96
 
106
97
  # Create object from extracted values.
107
98
  PaypalWalletVaultInstruction.new(usage_type: usage_type,
108
- store_in_vault: store_in_vault,
109
99
  description: description,
110
100
  usage_pattern: usage_pattern,
111
101
  customer_type: customer_type,
@@ -115,18 +105,18 @@ module PaypalServerSdk
115
105
  # Provides a human-readable string representation of the object.
116
106
  def to_s
117
107
  class_name = self.class.name.split('::').last
118
- "<#{class_name} store_in_vault: #{@store_in_vault}, description: #{@description},"\
119
- " usage_pattern: #{@usage_pattern}, usage_type: #{@usage_type}, customer_type:"\
120
- " #{@customer_type}, permit_multiple_payment_tokens: #{@permit_multiple_payment_tokens}>"
108
+ "<#{class_name} description: #{@description}, usage_pattern: #{@usage_pattern}, usage_type:"\
109
+ " #{@usage_type}, customer_type: #{@customer_type}, permit_multiple_payment_tokens:"\
110
+ " #{@permit_multiple_payment_tokens}>"
121
111
  end
122
112
 
123
113
  # Provides a debugging-friendly string with detailed object information.
124
114
  def inspect
125
115
  class_name = self.class.name.split('::').last
126
- "<#{class_name} store_in_vault: #{@store_in_vault.inspect}, description:"\
127
- " #{@description.inspect}, usage_pattern: #{@usage_pattern.inspect}, usage_type:"\
128
- " #{@usage_type.inspect}, customer_type: #{@customer_type.inspect},"\
129
- " permit_multiple_payment_tokens: #{@permit_multiple_payment_tokens.inspect}>"
116
+ "<#{class_name} description: #{@description.inspect}, usage_pattern:"\
117
+ " #{@usage_pattern.inspect}, usage_type: #{@usage_type.inspect}, customer_type:"\
118
+ " #{@customer_type.inspect}, permit_multiple_payment_tokens:"\
119
+ " #{@permit_multiple_payment_tokens.inspect}>"
130
120
  end
131
121
  end
132
122
  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 details about a saved PayPal Wallet payment source.
@@ -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 vault status.
@@ -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 phone number, in its canonical international [E.164 numbering plan
@@ -1,10 +1,12 @@
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 phone number in its canonical international [E.164 numbering plan
8
+ # format](https://www.itu.int/rec/T-REC-E.164/en)., The phone number, in its
9
+ # canonical international [E.164 numbering plan
8
10
  # format](https://www.itu.int/rec/T-REC-E.164/en).
9
11
  class PhoneNumber < BaseModel
10
12
  SKIP = Object.new
@@ -1,12 +1,14 @@
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 phone number in its canonical international [E.164 numbering plan
8
8
  # format](https://www.itu.int/rec/T-REC-E.164/en)., The phone number, in its
9
9
  # canonical international [E.164 numbering plan
10
+ # format](https://www.itu.int/rec/T-REC-E.164/en)., The phone number, in its
11
+ # canonical international [E.164 numbering plan
10
12
  # format](https://www.itu.int/rec/T-REC-E.164/en).
11
13
  class PhoneNumberWithCountryCode < BaseModel
12
14
  SKIP = Object.new
@@ -0,0 +1,81 @@
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 phone number in its canonical international [E.164 numbering plan
8
+ # format](https://www.itu.int/rec/T-REC-E.164/en).
9
+ class PhoneNumberWithOptionalCountryCode < BaseModel
10
+ SKIP = Object.new
11
+ private_constant :SKIP
12
+
13
+ # The country calling code (CC), in its canonical international [E.164
14
+ # numbering plan format](https://www.itu.int/rec/T-REC-E.164/en). The
15
+ # combined length of the CC and the national number must not be greater than
16
+ # 15 digits. The national number consists of a national destination code
17
+ # (NDC) and subscriber number (SN).
18
+ # @return [String]
19
+ attr_accessor :country_code
20
+
21
+ # The national number, in its canonical international [E.164 numbering plan
22
+ # format](https://www.itu.int/rec/T-REC-E.164/en). The combined length of
23
+ # the country calling code (CC) and the national number must not be greater
24
+ # than 15 digits. The national number consists of a national destination
25
+ # code (NDC) and subscriber number (SN).
26
+ # @return [String]
27
+ attr_accessor :national_number
28
+
29
+ # A mapping from model property names to API property names.
30
+ def self.names
31
+ @_hash = {} if @_hash.nil?
32
+ @_hash['country_code'] = 'country_code'
33
+ @_hash['national_number'] = 'national_number'
34
+ @_hash
35
+ end
36
+
37
+ # An array for optional fields
38
+ def self.optionals
39
+ %w[
40
+ country_code
41
+ ]
42
+ end
43
+
44
+ # An array for nullable fields
45
+ def self.nullables
46
+ []
47
+ end
48
+
49
+ def initialize(national_number:, country_code: SKIP)
50
+ @country_code = country_code unless country_code == SKIP
51
+ @national_number = national_number
52
+ end
53
+
54
+ # Creates an instance of the object from a hash.
55
+ def self.from_hash(hash)
56
+ return nil unless hash
57
+
58
+ # Extract variables from the hash.
59
+ national_number =
60
+ hash.key?('national_number') ? hash['national_number'] : nil
61
+ country_code = hash.key?('country_code') ? hash['country_code'] : SKIP
62
+
63
+ # Create object from extracted values.
64
+ PhoneNumberWithOptionalCountryCode.new(national_number: national_number,
65
+ country_code: country_code)
66
+ end
67
+
68
+ # Provides a human-readable string representation of the object.
69
+ def to_s
70
+ class_name = self.class.name.split('::').last
71
+ "<#{class_name} country_code: #{@country_code}, national_number: #{@national_number}>"
72
+ end
73
+
74
+ # Provides a debugging-friendly string with detailed object information.
75
+ def inspect
76
+ class_name = self.class.name.split('::').last
77
+ "<#{class_name} country_code: #{@country_code.inspect}, national_number:"\
78
+ " #{@national_number.inspect}>"
79
+ end
80
+ end
81
+ end
@@ -1,25 +1,25 @@
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 phone type.
8
8
  class PhoneType
9
9
  PHONE_TYPE = [
10
- # TODO: Write general description for FAX
10
+ # Fax number.
11
11
  FAX = 'FAX'.freeze,
12
12
 
13
- # TODO: Write general description for HOME
13
+ # Home phone number.
14
14
  HOME = 'HOME'.freeze,
15
15
 
16
- # TODO: Write general description for MOBILE
16
+ # Mobile phone number.
17
17
  MOBILE = 'MOBILE'.freeze,
18
18
 
19
- # TODO: Write general description for OTHER
19
+ # Other phone number.
20
20
  OTHER = 'OTHER'.freeze,
21
21
 
22
- # TODO: Write general description for PAGER
22
+ # Pager number.
23
23
  PAGER = 'PAGER'.freeze
24
24
  ].freeze
25
25
 
@@ -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 phone information.
@@ -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 merchant level Recurring Billing plan metadata for the Billing
@@ -15,10 +15,6 @@ module PaypalServerSdk
15
15
  # @return [Array[BillingCycle]]
16
16
  attr_accessor :billing_cycles
17
17
 
18
- # Product details associated with any one-time product purchase.
19
- # @return [Object]
20
- attr_accessor :product
21
-
22
18
  # The one-time charge info at the time of checkout.
23
19
  # @return [OneTimeCharge]
24
20
  attr_accessor :one_time_charges
@@ -31,7 +27,6 @@ module PaypalServerSdk
31
27
  def self.names
32
28
  @_hash = {} if @_hash.nil?
33
29
  @_hash['billing_cycles'] = 'billing_cycles'
34
- @_hash['product'] = 'product'
35
30
  @_hash['one_time_charges'] = 'one_time_charges'
36
31
  @_hash['name'] = 'name'
37
32
  @_hash
@@ -40,7 +35,6 @@ module PaypalServerSdk
40
35
  # An array for optional fields
41
36
  def self.optionals
42
37
  %w[
43
- product
44
38
  name
45
39
  ]
46
40
  end
@@ -50,10 +44,8 @@ module PaypalServerSdk
50
44
  []
51
45
  end
52
46
 
53
- def initialize(billing_cycles:, one_time_charges:, product: SKIP,
54
- name: SKIP)
47
+ def initialize(billing_cycles:, one_time_charges:, name: SKIP)
55
48
  @billing_cycles = billing_cycles
56
- @product = product unless product == SKIP
57
49
  @one_time_charges = one_time_charges
58
50
  @name = name unless name == SKIP
59
51
  end
@@ -75,28 +67,26 @@ module PaypalServerSdk
75
67
  billing_cycles = nil unless hash.key?('billing_cycles')
76
68
  one_time_charges = OneTimeCharge.from_hash(hash['one_time_charges']) if
77
69
  hash['one_time_charges']
78
- product = hash.key?('product') ? hash['product'] : SKIP
79
70
  name = hash.key?('name') ? hash['name'] : SKIP
80
71
 
81
72
  # Create object from extracted values.
82
73
  Plan.new(billing_cycles: billing_cycles,
83
74
  one_time_charges: one_time_charges,
84
- product: product,
85
75
  name: name)
86
76
  end
87
77
 
88
78
  # Provides a human-readable string representation of the object.
89
79
  def to_s
90
80
  class_name = self.class.name.split('::').last
91
- "<#{class_name} billing_cycles: #{@billing_cycles}, product: #{@product}, one_time_charges:"\
92
- " #{@one_time_charges}, name: #{@name}>"
81
+ "<#{class_name} billing_cycles: #{@billing_cycles}, one_time_charges: #{@one_time_charges},"\
82
+ " name: #{@name}>"
93
83
  end
94
84
 
95
85
  # Provides a debugging-friendly string with detailed object information.
96
86
  def inspect
97
87
  class_name = self.class.name.split('::').last
98
- "<#{class_name} billing_cycles: #{@billing_cycles.inspect}, product: #{@product.inspect},"\
99
- " one_time_charges: #{@one_time_charges.inspect}, name: #{@name.inspect}>"
88
+ "<#{class_name} billing_cycles: #{@billing_cycles.inspect}, one_time_charges:"\
89
+ " #{@one_time_charges.inspect}, name: #{@name.inspect}>"
100
90
  end
101
91
  end
102
92
  end
@@ -0,0 +1,111 @@
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 list of plans with details.
8
+ class PlanCollection < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # An array of plans.
13
+ # @return [Array[BillingPlan]]
14
+ attr_accessor :plans
15
+
16
+ # The total number of items.
17
+ # @return [Integer]
18
+ attr_accessor :total_items
19
+
20
+ # The total number of pages.
21
+ # @return [Integer]
22
+ attr_accessor :total_pages
23
+
24
+ # An array of request-related [HATEOAS
25
+ # links](/docs/api/reference/api-responses/#hateoas-links).
26
+ # @return [Array[LinkDescription]]
27
+ attr_accessor :links
28
+
29
+ # A mapping from model property names to API property names.
30
+ def self.names
31
+ @_hash = {} if @_hash.nil?
32
+ @_hash['plans'] = 'plans'
33
+ @_hash['total_items'] = 'total_items'
34
+ @_hash['total_pages'] = 'total_pages'
35
+ @_hash['links'] = 'links'
36
+ @_hash
37
+ end
38
+
39
+ # An array for optional fields
40
+ def self.optionals
41
+ %w[
42
+ plans
43
+ total_items
44
+ total_pages
45
+ links
46
+ ]
47
+ end
48
+
49
+ # An array for nullable fields
50
+ def self.nullables
51
+ []
52
+ end
53
+
54
+ def initialize(plans: SKIP, total_items: SKIP, total_pages: SKIP,
55
+ links: SKIP)
56
+ @plans = plans unless plans == SKIP
57
+ @total_items = total_items unless total_items == SKIP
58
+ @total_pages = total_pages unless total_pages == SKIP
59
+ @links = links unless links == SKIP
60
+ end
61
+
62
+ # Creates an instance of the object from a hash.
63
+ def self.from_hash(hash)
64
+ return nil unless hash
65
+
66
+ # Extract variables from the hash.
67
+ # Parameter is an array, so we need to iterate through it
68
+ plans = nil
69
+ unless hash['plans'].nil?
70
+ plans = []
71
+ hash['plans'].each do |structure|
72
+ plans << (BillingPlan.from_hash(structure) if structure)
73
+ end
74
+ end
75
+
76
+ plans = SKIP unless hash.key?('plans')
77
+ total_items = hash.key?('total_items') ? hash['total_items'] : SKIP
78
+ total_pages = hash.key?('total_pages') ? hash['total_pages'] : SKIP
79
+ # Parameter is an array, so we need to iterate through it
80
+ links = nil
81
+ unless hash['links'].nil?
82
+ links = []
83
+ hash['links'].each do |structure|
84
+ links << (LinkDescription.from_hash(structure) if structure)
85
+ end
86
+ end
87
+
88
+ links = SKIP unless hash.key?('links')
89
+
90
+ # Create object from extracted values.
91
+ PlanCollection.new(plans: plans,
92
+ total_items: total_items,
93
+ total_pages: total_pages,
94
+ links: links)
95
+ end
96
+
97
+ # Provides a human-readable string representation of the object.
98
+ def to_s
99
+ class_name = self.class.name.split('::').last
100
+ "<#{class_name} plans: #{@plans}, total_items: #{@total_items}, total_pages:"\
101
+ " #{@total_pages}, links: #{@links}>"
102
+ end
103
+
104
+ # Provides a debugging-friendly string with detailed object information.
105
+ def inspect
106
+ class_name = self.class.name.split('::').last
107
+ "<#{class_name} plans: #{@plans.inspect}, total_items: #{@total_items.inspect},"\
108
+ " total_pages: #{@total_pages.inspect}, links: #{@links.inspect}>"
109
+ end
110
+ end
111
+ end