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,78 @@
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 charge amount from the subscriber.
8
+ class CaptureSubscriptionRequest < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # The reason or note for the subscription charge.
13
+ # @return [String]
14
+ attr_accessor :note
15
+
16
+ # The type of capture.
17
+ # @return [CaptureType]
18
+ attr_accessor :capture_type
19
+
20
+ # The currency and amount for a financial transaction, such as a balance or
21
+ # payment due.
22
+ # @return [Money]
23
+ attr_accessor :amount
24
+
25
+ # A mapping from model property names to API property names.
26
+ def self.names
27
+ @_hash = {} if @_hash.nil?
28
+ @_hash['note'] = 'note'
29
+ @_hash['capture_type'] = 'capture_type'
30
+ @_hash['amount'] = 'amount'
31
+ @_hash
32
+ end
33
+
34
+ # An array for optional fields
35
+ def self.optionals
36
+ []
37
+ end
38
+
39
+ # An array for nullable fields
40
+ def self.nullables
41
+ []
42
+ end
43
+
44
+ def initialize(note:, capture_type:, amount:)
45
+ @note = note
46
+ @capture_type = capture_type
47
+ @amount = amount
48
+ end
49
+
50
+ # Creates an instance of the object from a hash.
51
+ def self.from_hash(hash)
52
+ return nil unless hash
53
+
54
+ # Extract variables from the hash.
55
+ note = hash.key?('note') ? hash['note'] : nil
56
+ capture_type = hash.key?('capture_type') ? hash['capture_type'] : nil
57
+ amount = Money.from_hash(hash['amount']) if hash['amount']
58
+
59
+ # Create object from extracted values.
60
+ CaptureSubscriptionRequest.new(note: note,
61
+ capture_type: capture_type,
62
+ amount: amount)
63
+ end
64
+
65
+ # Provides a human-readable string representation of the object.
66
+ def to_s
67
+ class_name = self.class.name.split('::').last
68
+ "<#{class_name} note: #{@note}, capture_type: #{@capture_type}, amount: #{@amount}>"
69
+ end
70
+
71
+ # Provides a debugging-friendly string with detailed object information.
72
+ def inspect
73
+ class_name = self.class.name.split('::').last
74
+ "<#{class_name} note: #{@note.inspect}, capture_type: #{@capture_type.inspect}, amount:"\
75
+ " #{@amount.inspect}>"
76
+ end
77
+ end
78
+ end
@@ -0,0 +1,26 @@
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 type of capture.
8
+ class CaptureType
9
+ CAPTURE_TYPE = [
10
+ # The outstanding balance that the subscriber must clear.
11
+ OUTSTANDING_BALANCE = 'OUTSTANDING_BALANCE'.freeze
12
+ ].freeze
13
+
14
+ def self.validate(value)
15
+ return false if value.nil?
16
+
17
+ true
18
+ end
19
+
20
+ def self.from_value(value, default_value = OUTSTANDING_BALANCE)
21
+ return default_value if value.nil?
22
+
23
+ default_value
24
+ end
25
+ end
26
+ 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
  # A captured payment.
@@ -39,7 +39,7 @@ module PaypalServerSdk
39
39
  attr_accessor :custom_id
40
40
 
41
41
  # Reference values used by the card network to identify a transaction.
42
- # @return [NetworkTransactionReference]
42
+ # @return [NetworkTransaction]
43
43
  attr_accessor :network_transaction_reference
44
44
 
45
45
  # The level of protection offered as defined by [PayPal Seller Protection
@@ -72,7 +72,7 @@ module PaypalServerSdk
72
72
 
73
73
  # The processor response information for payment requests, such as direct
74
74
  # credit card transactions.
75
- # @return [PaymentsProcessorResponse]
75
+ # @return [ProcessorResponse]
76
76
  attr_accessor :processor_response
77
77
 
78
78
  # The date and time, in [Internet date and time
@@ -195,7 +195,7 @@ module PaypalServerSdk
195
195
  invoice_id = hash.key?('invoice_id') ? hash['invoice_id'] : SKIP
196
196
  custom_id = hash.key?('custom_id') ? hash['custom_id'] : SKIP
197
197
  if hash['network_transaction_reference']
198
- network_transaction_reference = NetworkTransactionReference.from_hash(hash['network_transaction_reference'])
198
+ network_transaction_reference = NetworkTransaction.from_hash(hash['network_transaction_reference'])
199
199
  end
200
200
  seller_protection = SellerProtection.from_hash(hash['seller_protection']) if
201
201
  hash['seller_protection']
@@ -215,7 +215,7 @@ module PaypalServerSdk
215
215
  end
216
216
 
217
217
  links = SKIP unless hash.key?('links')
218
- processor_response = PaymentsProcessorResponse.from_hash(hash['processor_response']) if
218
+ processor_response = ProcessorResponse.from_hash(hash['processor_response']) if
219
219
  hash['processor_response']
220
220
  create_time = hash.key?('create_time') ? hash['create_time'] : SKIP
221
221
  update_time = hash.key?('update_time') ? hash['update_time'] : SKIP
@@ -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
  # Additional attributes associated with the use of this card.
@@ -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
  # Additional attributes associated with the use of this card.
@@ -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 Authentication such as 3D Secure.
@@ -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 card network or brand. Applies to credit, debit, gift, and payment
@@ -84,6 +84,21 @@ module PaypalServerSdk
84
84
  # network.
85
85
  EFTPOS = 'EFTPOS'.freeze,
86
86
 
87
+ # The Carte Bancaire payment network.
88
+ CARTE_BANCAIRE = 'CARTE_BANCAIRE'.freeze,
89
+
90
+ # The Star Access payment network.
91
+ STAR_ACCESS = 'STAR_ACCESS'.freeze,
92
+
93
+ # The Pulse payment network.
94
+ PULSE = 'PULSE'.freeze,
95
+
96
+ # The NYCE payment network.
97
+ NYCE = 'NYCE'.freeze,
98
+
99
+ # The Accel payment network.
100
+ ACCEL = 'ACCEL'.freeze,
101
+
87
102
  # UNKNOWN payment network.
88
103
  UNKNOWN = 'UNKNOWN'.freeze
89
104
  ].freeze
@@ -93,5 +108,46 @@ module PaypalServerSdk
93
108
 
94
109
  true
95
110
  end
111
+
112
+ def self.from_value(value, default_value = VISA)
113
+ return default_value if value.nil?
114
+
115
+ str = value.to_s.strip
116
+
117
+ case str.downcase
118
+ when 'visa' then VISA
119
+ when 'mastercard' then MASTERCARD
120
+ when 'discover' then DISCOVER
121
+ when 'amex' then AMEX
122
+ when 'solo' then SOLO
123
+ when 'jcb' then JCB
124
+ when 'star' then STAR
125
+ when 'delta' then DELTA
126
+ when 'switch' then SWITCH
127
+ when 'maestro' then MAESTRO
128
+ when 'cb_nationale' then CB_NATIONALE
129
+ when 'configoga' then CONFIGOGA
130
+ when 'confidis' then CONFIDIS
131
+ when 'electron' then ELECTRON
132
+ when 'cetelem' then CETELEM
133
+ when 'china_union_pay' then CHINA_UNION_PAY
134
+ when 'diners' then DINERS
135
+ when 'elo' then ELO
136
+ when 'hiper' then HIPER
137
+ when 'hipercard' then HIPERCARD
138
+ when 'rupay' then RUPAY
139
+ when 'ge' then GE
140
+ when 'synchrony' then SYNCHRONY
141
+ when 'eftpos' then EFTPOS
142
+ when 'carte_bancaire' then CARTE_BANCAIRE
143
+ when 'star_access' then STAR_ACCESS
144
+ when 'pulse' then PULSE
145
+ when 'nyce' then NYCE
146
+ when 'accel' then ACCEL
147
+ when 'unknown' then UNKNOWN
148
+ else
149
+ default_value
150
+ end
151
+ end
96
152
  end
97
153
  end
@@ -0,0 +1,98 @@
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 details about a customer in PayPal's system of record.
8
+ class CardCustomer < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # The unique ID for a customer generated by PayPal.
13
+ # @return [String]
14
+ attr_accessor :id
15
+
16
+ # The internationalized email address. Note: Up to 64 characters are allowed
17
+ # before and 255 characters are allowed after the @ sign. However, the
18
+ # generally accepted maximum length for an email address is 254 characters.
19
+ # The pattern verifies that an unquoted @ sign exists.
20
+ # @return [String]
21
+ attr_accessor :email_address
22
+
23
+ # The phone information.
24
+ # @return [PhoneWithType]
25
+ attr_accessor :phone
26
+
27
+ # Merchants and partners may already have a data-store where their customer
28
+ # information is persisted. Use merchant_customer_id to associate the
29
+ # PayPal-generated customer.id to your representation of a customer.
30
+ # @return [String]
31
+ attr_accessor :merchant_customer_id
32
+
33
+ # A mapping from model property names to API property names.
34
+ def self.names
35
+ @_hash = {} if @_hash.nil?
36
+ @_hash['id'] = 'id'
37
+ @_hash['email_address'] = 'email_address'
38
+ @_hash['phone'] = 'phone'
39
+ @_hash['merchant_customer_id'] = 'merchant_customer_id'
40
+ @_hash
41
+ end
42
+
43
+ # An array for optional fields
44
+ def self.optionals
45
+ %w[
46
+ id
47
+ email_address
48
+ phone
49
+ merchant_customer_id
50
+ ]
51
+ end
52
+
53
+ # An array for nullable fields
54
+ def self.nullables
55
+ []
56
+ end
57
+
58
+ def initialize(id: SKIP, email_address: SKIP, phone: SKIP,
59
+ merchant_customer_id: SKIP)
60
+ @id = id unless id == SKIP
61
+ @email_address = email_address unless email_address == SKIP
62
+ @phone = phone unless phone == SKIP
63
+ @merchant_customer_id = merchant_customer_id unless merchant_customer_id == SKIP
64
+ end
65
+
66
+ # Creates an instance of the object from a hash.
67
+ def self.from_hash(hash)
68
+ return nil unless hash
69
+
70
+ # Extract variables from the hash.
71
+ id = hash.key?('id') ? hash['id'] : SKIP
72
+ email_address = hash.key?('email_address') ? hash['email_address'] : SKIP
73
+ phone = PhoneWithType.from_hash(hash['phone']) if hash['phone']
74
+ merchant_customer_id =
75
+ hash.key?('merchant_customer_id') ? hash['merchant_customer_id'] : SKIP
76
+
77
+ # Create object from extracted values.
78
+ CardCustomer.new(id: id,
79
+ email_address: email_address,
80
+ phone: phone,
81
+ merchant_customer_id: merchant_customer_id)
82
+ end
83
+
84
+ # Provides a human-readable string representation of the object.
85
+ def to_s
86
+ class_name = self.class.name.split('::').last
87
+ "<#{class_name} id: #{@id}, email_address: #{@email_address}, phone: #{@phone},"\
88
+ " merchant_customer_id: #{@merchant_customer_id}>"
89
+ end
90
+
91
+ # Provides a debugging-friendly string with detailed object information.
92
+ def inspect
93
+ class_name = self.class.name.split('::').last
94
+ "<#{class_name} id: #{@id.inspect}, email_address: #{@email_address.inspect}, phone:"\
95
+ " #{@phone.inspect}, merchant_customer_id: #{@merchant_customer_id.inspect}>"
96
+ end
97
+ end
98
+ 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 customer in PayPal's system of record.
@@ -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
  # Customizes the payer experience during the 3DS Approval for 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
  # Representation of card details as received in the request.
@@ -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
  # Full representation of a Card Payment Token.
@@ -1,7 +1,7 @@
1
1
  # paypal_server_sdk
2
2
  #
3
- # This file was automatically generated by APIMATIC v2.0
4
- # ( https://apimatic.io ).
3
+ # This file was automatically generated by APIMATIC v3.0
4
+ # ( https://www.apimatic.io ).
5
5
 
6
6
  module PaypalServerSdk
7
7
  # The payment card to use to fund a payment. Can be a credit or debit card.
@@ -1,7 +1,7 @@
1
1
  # paypal_server_sdk
2
2
  #
3
- # This file was automatically generated by APIMATIC v2.0
4
- # ( https://apimatic.io ).
3
+ # This file was automatically generated by APIMATIC v3.0
4
+ # ( https://www.apimatic.io ).
5
5
 
6
6
  module PaypalServerSdk
7
7
  # The payment card to use to fund a payment. Card can be a credit or debit
@@ -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
  # Address request details.
@@ -0,0 +1,100 @@
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 payment card used to fund the payment. Card can be a credit or debit
8
+ # card.
9
+ class CardResponseWithBillingAddress < BaseModel
10
+ SKIP = Object.new
11
+ private_constant :SKIP
12
+
13
+ # The card holder's name as it appears on the card.
14
+ # @return [String]
15
+ attr_accessor :name
16
+
17
+ # The portable international postal address. Maps to
18
+ # [AddressValidationMetadata](https://github.com/googlei18n/libaddressinput/
19
+ # wiki/AddressValidationMetadata) and HTML 5.1 [Autofilling form controls:
20
+ # the autocomplete
21
+ # attribute](https://www.w3.org/TR/html51/sec-forms.html#autofilling-form-co
22
+ # ntrols-the-autocomplete-attribute).
23
+ # @return [Address]
24
+ attr_accessor :billing_address
25
+
26
+ # The year and month, in ISO-8601 `YYYY-MM` date format. See [Internet date
27
+ # and time format](https://tools.ietf.org/html/rfc3339#section-5.6).
28
+ # @return [String]
29
+ attr_accessor :expiry
30
+
31
+ # The [three-character ISO-4217 currency
32
+ # code](/api/rest/reference/currency-codes/) that identifies the currency.
33
+ # @return [String]
34
+ attr_accessor :currency_code
35
+
36
+ # A mapping from model property names to API property names.
37
+ def self.names
38
+ @_hash = {} if @_hash.nil?
39
+ @_hash['name'] = 'name'
40
+ @_hash['billing_address'] = 'billing_address'
41
+ @_hash['expiry'] = 'expiry'
42
+ @_hash['currency_code'] = 'currency_code'
43
+ @_hash
44
+ end
45
+
46
+ # An array for optional fields
47
+ def self.optionals
48
+ %w[
49
+ name
50
+ billing_address
51
+ expiry
52
+ currency_code
53
+ ]
54
+ end
55
+
56
+ # An array for nullable fields
57
+ def self.nullables
58
+ []
59
+ end
60
+
61
+ def initialize(name: SKIP, billing_address: SKIP, expiry: SKIP,
62
+ currency_code: SKIP)
63
+ @name = name unless name == SKIP
64
+ @billing_address = billing_address unless billing_address == SKIP
65
+ @expiry = expiry unless expiry == SKIP
66
+ @currency_code = currency_code unless currency_code == SKIP
67
+ end
68
+
69
+ # Creates an instance of the object from a hash.
70
+ def self.from_hash(hash)
71
+ return nil unless hash
72
+
73
+ # Extract variables from the hash.
74
+ name = hash.key?('name') ? hash['name'] : SKIP
75
+ billing_address = Address.from_hash(hash['billing_address']) if hash['billing_address']
76
+ expiry = hash.key?('expiry') ? hash['expiry'] : SKIP
77
+ currency_code = hash.key?('currency_code') ? hash['currency_code'] : SKIP
78
+
79
+ # Create object from extracted values.
80
+ CardResponseWithBillingAddress.new(name: name,
81
+ billing_address: billing_address,
82
+ expiry: expiry,
83
+ currency_code: currency_code)
84
+ end
85
+
86
+ # Provides a human-readable string representation of the object.
87
+ def to_s
88
+ class_name = self.class.name.split('::').last
89
+ "<#{class_name} name: #{@name}, billing_address: #{@billing_address}, expiry: #{@expiry},"\
90
+ " currency_code: #{@currency_code}>"
91
+ end
92
+
93
+ # Provides a debugging-friendly string with detailed object information.
94
+ def inspect
95
+ class_name = self.class.name.split('::').last
96
+ "<#{class_name} name: #{@name.inspect}, billing_address: #{@billing_address.inspect},"\
97
+ " expiry: #{@expiry.inspect}, currency_code: #{@currency_code.inspect}>"
98
+ end
99
+ end
100
+ 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 a `card` that has
@@ -32,7 +32,7 @@ module PaypalServerSdk
32
32
  attr_accessor :usage
33
33
 
34
34
  # Reference values used by the card network to identify a transaction.
35
- # @return [NetworkTransactionReference]
35
+ # @return [NetworkTransaction]
36
36
  attr_accessor :previous_network_transaction_reference
37
37
 
38
38
  # A mapping from model property names to API property names.
@@ -81,7 +81,7 @@ module PaypalServerSdk
81
81
  payment_type = hash.key?('payment_type') ? hash['payment_type'] : nil
82
82
  usage = hash['usage'] ||= StoredPaymentSourceUsageType::DERIVED
83
83
  if hash['previous_network_transaction_reference']
84
- previous_network_transaction_reference = NetworkTransactionReference.from_hash(hash['previous_network_transaction_reference'])
84
+ previous_network_transaction_reference = NetworkTransaction.from_hash(hash['previous_network_transaction_reference'])
85
85
  end
86
86
 
87
87
  # Create object from extracted values.
@@ -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
  # Merchants and partners can add Level 2 and 3 data to payments to reduce risk
@@ -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
  # Type of card. i.e Credit, Debit and so on.
@@ -28,5 +28,21 @@ module PaypalServerSdk
28
28
 
29
29
  true
30
30
  end
31
+
32
+ def self.from_value(value, default_value = CREDIT)
33
+ return default_value if value.nil?
34
+
35
+ str = value.to_s.strip
36
+
37
+ case str.downcase
38
+ when 'credit' then CREDIT
39
+ when 'debit' then DEBIT
40
+ when 'prepaid' then PREPAID
41
+ when 'store' then STORE
42
+ when 'unknown' then UNKNOWN
43
+ else
44
+ default_value
45
+ end
46
+ end
31
47
  end
32
48
  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 Card 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 API caller can opt in to verify the card through PayPal offered
@@ -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
  # Card Verification details including the authorization details and 3D SECURE
@@ -22,15 +22,15 @@ module PaypalServerSdk
22
22
  # @return [String]
23
23
  attr_accessor :date
24
24
 
25
- # The card network or brand. Applies to credit, debit, gift, and payment
26
- # cards.
25
+ # DEPRECATED. This field is DEPRECATED. Please find the network data in the
26
+ # 'network' field under the 'network_transaction_reference' object instead
27
+ # of the 'verification' object.
27
28
  # @return [CardBrand]
28
29
  attr_accessor :network
29
30
 
30
- # The date and time, in [Internet date and time
31
- # format](https://tools.ietf.org/html/rfc3339#section-5.6). Seconds are
32
- # required while fractional seconds are optional. Note: The regular
33
- # expression provides guidance but does not reject all invalid dates.
31
+ # DEPRECATED. This field is DEPRECATED. Please find the time data in the
32
+ # 'time' field under the 'network_transaction_reference' object instead of
33
+ # the 'verification' object.
34
34
  # @return [String]
35
35
  attr_accessor :time
36
36
 
@@ -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 processor response information for payment requests, such as direct