paypal-server-sdk 1.1.0 → 2.1.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 (403) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +82 -23
  3. data/bin/console +15 -0
  4. data/lib/paypal_server_sdk/api_helper.rb +2 -2
  5. data/lib/paypal_server_sdk/client.rb +27 -3
  6. data/lib/paypal_server_sdk/configuration.rb +76 -8
  7. data/lib/paypal_server_sdk/controllers/base_controller.rb +4 -10
  8. data/lib/paypal_server_sdk/controllers/o_auth_authorization_controller.rb +4 -4
  9. data/lib/paypal_server_sdk/controllers/orders_controller.rb +211 -211
  10. data/lib/paypal_server_sdk/controllers/payments_controller.rb +110 -103
  11. data/lib/paypal_server_sdk/controllers/subscriptions_controller.rb +843 -0
  12. data/lib/paypal_server_sdk/controllers/transaction_search_controller.rb +178 -0
  13. data/lib/paypal_server_sdk/controllers/vault_controller.rb +95 -95
  14. data/lib/paypal_server_sdk/exceptions/api_exception.rb +2 -2
  15. data/lib/paypal_server_sdk/exceptions/default_error_exception.rb +95 -0
  16. data/lib/paypal_server_sdk/exceptions/error_exception.rb +2 -2
  17. data/lib/paypal_server_sdk/exceptions/o_auth_provider_exception.rb +2 -2
  18. data/lib/paypal_server_sdk/exceptions/search_error_exception.rb +107 -0
  19. data/lib/paypal_server_sdk/exceptions/subscription_error_exception.rb +95 -0
  20. data/lib/paypal_server_sdk/http/api_response.rb +6 -8
  21. data/lib/paypal_server_sdk/http/auth/o_auth2.rb +18 -3
  22. data/lib/paypal_server_sdk/http/http_call_back.rb +2 -2
  23. data/lib/paypal_server_sdk/http/http_method_enum.rb +2 -2
  24. data/lib/paypal_server_sdk/http/http_request.rb +2 -2
  25. data/lib/paypal_server_sdk/http/http_response.rb +2 -2
  26. data/lib/paypal_server_sdk/http/proxy_settings.rb +22 -0
  27. data/lib/paypal_server_sdk/logging/configuration/api_logging_configuration.rb +183 -111
  28. data/lib/paypal_server_sdk/logging/sdk_logger.rb +2 -2
  29. data/lib/paypal_server_sdk/models/activate_subscription_request.rb +63 -0
  30. data/lib/paypal_server_sdk/models/activity_timestamps.rb +2 -2
  31. data/lib/paypal_server_sdk/models/address.rb +2 -2
  32. data/lib/paypal_server_sdk/models/amount_breakdown.rb +4 -4
  33. data/lib/paypal_server_sdk/models/amount_with_breakdown.rb +2 -2
  34. data/lib/paypal_server_sdk/models/app_switch_context.rb +74 -0
  35. data/lib/paypal_server_sdk/models/apple_pay_attributes.rb +2 -2
  36. data/lib/paypal_server_sdk/models/apple_pay_attributes_response.rb +2 -2
  37. data/lib/paypal_server_sdk/models/apple_pay_card.rb +2 -2
  38. data/lib/paypal_server_sdk/models/apple_pay_card_response.rb +2 -2
  39. data/lib/paypal_server_sdk/models/apple_pay_decrypted_token_data.rb +2 -2
  40. data/lib/paypal_server_sdk/models/apple_pay_experience_context.rb +2 -2
  41. data/lib/paypal_server_sdk/models/apple_pay_payment_data.rb +2 -2
  42. data/lib/paypal_server_sdk/models/apple_pay_payment_data_type.rb +15 -2
  43. data/lib/paypal_server_sdk/models/apple_pay_payment_object.rb +2 -2
  44. data/lib/paypal_server_sdk/models/apple_pay_payment_token.rb +2 -2
  45. data/lib/paypal_server_sdk/models/apple_pay_request.rb +2 -2
  46. data/lib/paypal_server_sdk/models/apple_pay_request_card.rb +88 -0
  47. data/lib/paypal_server_sdk/models/apple_pay_tokenized_card.rb +3 -4
  48. data/lib/paypal_server_sdk/models/application_context_user_action.rb +42 -0
  49. data/lib/paypal_server_sdk/models/assurance_details.rb +2 -2
  50. data/lib/paypal_server_sdk/models/auction_information.rb +100 -0
  51. data/lib/paypal_server_sdk/models/authentication_response.rb +2 -2
  52. data/lib/paypal_server_sdk/models/authorization.rb +4 -4
  53. data/lib/paypal_server_sdk/models/authorization_incomplete_reason.rb +15 -2
  54. data/lib/paypal_server_sdk/models/authorization_status.rb +19 -2
  55. data/lib/paypal_server_sdk/models/authorization_status_details.rb +2 -2
  56. data/lib/paypal_server_sdk/models/authorization_status_with_details.rb +2 -2
  57. data/lib/paypal_server_sdk/models/authorization_with_additional_data.rb +4 -4
  58. data/lib/paypal_server_sdk/models/avs_code.rb +37 -2
  59. data/lib/paypal_server_sdk/models/balance_information.rb +106 -0
  60. data/lib/paypal_server_sdk/models/balances_response.rb +111 -0
  61. data/lib/paypal_server_sdk/models/bancontact_payment_object.rb +2 -2
  62. data/lib/paypal_server_sdk/models/bancontact_payment_request.rb +2 -2
  63. data/lib/paypal_server_sdk/models/bank_request.rb +71 -0
  64. data/lib/paypal_server_sdk/models/base_model.rb +2 -2
  65. data/lib/paypal_server_sdk/models/billing_cycle.rb +7 -18
  66. data/lib/paypal_server_sdk/models/billing_cycle_override.rb +91 -0
  67. data/lib/paypal_server_sdk/models/billing_plan.rb +212 -0
  68. data/lib/paypal_server_sdk/models/bin_details.rb +2 -2
  69. data/lib/paypal_server_sdk/models/blik_experience_context.rb +10 -8
  70. data/lib/paypal_server_sdk/models/blik_level0_payment_object.rb +2 -2
  71. data/lib/paypal_server_sdk/models/blik_one_click_payment_object.rb +2 -2
  72. data/lib/paypal_server_sdk/models/blik_one_click_payment_request.rb +2 -2
  73. data/lib/paypal_server_sdk/models/blik_payment_object.rb +2 -2
  74. data/lib/paypal_server_sdk/models/blik_payment_request.rb +2 -2
  75. data/lib/paypal_server_sdk/models/callback_configuration.rb +2 -2
  76. data/lib/paypal_server_sdk/models/callback_events.rb +15 -2
  77. data/lib/paypal_server_sdk/models/cancel_subscription_request.rb +60 -0
  78. data/lib/paypal_server_sdk/models/capture_incomplete_reason.rb +25 -2
  79. data/lib/paypal_server_sdk/models/capture_payment_instruction.rb +2 -2
  80. data/lib/paypal_server_sdk/models/capture_request.rb +33 -32
  81. data/lib/paypal_server_sdk/models/capture_status.rb +19 -2
  82. data/lib/paypal_server_sdk/models/capture_status_details.rb +2 -2
  83. data/lib/paypal_server_sdk/models/capture_status_with_details.rb +2 -2
  84. data/lib/paypal_server_sdk/models/capture_subscription_request.rb +78 -0
  85. data/lib/paypal_server_sdk/models/capture_type.rb +26 -0
  86. data/lib/paypal_server_sdk/models/captured_payment.rb +6 -6
  87. data/lib/paypal_server_sdk/models/card_attributes.rb +2 -2
  88. data/lib/paypal_server_sdk/models/card_attributes_response.rb +2 -2
  89. data/lib/paypal_server_sdk/models/card_authentication_response.rb +2 -2
  90. data/lib/paypal_server_sdk/models/card_brand.rb +58 -2
  91. data/lib/paypal_server_sdk/models/card_customer.rb +98 -0
  92. data/lib/paypal_server_sdk/models/card_customer_information.rb +2 -2
  93. data/lib/paypal_server_sdk/models/card_experience_context.rb +2 -2
  94. data/lib/paypal_server_sdk/models/card_from_request.rb +2 -2
  95. data/lib/paypal_server_sdk/models/card_payment_token_entity.rb +2 -2
  96. data/lib/paypal_server_sdk/models/card_request.rb +2 -2
  97. data/lib/paypal_server_sdk/models/card_response.rb +2 -2
  98. data/lib/paypal_server_sdk/models/card_response_address.rb +2 -2
  99. data/lib/paypal_server_sdk/models/card_response_with_billing_address.rb +100 -0
  100. data/lib/paypal_server_sdk/models/card_stored_credential.rb +4 -4
  101. data/lib/paypal_server_sdk/models/card_supplementary_data.rb +2 -2
  102. data/lib/paypal_server_sdk/models/card_type.rb +18 -2
  103. data/lib/paypal_server_sdk/models/card_vault_response.rb +2 -2
  104. data/lib/paypal_server_sdk/models/card_verification.rb +2 -2
  105. data/lib/paypal_server_sdk/models/card_verification_details.rb +8 -8
  106. data/lib/paypal_server_sdk/models/card_verification_processor_response.rb +2 -2
  107. data/lib/paypal_server_sdk/models/card_verification_status.rb +15 -2
  108. data/lib/paypal_server_sdk/models/cart_information.rb +94 -0
  109. data/lib/paypal_server_sdk/models/checkout_option.rb +77 -0
  110. data/lib/paypal_server_sdk/models/checkout_payment_intent.rb +15 -2
  111. data/lib/paypal_server_sdk/models/cobranded_card.rb +2 -2
  112. data/lib/paypal_server_sdk/models/confirm_order_request.rb +2 -2
  113. data/lib/paypal_server_sdk/models/create_subscription_request.rb +151 -0
  114. data/lib/paypal_server_sdk/models/customer.rb +2 -2
  115. data/lib/paypal_server_sdk/models/customer_information.rb +2 -2
  116. data/lib/paypal_server_sdk/models/customer_response.rb +2 -2
  117. data/lib/paypal_server_sdk/models/customer_vault_payment_tokens_response.rb +2 -2
  118. data/lib/paypal_server_sdk/models/cvv_code.rb +27 -2
  119. data/lib/paypal_server_sdk/models/cycle_execution.rb +124 -0
  120. data/lib/paypal_server_sdk/models/disbursement_mode.rb +15 -2
  121. data/lib/paypal_server_sdk/models/dispute_category.rb +15 -2
  122. data/lib/paypal_server_sdk/models/eci_flag.rb +19 -2
  123. data/lib/paypal_server_sdk/models/enrollment_status.rb +17 -2
  124. data/lib/paypal_server_sdk/models/eps_payment_object.rb +2 -2
  125. data/lib/paypal_server_sdk/models/eps_payment_request.rb +2 -2
  126. data/lib/paypal_server_sdk/models/error_details.rb +2 -2
  127. data/lib/paypal_server_sdk/models/exchange_rate.rb +2 -2
  128. data/lib/paypal_server_sdk/models/experience_context.rb +9 -7
  129. data/lib/paypal_server_sdk/models/experience_context_shipping_preference.rb +46 -0
  130. data/lib/paypal_server_sdk/models/experience_status.rb +48 -0
  131. data/lib/paypal_server_sdk/models/failed_payment_details.rb +98 -0
  132. data/lib/paypal_server_sdk/models/frequency.rb +75 -0
  133. data/lib/paypal_server_sdk/models/fulfillment_type.rb +17 -2
  134. data/lib/paypal_server_sdk/models/giropay_payment_object.rb +2 -2
  135. data/lib/paypal_server_sdk/models/giropay_payment_request.rb +2 -2
  136. data/lib/paypal_server_sdk/models/google_pay_authentication_method.rb +15 -2
  137. data/lib/paypal_server_sdk/models/google_pay_card.rb +2 -2
  138. data/lib/paypal_server_sdk/models/google_pay_card_response.rb +2 -2
  139. data/lib/paypal_server_sdk/models/google_pay_decrypted_token_data.rb +2 -2
  140. data/lib/paypal_server_sdk/models/google_pay_experience_context.rb +2 -2
  141. data/lib/paypal_server_sdk/models/google_pay_payment_method.rb +8 -2
  142. data/lib/paypal_server_sdk/models/google_pay_request.rb +2 -2
  143. data/lib/paypal_server_sdk/models/google_pay_request_card.rb +2 -2
  144. data/lib/paypal_server_sdk/models/google_pay_wallet_response.rb +2 -2
  145. data/lib/paypal_server_sdk/models/ideal_payment_object.rb +2 -2
  146. data/lib/paypal_server_sdk/models/ideal_payment_request.rb +2 -2
  147. data/lib/paypal_server_sdk/models/incentive_details.rb +99 -0
  148. data/lib/paypal_server_sdk/models/incentive_information.rb +71 -0
  149. data/lib/paypal_server_sdk/models/interval_unit.rb +44 -0
  150. data/lib/paypal_server_sdk/models/item.rb +2 -2
  151. data/lib/paypal_server_sdk/models/item_category.rb +16 -2
  152. data/lib/paypal_server_sdk/models/item_details.rb +287 -0
  153. data/lib/paypal_server_sdk/models/item_request.rb +163 -0
  154. data/lib/paypal_server_sdk/models/last_payment_details.rb +75 -0
  155. data/lib/paypal_server_sdk/models/level2_card_processing_data.rb +2 -2
  156. data/lib/paypal_server_sdk/models/level3_card_processing_data.rb +2 -2
  157. data/lib/paypal_server_sdk/models/liability_shift_indicator.rb +16 -2
  158. data/lib/paypal_server_sdk/models/line_item.rb +2 -2
  159. data/lib/paypal_server_sdk/models/link_description.rb +2 -2
  160. data/lib/paypal_server_sdk/models/link_http_method.rb +29 -10
  161. data/lib/paypal_server_sdk/models/merchant_preferences.rb +73 -0
  162. data/lib/paypal_server_sdk/models/mobile_return_flow.rb +41 -0
  163. data/lib/paypal_server_sdk/models/mobile_web_context.rb +76 -0
  164. data/lib/paypal_server_sdk/models/modify_subscription_request.rb +124 -0
  165. data/lib/paypal_server_sdk/models/modify_subscription_response.rb +141 -0
  166. data/lib/paypal_server_sdk/models/money.rb +2 -2
  167. data/lib/paypal_server_sdk/models/mybank_payment_object.rb +2 -2
  168. data/lib/paypal_server_sdk/models/mybank_payment_request.rb +2 -2
  169. data/lib/paypal_server_sdk/models/name.rb +2 -2
  170. data/lib/paypal_server_sdk/models/native_app_context.rb +72 -0
  171. data/lib/paypal_server_sdk/models/net_amount_breakdown_item.rb +2 -2
  172. data/lib/paypal_server_sdk/models/network_token.rb +2 -2
  173. data/lib/paypal_server_sdk/models/{network_transaction_reference.rb → network_transaction.rb} +14 -11
  174. data/lib/paypal_server_sdk/models/network_transaction_reference_entity.rb +2 -2
  175. data/lib/paypal_server_sdk/models/o_auth_provider_error.rb +19 -2
  176. data/lib/paypal_server_sdk/models/o_auth_token.rb +2 -2
  177. data/lib/paypal_server_sdk/models/one_time_charge.rb +2 -2
  178. data/lib/paypal_server_sdk/models/order.rb +7 -4
  179. data/lib/paypal_server_sdk/models/order_application_context.rb +26 -15
  180. data/lib/paypal_server_sdk/models/order_application_context_landing_page.rb +16 -2
  181. data/lib/paypal_server_sdk/models/order_application_context_shipping_preference.rb +17 -5
  182. data/lib/paypal_server_sdk/models/order_application_context_user_action.rb +15 -2
  183. data/lib/paypal_server_sdk/models/order_authorize_request.rb +2 -2
  184. data/lib/paypal_server_sdk/models/order_authorize_request_payment_source.rb +2 -2
  185. data/lib/paypal_server_sdk/models/order_authorize_response.rb +16 -9
  186. data/lib/paypal_server_sdk/models/order_authorize_response_payment_source.rb +2 -2
  187. data/lib/paypal_server_sdk/models/order_billing_plan.rb +2 -2
  188. data/lib/paypal_server_sdk/models/order_capture_request.rb +2 -2
  189. data/lib/paypal_server_sdk/models/order_capture_request_payment_source.rb +2 -2
  190. data/lib/paypal_server_sdk/models/order_confirm_application_context.rb +2 -2
  191. data/lib/paypal_server_sdk/models/order_request.rb +7 -4
  192. data/lib/paypal_server_sdk/models/order_status.rb +19 -2
  193. data/lib/paypal_server_sdk/models/order_tracker_item.rb +2 -2
  194. data/lib/paypal_server_sdk/models/order_tracker_request.rb +2 -2
  195. data/lib/paypal_server_sdk/models/order_tracker_response.rb +2 -2
  196. data/lib/paypal_server_sdk/models/order_tracker_status.rb +15 -2
  197. data/lib/paypal_server_sdk/models/orders_capture.rb +4 -4
  198. data/lib/paypal_server_sdk/models/orders_card_verification_method.rb +17 -2
  199. data/lib/paypal_server_sdk/models/os_type.rb +40 -0
  200. data/lib/paypal_server_sdk/models/p24_payment_object.rb +2 -2
  201. data/lib/paypal_server_sdk/models/p24_payment_request.rb +2 -2
  202. data/lib/paypal_server_sdk/models/pa_res_status.rb +21 -2
  203. data/lib/paypal_server_sdk/models/participant_metadata.rb +2 -2
  204. data/lib/paypal_server_sdk/models/patch.rb +2 -2
  205. data/lib/paypal_server_sdk/models/patch_op.rb +19 -2
  206. data/lib/paypal_server_sdk/models/payee_base.rb +2 -2
  207. data/lib/paypal_server_sdk/models/payee_payment_method_preference.rb +15 -2
  208. data/lib/paypal_server_sdk/models/payer.rb +4 -3
  209. data/lib/paypal_server_sdk/models/payer_base.rb +2 -2
  210. data/lib/paypal_server_sdk/models/payer_information.rb +146 -0
  211. data/lib/paypal_server_sdk/models/payer_name.rb +128 -0
  212. data/lib/paypal_server_sdk/models/payment_advice_code.rb +28 -2
  213. data/lib/paypal_server_sdk/models/payment_authorization.rb +4 -4
  214. data/lib/paypal_server_sdk/models/payment_collection.rb +2 -2
  215. data/lib/paypal_server_sdk/models/payment_initiator.rb +15 -2
  216. data/lib/paypal_server_sdk/models/payment_instruction.rb +2 -2
  217. data/lib/paypal_server_sdk/models/payment_method.rb +63 -0
  218. data/lib/paypal_server_sdk/models/payment_method_preference.rb +2 -2
  219. data/lib/paypal_server_sdk/models/payment_preferences.rb +105 -0
  220. data/lib/paypal_server_sdk/models/payment_preferences_override.rb +107 -0
  221. data/lib/paypal_server_sdk/models/payment_source.rb +2 -2
  222. data/lib/paypal_server_sdk/models/payment_source_response.rb +2 -2
  223. data/lib/paypal_server_sdk/models/payment_supplementary_data.rb +2 -2
  224. data/lib/paypal_server_sdk/models/payment_token_request.rb +2 -2
  225. data/lib/paypal_server_sdk/models/payment_token_request_card.rb +2 -2
  226. data/lib/paypal_server_sdk/models/payment_token_request_payment_source.rb +2 -2
  227. data/lib/paypal_server_sdk/models/payment_token_response.rb +5 -3
  228. data/lib/paypal_server_sdk/models/payment_token_response_payment_source.rb +4 -4
  229. data/lib/paypal_server_sdk/models/payment_token_status.rb +20 -4
  230. data/lib/paypal_server_sdk/models/payments_capture.rb +6 -6
  231. data/lib/paypal_server_sdk/models/paypal_experience_landing_page.rb +25 -3
  232. data/lib/paypal_server_sdk/models/paypal_experience_user_action.rb +15 -2
  233. data/lib/paypal_server_sdk/models/paypal_payment_token.rb +8 -7
  234. data/lib/paypal_server_sdk/models/paypal_payment_token_customer_type.rb +15 -2
  235. data/lib/paypal_server_sdk/models/paypal_payment_token_usage_type.rb +15 -2
  236. data/lib/paypal_server_sdk/models/paypal_reference_id_type.rb +44 -0
  237. data/lib/paypal_server_sdk/models/paypal_wallet.rb +2 -2
  238. data/lib/paypal_server_sdk/models/paypal_wallet_account_verification_status.rb +15 -2
  239. data/lib/paypal_server_sdk/models/paypal_wallet_attributes.rb +4 -3
  240. data/lib/paypal_server_sdk/models/paypal_wallet_attributes_response.rb +2 -2
  241. data/lib/paypal_server_sdk/models/paypal_wallet_contact_preference.rb +16 -2
  242. data/lib/paypal_server_sdk/models/paypal_wallet_context_shipping_preference.rb +16 -2
  243. data/lib/paypal_server_sdk/models/paypal_wallet_customer.rb +2 -2
  244. data/lib/paypal_server_sdk/models/paypal_wallet_customer_request.rb +2 -2
  245. data/lib/paypal_server_sdk/models/paypal_wallet_experience_context.rb +22 -9
  246. data/lib/paypal_server_sdk/models/paypal_wallet_response.rb +21 -6
  247. data/lib/paypal_server_sdk/models/paypal_wallet_stored_credential.rb +4 -3
  248. data/lib/paypal_server_sdk/models/paypal_wallet_vault_instruction.rb +12 -22
  249. data/lib/paypal_server_sdk/models/paypal_wallet_vault_response.rb +2 -2
  250. data/lib/paypal_server_sdk/models/paypal_wallet_vault_status.rb +16 -2
  251. data/lib/paypal_server_sdk/models/phone.rb +2 -2
  252. data/lib/paypal_server_sdk/models/phone_number.rb +4 -2
  253. data/lib/paypal_server_sdk/models/phone_number_with_country_code.rb +4 -2
  254. data/lib/paypal_server_sdk/models/phone_number_with_optional_country_code.rb +81 -0
  255. data/lib/paypal_server_sdk/models/phone_type.rb +23 -7
  256. data/lib/paypal_server_sdk/models/phone_with_type.rb +2 -2
  257. data/lib/paypal_server_sdk/models/plan.rb +7 -17
  258. data/lib/paypal_server_sdk/models/plan_collection.rb +111 -0
  259. data/lib/paypal_server_sdk/models/plan_details.rb +147 -0
  260. data/lib/paypal_server_sdk/models/plan_override.rb +96 -0
  261. data/lib/paypal_server_sdk/models/plan_request.rb +154 -0
  262. data/lib/paypal_server_sdk/models/plan_request_status.rb +42 -0
  263. data/lib/paypal_server_sdk/models/platform_fee.rb +2 -2
  264. data/lib/paypal_server_sdk/models/pricing_model.rb +16 -2
  265. data/lib/paypal_server_sdk/models/pricing_scheme.rb +2 -2
  266. data/lib/paypal_server_sdk/models/pricing_tier.rb +83 -0
  267. data/lib/paypal_server_sdk/models/processor_response.rb +2 -2
  268. data/lib/paypal_server_sdk/models/processor_response_code.rb +167 -2
  269. data/lib/paypal_server_sdk/models/purchase_unit.rb +2 -2
  270. data/lib/paypal_server_sdk/models/purchase_unit_request.rb +24 -14
  271. data/lib/paypal_server_sdk/models/reason_code.rb +60 -0
  272. data/lib/paypal_server_sdk/models/reauthorize_request.rb +2 -3
  273. data/lib/paypal_server_sdk/models/refund.rb +2 -2
  274. data/lib/paypal_server_sdk/models/refund_incomplete_reason.rb +8 -2
  275. data/lib/paypal_server_sdk/models/refund_payment_instruction.rb +2 -2
  276. data/lib/paypal_server_sdk/models/refund_platform_fee.rb +2 -2
  277. data/lib/paypal_server_sdk/models/refund_request.rb +2 -2
  278. data/lib/paypal_server_sdk/models/refund_status.rb +17 -2
  279. data/lib/paypal_server_sdk/models/refund_status_details.rb +2 -2
  280. data/lib/paypal_server_sdk/models/refund_status_with_details.rb +2 -2
  281. data/lib/paypal_server_sdk/models/related_identifiers.rb +2 -2
  282. data/lib/paypal_server_sdk/models/return_flow.rb +41 -0
  283. data/lib/paypal_server_sdk/models/risk_supplementary_data.rb +2 -2
  284. data/lib/paypal_server_sdk/models/search_response.rb +176 -0
  285. data/lib/paypal_server_sdk/models/seller_payable_breakdown.rb +2 -2
  286. data/lib/paypal_server_sdk/models/seller_protection.rb +2 -2
  287. data/lib/paypal_server_sdk/models/seller_protection_status.rb +16 -2
  288. data/lib/paypal_server_sdk/models/seller_receivable_breakdown.rb +2 -2
  289. data/lib/paypal_server_sdk/models/sepa_debit_experience_context.rb +88 -0
  290. data/lib/paypal_server_sdk/models/sepa_debit_request.rb +64 -0
  291. data/lib/paypal_server_sdk/models/setup_fee_failure_action.rb +37 -0
  292. data/lib/paypal_server_sdk/models/setup_token_request.rb +2 -2
  293. data/lib/paypal_server_sdk/models/setup_token_request_card.rb +5 -5
  294. data/lib/paypal_server_sdk/models/setup_token_request_payment_source.rb +28 -7
  295. data/lib/paypal_server_sdk/models/setup_token_response.rb +5 -3
  296. data/lib/paypal_server_sdk/models/setup_token_response_card.rb +2 -2
  297. data/lib/paypal_server_sdk/models/setup_token_response_payment_source.rb +4 -4
  298. data/lib/paypal_server_sdk/models/shipment_carrier.rb +1538 -3
  299. data/lib/paypal_server_sdk/models/shipping_details.rb +2 -2
  300. data/lib/paypal_server_sdk/models/shipping_information.rb +101 -0
  301. data/lib/paypal_server_sdk/models/shipping_name.rb +2 -2
  302. data/lib/paypal_server_sdk/models/shipping_option.rb +2 -2
  303. data/lib/paypal_server_sdk/models/shipping_type.rb +17 -2
  304. data/lib/paypal_server_sdk/models/shipping_with_tracking_details.rb +33 -33
  305. data/lib/paypal_server_sdk/models/simple_postal_address_coarse_grained.rb +130 -0
  306. data/lib/paypal_server_sdk/models/sofort_payment_object.rb +2 -2
  307. data/lib/paypal_server_sdk/models/sofort_payment_request.rb +2 -2
  308. data/lib/paypal_server_sdk/models/standard_entry_class_code.rb +17 -2
  309. data/lib/paypal_server_sdk/models/store_in_vault_instruction.rb +8 -2
  310. data/lib/paypal_server_sdk/models/store_information.rb +71 -0
  311. data/lib/paypal_server_sdk/models/stored_payment_source.rb +4 -4
  312. data/lib/paypal_server_sdk/models/stored_payment_source_payment_type.rb +16 -2
  313. data/lib/paypal_server_sdk/models/stored_payment_source_usage_type.rb +16 -2
  314. data/lib/paypal_server_sdk/models/subscriber.rb +84 -0
  315. data/lib/paypal_server_sdk/models/subscriber_request.rb +97 -0
  316. data/lib/paypal_server_sdk/models/subscription.rb +205 -0
  317. data/lib/paypal_server_sdk/models/subscription_amount_with_breakdown.rb +119 -0
  318. data/lib/paypal_server_sdk/models/subscription_application_context.rb +134 -0
  319. data/lib/paypal_server_sdk/models/subscription_billing_cycle.rb +108 -0
  320. data/lib/paypal_server_sdk/models/subscription_billing_information.rb +148 -0
  321. data/lib/paypal_server_sdk/models/subscription_card_request.rb +141 -0
  322. data/lib/paypal_server_sdk/models/subscription_collection.rb +90 -0
  323. data/lib/paypal_server_sdk/models/subscription_customer_information.rb +84 -0
  324. data/lib/paypal_server_sdk/models/subscription_patch_application_context.rb +122 -0
  325. data/lib/paypal_server_sdk/models/subscription_payer_name.rb +114 -0
  326. data/lib/paypal_server_sdk/models/subscription_payment_source.rb +65 -0
  327. data/lib/paypal_server_sdk/models/subscription_payment_source_response.rb +63 -0
  328. data/lib/paypal_server_sdk/models/subscription_plan_status.rb +42 -0
  329. data/lib/paypal_server_sdk/models/subscription_pricing_model.rb +36 -0
  330. data/lib/paypal_server_sdk/models/subscription_pricing_scheme.rb +129 -0
  331. data/lib/paypal_server_sdk/models/subscription_transaction_details.rb +118 -0
  332. data/lib/paypal_server_sdk/models/subscriptions_card_attributes.rb +83 -0
  333. data/lib/paypal_server_sdk/models/subscriptions_card_brand.rb +133 -0
  334. data/lib/paypal_server_sdk/models/supplementary_data.rb +2 -2
  335. data/lib/paypal_server_sdk/models/suspend_subscription.rb +60 -0
  336. data/lib/paypal_server_sdk/models/tax_amount.rb +63 -0
  337. data/lib/paypal_server_sdk/models/tax_id_type.rb +15 -2
  338. data/lib/paypal_server_sdk/models/tax_info.rb +2 -2
  339. data/lib/paypal_server_sdk/models/taxes.rb +71 -0
  340. data/lib/paypal_server_sdk/models/taxes_override.rb +72 -0
  341. data/lib/paypal_server_sdk/models/tenure_type.rb +18 -3
  342. data/lib/paypal_server_sdk/models/three_d_secure_authentication_response.rb +2 -2
  343. data/lib/paypal_server_sdk/models/three_d_secure_card_authentication_response.rb +2 -2
  344. data/lib/paypal_server_sdk/models/token.rb +2 -2
  345. data/lib/paypal_server_sdk/models/token_type.rb +8 -2
  346. data/lib/paypal_server_sdk/models/transaction_details.rb +126 -0
  347. data/lib/paypal_server_sdk/models/transaction_information.rb +494 -0
  348. data/lib/paypal_server_sdk/models/{order_update_callback_error_response_details.rb → transaction_search_error_details.rb} +32 -10
  349. data/lib/paypal_server_sdk/models/transactions_list.rb +111 -0
  350. data/lib/paypal_server_sdk/models/trustly_payment_object.rb +2 -2
  351. data/lib/paypal_server_sdk/models/trustly_payment_request.rb +2 -2
  352. data/lib/paypal_server_sdk/models/universal_product_code.rb +2 -2
  353. data/lib/paypal_server_sdk/models/upc_type.rb +20 -2
  354. data/lib/paypal_server_sdk/models/update_pricing_scheme.rb +72 -0
  355. data/lib/paypal_server_sdk/models/update_pricing_schemes_request.rb +69 -0
  356. data/lib/paypal_server_sdk/models/usage_pattern.rb +25 -2
  357. data/lib/paypal_server_sdk/models/vault_apple_pay_request.rb +73 -0
  358. data/lib/paypal_server_sdk/models/{setup_token_card_experience_context.rb → vault_card_experience_context.rb} +27 -18
  359. data/lib/paypal_server_sdk/models/vault_card_verification_method.rb +15 -2
  360. data/lib/paypal_server_sdk/models/vault_customer.rb +2 -2
  361. data/lib/paypal_server_sdk/models/vault_experience_context.rb +35 -12
  362. data/lib/paypal_server_sdk/models/vault_instruction.rb +2 -2
  363. data/lib/paypal_server_sdk/models/vault_instruction_action.rb +15 -2
  364. data/lib/paypal_server_sdk/models/vault_instruction_base.rb +2 -2
  365. data/lib/paypal_server_sdk/models/vault_paypal_wallet_request.rb +3 -3
  366. data/lib/paypal_server_sdk/models/vault_response.rb +2 -2
  367. data/lib/paypal_server_sdk/models/vault_response_customer.rb +2 -2
  368. data/lib/paypal_server_sdk/models/vault_status.rb +16 -2
  369. data/lib/paypal_server_sdk/models/vault_token_request.rb +2 -2
  370. data/lib/paypal_server_sdk/models/vault_token_request_type.rb +8 -2
  371. data/lib/paypal_server_sdk/models/vault_user_action.rb +42 -0
  372. data/lib/paypal_server_sdk/models/vault_venmo_request.rb +6 -6
  373. data/lib/paypal_server_sdk/models/vaulted_digital_wallet.rb +2 -2
  374. data/lib/paypal_server_sdk/models/vaulted_digital_wallet_shipping_details.rb +21 -7
  375. data/lib/paypal_server_sdk/models/{vault_venmo_experience_context.rb → venmo_experience_context.rb} +26 -16
  376. data/lib/paypal_server_sdk/models/venmo_payment_token.rb +8 -7
  377. data/lib/paypal_server_sdk/models/venmo_payment_token_customer_type.rb +15 -2
  378. data/lib/paypal_server_sdk/models/venmo_payment_token_usage_pattern.rb +19 -2
  379. data/lib/paypal_server_sdk/models/venmo_payment_token_usage_type.rb +15 -2
  380. data/lib/paypal_server_sdk/models/venmo_vault_response.rb +100 -0
  381. data/lib/paypal_server_sdk/models/venmo_vault_response_status.rb +45 -0
  382. data/lib/paypal_server_sdk/models/venmo_wallet_additional_attributes.rb +2 -2
  383. data/lib/paypal_server_sdk/models/venmo_wallet_attributes_response.rb +5 -5
  384. data/lib/paypal_server_sdk/models/venmo_wallet_customer_information.rb +2 -2
  385. data/lib/paypal_server_sdk/models/venmo_wallet_experience_context.rb +24 -10
  386. data/lib/paypal_server_sdk/models/{shipping_preference.rb → venmo_wallet_experience_context_shipping_preference.rb} +18 -4
  387. data/lib/paypal_server_sdk/models/venmo_wallet_experience_context_user_action.rb +42 -0
  388. data/lib/paypal_server_sdk/models/venmo_wallet_request.rb +2 -2
  389. data/lib/paypal_server_sdk/models/venmo_wallet_response.rb +16 -6
  390. data/lib/paypal_server_sdk/models/venmo_wallet_vault_attributes.rb +2 -2
  391. data/lib/paypal_server_sdk/utilities/date_time_helper.rb +2 -2
  392. data/lib/paypal_server_sdk/utilities/file_wrapper.rb +2 -2
  393. data/lib/paypal_server_sdk.rb +252 -160
  394. metadata +112 -22
  395. data/lib/paypal_server_sdk/models/order_update_callback_error_response.rb +0 -89
  396. data/lib/paypal_server_sdk/models/order_update_callback_request.rb +0 -111
  397. data/lib/paypal_server_sdk/models/order_update_callback_response.rb +0 -72
  398. data/lib/paypal_server_sdk/models/order_update_callback_shipping_address.rb +0 -107
  399. data/lib/paypal_server_sdk/models/order_update_callback_shipping_option.rb +0 -93
  400. data/lib/paypal_server_sdk/models/payments_payment_advice_code.rb +0 -42
  401. data/lib/paypal_server_sdk/models/payments_processor_response.rb +0 -98
  402. data/lib/paypal_server_sdk/models/shipping_options_purchase_unit.rb +0 -121
  403. data/lib/paypal_server_sdk/models/supplementary_purchase_data.rb +0 -76
@@ -0,0 +1,133 @@
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 card network or brand. Applies to credit, debit, gift, and payment
8
+ # cards.
9
+ class SubscriptionsCardBrand
10
+ SUBSCRIPTIONS_CARD_BRAND = [
11
+ # Visa card.
12
+ VISA = 'VISA'.freeze,
13
+
14
+ # Mastercard card.
15
+ MASTERCARD = 'MASTERCARD'.freeze,
16
+
17
+ # Discover card.
18
+ DISCOVER = 'DISCOVER'.freeze,
19
+
20
+ # American Express card.
21
+ AMEX = 'AMEX'.freeze,
22
+
23
+ # Solo debit card.
24
+ SOLO = 'SOLO'.freeze,
25
+
26
+ # Japan Credit Bureau card.
27
+ JCB = 'JCB'.freeze,
28
+
29
+ # Military Star card.
30
+ STAR = 'STAR'.freeze,
31
+
32
+ # Delta Airlines card.
33
+ DELTA = 'DELTA'.freeze,
34
+
35
+ # Switch credit card.
36
+ SWITCH = 'SWITCH'.freeze,
37
+
38
+ # Maestro credit card.
39
+ MAESTRO = 'MAESTRO'.freeze,
40
+
41
+ # Carte Bancaire (CB) credit card.
42
+ CB_NATIONALE = 'CB_NATIONALE'.freeze,
43
+
44
+ # Configoga credit card.
45
+ CONFIGOGA = 'CONFIGOGA'.freeze,
46
+
47
+ # Confidis credit card.
48
+ CONFIDIS = 'CONFIDIS'.freeze,
49
+
50
+ # Visa Electron credit card.
51
+ ELECTRON = 'ELECTRON'.freeze,
52
+
53
+ # Cetelem credit card.
54
+ CETELEM = 'CETELEM'.freeze,
55
+
56
+ # China union pay credit card.
57
+ CHINA_UNION_PAY = 'CHINA_UNION_PAY'.freeze,
58
+
59
+ # The Diners Club International banking and payment services capability
60
+ # network owned by Discover Financial Services (DFS), one of the most
61
+ # recognized brands in US financial services.
62
+ DINERS = 'DINERS'.freeze,
63
+
64
+ # The Brazilian Elo card payment network.
65
+ ELO = 'ELO'.freeze,
66
+
67
+ # The Hiper - Ingenico ePayment network.
68
+ HIPER = 'HIPER'.freeze,
69
+
70
+ # The Brazilian Hipercard payment network that's widely accepted in the
71
+ # retail market.
72
+ HIPERCARD = 'HIPERCARD'.freeze,
73
+
74
+ # The RuPay payment network.
75
+ RUPAY = 'RUPAY'.freeze,
76
+
77
+ # The GE Credit Union 3Point card payment network.
78
+ GE = 'GE'.freeze,
79
+
80
+ # The Synchrony Financial (SYF) payment network.
81
+ SYNCHRONY = 'SYNCHRONY'.freeze,
82
+
83
+ # The Electronic Fund Transfer At Point of Sale(EFTPOS) Debit card payment
84
+ # network.
85
+ EFTPOS = 'EFTPOS'.freeze,
86
+
87
+ # UNKNOWN payment network.
88
+ UNKNOWN = 'UNKNOWN'.freeze
89
+ ].freeze
90
+
91
+ def self.validate(value)
92
+ return false if value.nil?
93
+
94
+ true
95
+ end
96
+
97
+ def self.from_value(value, default_value = VISA)
98
+ return default_value if value.nil?
99
+
100
+ str = value.to_s.strip
101
+
102
+ case str.downcase
103
+ when 'visa' then VISA
104
+ when 'mastercard' then MASTERCARD
105
+ when 'discover' then DISCOVER
106
+ when 'amex' then AMEX
107
+ when 'solo' then SOLO
108
+ when 'jcb' then JCB
109
+ when 'star' then STAR
110
+ when 'delta' then DELTA
111
+ when 'switch' then SWITCH
112
+ when 'maestro' then MAESTRO
113
+ when 'cb_nationale' then CB_NATIONALE
114
+ when 'configoga' then CONFIGOGA
115
+ when 'confidis' then CONFIDIS
116
+ when 'electron' then ELECTRON
117
+ when 'cetelem' then CETELEM
118
+ when 'china_union_pay' then CHINA_UNION_PAY
119
+ when 'diners' then DINERS
120
+ when 'elo' then ELO
121
+ when 'hiper' then HIPER
122
+ when 'hipercard' then HIPERCARD
123
+ when 'rupay' then RUPAY
124
+ when 'ge' then GE
125
+ when 'synchrony' then SYNCHRONY
126
+ when 'eftpos' then EFTPOS
127
+ when 'unknown' then UNKNOWN
128
+ else
129
+ default_value
130
+ end
131
+ end
132
+ end
133
+ 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
  # Supplementary data about a payment. This object passes information that can
@@ -0,0 +1,60 @@
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 suspend subscription request details.
8
+ class SuspendSubscription < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # The reason for suspension of the Subscription.
13
+ # @return [String]
14
+ attr_accessor :reason
15
+
16
+ # A mapping from model property names to API property names.
17
+ def self.names
18
+ @_hash = {} if @_hash.nil?
19
+ @_hash['reason'] = 'reason'
20
+ @_hash
21
+ end
22
+
23
+ # An array for optional fields
24
+ def self.optionals
25
+ []
26
+ end
27
+
28
+ # An array for nullable fields
29
+ def self.nullables
30
+ []
31
+ end
32
+
33
+ def initialize(reason:)
34
+ @reason = reason
35
+ end
36
+
37
+ # Creates an instance of the object from a hash.
38
+ def self.from_hash(hash)
39
+ return nil unless hash
40
+
41
+ # Extract variables from the hash.
42
+ reason = hash.key?('reason') ? hash['reason'] : nil
43
+
44
+ # Create object from extracted values.
45
+ SuspendSubscription.new(reason: reason)
46
+ end
47
+
48
+ # Provides a human-readable string representation of the object.
49
+ def to_s
50
+ class_name = self.class.name.split('::').last
51
+ "<#{class_name} reason: #{@reason}>"
52
+ end
53
+
54
+ # Provides a debugging-friendly string with detailed object information.
55
+ def inspect
56
+ class_name = self.class.name.split('::').last
57
+ "<#{class_name} reason: #{@reason.inspect}>"
58
+ end
59
+ end
60
+ end
@@ -0,0 +1,63 @@
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 tax levied by a government on the purchase of goods or services.
8
+ class TaxAmount < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # The currency and amount for a financial transaction, such as a balance or
13
+ # payment due.
14
+ # @return [Money]
15
+ attr_accessor :tax_amount
16
+
17
+ # A mapping from model property names to API property names.
18
+ def self.names
19
+ @_hash = {} if @_hash.nil?
20
+ @_hash['tax_amount'] = 'tax_amount'
21
+ @_hash
22
+ end
23
+
24
+ # An array for optional fields
25
+ def self.optionals
26
+ %w[
27
+ tax_amount
28
+ ]
29
+ end
30
+
31
+ # An array for nullable fields
32
+ def self.nullables
33
+ []
34
+ end
35
+
36
+ def initialize(tax_amount: SKIP)
37
+ @tax_amount = tax_amount unless tax_amount == SKIP
38
+ end
39
+
40
+ # Creates an instance of the object from a hash.
41
+ def self.from_hash(hash)
42
+ return nil unless hash
43
+
44
+ # Extract variables from the hash.
45
+ tax_amount = Money.from_hash(hash['tax_amount']) if hash['tax_amount']
46
+
47
+ # Create object from extracted values.
48
+ TaxAmount.new(tax_amount: tax_amount)
49
+ end
50
+
51
+ # Provides a human-readable string representation of the object.
52
+ def to_s
53
+ class_name = self.class.name.split('::').last
54
+ "<#{class_name} tax_amount: #{@tax_amount}>"
55
+ end
56
+
57
+ # Provides a debugging-friendly string with detailed object information.
58
+ def inspect
59
+ class_name = self.class.name.split('::').last
60
+ "<#{class_name} tax_amount: #{@tax_amount.inspect}>"
61
+ end
62
+ end
63
+ 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 customer's tax ID type.
@@ -19,5 +19,18 @@ module PaypalServerSdk
19
19
 
20
20
  true
21
21
  end
22
+
23
+ def self.from_value(value, default_value = BR_CPF)
24
+ return default_value if value.nil?
25
+
26
+ str = value.to_s.strip
27
+
28
+ case str.downcase
29
+ when 'br_cpf' then BR_CPF
30
+ when 'br_cnpj' then BR_CNPJ
31
+ else
32
+ default_value
33
+ end
34
+ end
22
35
  end
23
36
  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 tax ID of the customer. The customer is also known as the payer. Both
@@ -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 tax details.
8
+ class Taxes < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # The percentage, as a fixed-point, signed decimal number. For example,
13
+ # define a 19.99% interest rate as `19.99`.
14
+ # @return [String]
15
+ attr_accessor :percentage
16
+
17
+ # Indicates whether the tax was already included in the billing amount.
18
+ # @return [TrueClass | FalseClass]
19
+ attr_accessor :inclusive
20
+
21
+ # A mapping from model property names to API property names.
22
+ def self.names
23
+ @_hash = {} if @_hash.nil?
24
+ @_hash['percentage'] = 'percentage'
25
+ @_hash['inclusive'] = 'inclusive'
26
+ @_hash
27
+ end
28
+
29
+ # An array for optional fields
30
+ def self.optionals
31
+ %w[
32
+ inclusive
33
+ ]
34
+ end
35
+
36
+ # An array for nullable fields
37
+ def self.nullables
38
+ []
39
+ end
40
+
41
+ def initialize(percentage:, inclusive: true)
42
+ @percentage = percentage
43
+ @inclusive = inclusive unless inclusive == 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
+ percentage = hash.key?('percentage') ? hash['percentage'] : nil
52
+ inclusive = hash['inclusive'] ||= true
53
+
54
+ # Create object from extracted values.
55
+ Taxes.new(percentage: percentage,
56
+ inclusive: inclusive)
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} percentage: #{@percentage}, inclusive: #{@inclusive}>"
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} percentage: #{@percentage.inspect}, inclusive: #{@inclusive.inspect}>"
69
+ end
70
+ end
71
+ end
@@ -0,0 +1,72 @@
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 tax details.
8
+ class TaxesOverride < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # The percentage, as a fixed-point, signed decimal number. For example,
13
+ # define a 19.99% interest rate as `19.99`.
14
+ # @return [String]
15
+ attr_accessor :percentage
16
+
17
+ # Indicates whether the tax was already included in the billing amount.
18
+ # @return [TrueClass | FalseClass]
19
+ attr_accessor :inclusive
20
+
21
+ # A mapping from model property names to API property names.
22
+ def self.names
23
+ @_hash = {} if @_hash.nil?
24
+ @_hash['percentage'] = 'percentage'
25
+ @_hash['inclusive'] = 'inclusive'
26
+ @_hash
27
+ end
28
+
29
+ # An array for optional fields
30
+ def self.optionals
31
+ %w[
32
+ percentage
33
+ inclusive
34
+ ]
35
+ end
36
+
37
+ # An array for nullable fields
38
+ def self.nullables
39
+ []
40
+ end
41
+
42
+ def initialize(percentage: SKIP, inclusive: SKIP)
43
+ @percentage = percentage unless percentage == SKIP
44
+ @inclusive = inclusive unless inclusive == SKIP
45
+ end
46
+
47
+ # Creates an instance of the object from a hash.
48
+ def self.from_hash(hash)
49
+ return nil unless hash
50
+
51
+ # Extract variables from the hash.
52
+ percentage = hash.key?('percentage') ? hash['percentage'] : SKIP
53
+ inclusive = hash.key?('inclusive') ? hash['inclusive'] : SKIP
54
+
55
+ # Create object from extracted values.
56
+ TaxesOverride.new(percentage: percentage,
57
+ inclusive: inclusive)
58
+ end
59
+
60
+ # Provides a human-readable string representation of the object.
61
+ def to_s
62
+ class_name = self.class.name.split('::').last
63
+ "<#{class_name} percentage: #{@percentage}, inclusive: #{@inclusive}>"
64
+ end
65
+
66
+ # Provides a debugging-friendly string with detailed object information.
67
+ def inspect
68
+ class_name = self.class.name.split('::').last
69
+ "<#{class_name} percentage: #{@percentage.inspect}, inclusive: #{@inclusive.inspect}>"
70
+ end
71
+ end
72
+ end
@@ -1,11 +1,13 @@
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 tenure type of the billing cycle identifies if the billing cycle is a
8
- # trial(free or discounted) or regular billing cycle.
8
+ # trial(free or discounted) or regular billing cycle., The tenure type of the
9
+ # billing cycle. In case of a plan having trial cycle, only 2 trial cycles are
10
+ # allowed per plan., The type of the billing cycle.
9
11
  class TenureType
10
12
  TENURE_TYPE = [
11
13
  # A regular billing cycle to identify recurring charges for the billing
@@ -24,5 +26,18 @@ module PaypalServerSdk
24
26
 
25
27
  true
26
28
  end
29
+
30
+ def self.from_value(value, default_value = REGULAR)
31
+ return default_value if value.nil?
32
+
33
+ str = value.to_s.strip
34
+
35
+ case str.downcase
36
+ when 'regular' then REGULAR
37
+ when 'trial' then TRIAL
38
+ else
39
+ default_value
40
+ end
41
+ end
27
42
  end
28
43
  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
  # Results of 3D Secure Authentication.
@@ -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
  # Results of 3D Secure Authentication.
@@ -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 tokenized payment source to fund a payment.
@@ -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 tokenization method that generated the ID.
@@ -17,5 +17,11 @@ module PaypalServerSdk
17
17
 
18
18
  true
19
19
  end
20
+
21
+ def self.from_value(value, default_value = BILLING_AGREEMENT)
22
+ return default_value if value.nil?
23
+
24
+ default_value
25
+ end
20
26
  end
21
27
  end
@@ -0,0 +1,126 @@
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 transaction details.
8
+ class TransactionDetails < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # The transaction information.
13
+ # @return [TransactionInformation]
14
+ attr_accessor :transaction_info
15
+
16
+ # The payer information.
17
+ # @return [PayerInformation]
18
+ attr_accessor :payer_info
19
+
20
+ # The shipping information.
21
+ # @return [ShippingInformation]
22
+ attr_accessor :shipping_info
23
+
24
+ # The cart information.
25
+ # @return [CartInformation]
26
+ attr_accessor :cart_info
27
+
28
+ # The store information.
29
+ # @return [StoreInformation]
30
+ attr_accessor :store_info
31
+
32
+ # The auction information.
33
+ # @return [AuctionInformation]
34
+ attr_accessor :auction_info
35
+
36
+ # The incentive details.
37
+ # @return [IncentiveInformation]
38
+ attr_accessor :incentive_info
39
+
40
+ # A mapping from model property names to API property names.
41
+ def self.names
42
+ @_hash = {} if @_hash.nil?
43
+ @_hash['transaction_info'] = 'transaction_info'
44
+ @_hash['payer_info'] = 'payer_info'
45
+ @_hash['shipping_info'] = 'shipping_info'
46
+ @_hash['cart_info'] = 'cart_info'
47
+ @_hash['store_info'] = 'store_info'
48
+ @_hash['auction_info'] = 'auction_info'
49
+ @_hash['incentive_info'] = 'incentive_info'
50
+ @_hash
51
+ end
52
+
53
+ # An array for optional fields
54
+ def self.optionals
55
+ %w[
56
+ transaction_info
57
+ payer_info
58
+ shipping_info
59
+ cart_info
60
+ store_info
61
+ auction_info
62
+ incentive_info
63
+ ]
64
+ end
65
+
66
+ # An array for nullable fields
67
+ def self.nullables
68
+ []
69
+ end
70
+
71
+ def initialize(transaction_info: SKIP, payer_info: SKIP,
72
+ shipping_info: SKIP, cart_info: SKIP, store_info: SKIP,
73
+ auction_info: SKIP, incentive_info: SKIP)
74
+ @transaction_info = transaction_info unless transaction_info == SKIP
75
+ @payer_info = payer_info unless payer_info == SKIP
76
+ @shipping_info = shipping_info unless shipping_info == SKIP
77
+ @cart_info = cart_info unless cart_info == SKIP
78
+ @store_info = store_info unless store_info == SKIP
79
+ @auction_info = auction_info unless auction_info == SKIP
80
+ @incentive_info = incentive_info unless incentive_info == SKIP
81
+ end
82
+
83
+ # Creates an instance of the object from a hash.
84
+ def self.from_hash(hash)
85
+ return nil unless hash
86
+
87
+ # Extract variables from the hash.
88
+ transaction_info = TransactionInformation.from_hash(hash['transaction_info']) if
89
+ hash['transaction_info']
90
+ payer_info = PayerInformation.from_hash(hash['payer_info']) if hash['payer_info']
91
+ shipping_info = ShippingInformation.from_hash(hash['shipping_info']) if
92
+ hash['shipping_info']
93
+ cart_info = CartInformation.from_hash(hash['cart_info']) if hash['cart_info']
94
+ store_info = StoreInformation.from_hash(hash['store_info']) if hash['store_info']
95
+ auction_info = AuctionInformation.from_hash(hash['auction_info']) if hash['auction_info']
96
+ incentive_info = IncentiveInformation.from_hash(hash['incentive_info']) if
97
+ hash['incentive_info']
98
+
99
+ # Create object from extracted values.
100
+ TransactionDetails.new(transaction_info: transaction_info,
101
+ payer_info: payer_info,
102
+ shipping_info: shipping_info,
103
+ cart_info: cart_info,
104
+ store_info: store_info,
105
+ auction_info: auction_info,
106
+ incentive_info: incentive_info)
107
+ end
108
+
109
+ # Provides a human-readable string representation of the object.
110
+ def to_s
111
+ class_name = self.class.name.split('::').last
112
+ "<#{class_name} transaction_info: #{@transaction_info}, payer_info: #{@payer_info},"\
113
+ " shipping_info: #{@shipping_info}, cart_info: #{@cart_info}, store_info: #{@store_info},"\
114
+ " auction_info: #{@auction_info}, incentive_info: #{@incentive_info}>"
115
+ end
116
+
117
+ # Provides a debugging-friendly string with detailed object information.
118
+ def inspect
119
+ class_name = self.class.name.split('::').last
120
+ "<#{class_name} transaction_info: #{@transaction_info.inspect}, payer_info:"\
121
+ " #{@payer_info.inspect}, shipping_info: #{@shipping_info.inspect}, cart_info:"\
122
+ " #{@cart_info.inspect}, store_info: #{@store_info.inspect}, auction_info:"\
123
+ " #{@auction_info.inspect}, incentive_info: #{@incentive_info.inspect}>"
124
+ end
125
+ end
126
+ end