paypal-server-sdk 2.2.0 → 2.4.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 (400) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +148 -148
  3. data/lib/paypal_server_sdk/api_helper.rb +10 -10
  4. data/lib/paypal_server_sdk/client.rb +102 -102
  5. data/lib/paypal_server_sdk/configuration.rb +135 -135
  6. data/lib/paypal_server_sdk/controllers/base_controller.rb +58 -58
  7. data/lib/paypal_server_sdk/controllers/o_auth_authorization_controller.rb +42 -42
  8. data/lib/paypal_server_sdk/controllers/orders_controller.rb +551 -551
  9. data/lib/paypal_server_sdk/controllers/payments_controller.rb +462 -462
  10. data/lib/paypal_server_sdk/controllers/subscriptions_controller.rb +843 -843
  11. data/lib/paypal_server_sdk/controllers/transaction_search_controller.rb +178 -178
  12. data/lib/paypal_server_sdk/controllers/vault_controller.rb +224 -224
  13. data/lib/paypal_server_sdk/exceptions/api_exception.rb +21 -21
  14. data/lib/paypal_server_sdk/exceptions/default_error_exception.rb +78 -78
  15. data/lib/paypal_server_sdk/exceptions/error_exception.rb +70 -70
  16. data/lib/paypal_server_sdk/exceptions/o_auth_provider_exception.rb +47 -47
  17. data/lib/paypal_server_sdk/exceptions/search_error_exception.rb +90 -90
  18. data/lib/paypal_server_sdk/exceptions/subscription_error_exception.rb +78 -78
  19. data/lib/paypal_server_sdk/http/api_response.rb +7 -7
  20. data/lib/paypal_server_sdk/http/auth/o_auth2.rb +144 -144
  21. data/lib/paypal_server_sdk/http/http_call_back.rb +10 -10
  22. data/lib/paypal_server_sdk/http/http_method_enum.rb +10 -10
  23. data/lib/paypal_server_sdk/http/http_request.rb +10 -10
  24. data/lib/paypal_server_sdk/http/http_response.rb +10 -10
  25. data/lib/paypal_server_sdk/http/proxy_settings.rb +5 -5
  26. data/lib/paypal_server_sdk/logging/configuration/api_logging_configuration.rb +5 -5
  27. data/lib/paypal_server_sdk/logging/sdk_logger.rb +5 -5
  28. data/lib/paypal_server_sdk/models/activate_subscription_request.rb +63 -63
  29. data/lib/paypal_server_sdk/models/activity_timestamps.rb +79 -79
  30. data/lib/paypal_server_sdk/models/address.rb +132 -131
  31. data/lib/paypal_server_sdk/models/amount_breakdown.rb +132 -132
  32. data/lib/paypal_server_sdk/models/amount_with_breakdown.rb +94 -93
  33. data/lib/paypal_server_sdk/models/app_switch_context.rb +74 -74
  34. data/lib/paypal_server_sdk/models/apple_pay_attributes.rb +73 -73
  35. data/lib/paypal_server_sdk/models/apple_pay_attributes_response.rb +62 -62
  36. data/lib/paypal_server_sdk/models/apple_pay_card.rb +108 -108
  37. data/lib/paypal_server_sdk/models/apple_pay_card_response.rb +210 -209
  38. data/lib/paypal_server_sdk/models/apple_pay_decrypted_token_data.rb +111 -111
  39. data/lib/paypal_server_sdk/models/apple_pay_experience_context.rb +68 -68
  40. data/lib/paypal_server_sdk/models/apple_pay_payment_data.rb +97 -97
  41. data/lib/paypal_server_sdk/models/apple_pay_payment_data_type.rb +36 -36
  42. data/lib/paypal_server_sdk/models/apple_pay_payment_object.rb +150 -150
  43. data/lib/paypal_server_sdk/models/apple_pay_payment_token.rb +63 -63
  44. data/lib/paypal_server_sdk/models/apple_pay_request.rb +165 -165
  45. data/lib/paypal_server_sdk/models/apple_pay_request_card.rb +88 -88
  46. data/lib/paypal_server_sdk/models/apple_pay_tokenized_card.rb +127 -127
  47. data/lib/paypal_server_sdk/models/application_context_user_action.rb +37 -37
  48. data/lib/paypal_server_sdk/models/assurance_details.rb +82 -82
  49. data/lib/paypal_server_sdk/models/auction_information.rb +100 -100
  50. data/lib/paypal_server_sdk/models/authentication_response.rb +74 -74
  51. data/lib/paypal_server_sdk/models/authorization.rb +211 -211
  52. data/lib/paypal_server_sdk/models/authorization_incomplete_reason.rb +31 -31
  53. data/lib/paypal_server_sdk/models/authorization_status.rb +54 -54
  54. data/lib/paypal_server_sdk/models/authorization_status_details.rb +62 -62
  55. data/lib/paypal_server_sdk/models/authorization_status_with_details.rb +72 -72
  56. data/lib/paypal_server_sdk/models/authorization_with_additional_data.rb +225 -225
  57. data/lib/paypal_server_sdk/models/avs_code.rb +152 -152
  58. data/lib/paypal_server_sdk/models/balance_information.rb +106 -106
  59. data/lib/paypal_server_sdk/models/balances_response.rb +111 -111
  60. data/lib/paypal_server_sdk/models/bancontact_payment_object.rb +110 -109
  61. data/lib/paypal_server_sdk/models/bancontact_payment_request.rb +87 -86
  62. data/lib/paypal_server_sdk/models/bank_request.rb +71 -71
  63. data/lib/paypal_server_sdk/models/base_model.rb +110 -110
  64. data/lib/paypal_server_sdk/models/billing_cycle.rb +129 -118
  65. data/lib/paypal_server_sdk/models/billing_cycle_override.rb +91 -91
  66. data/lib/paypal_server_sdk/models/billing_plan.rb +212 -212
  67. data/lib/paypal_server_sdk/models/bin_details.rb +102 -101
  68. data/lib/paypal_server_sdk/models/blik_experience_context.rb +142 -141
  69. data/lib/paypal_server_sdk/models/blik_level0_payment_object.rb +60 -60
  70. data/lib/paypal_server_sdk/models/blik_one_click_payment_object.rb +64 -64
  71. data/lib/paypal_server_sdk/models/blik_one_click_payment_request.rb +97 -97
  72. data/lib/paypal_server_sdk/models/blik_payment_object.rb +99 -98
  73. data/lib/paypal_server_sdk/models/blik_payment_request.rb +120 -119
  74. data/lib/paypal_server_sdk/models/callback_configuration.rb +74 -74
  75. data/lib/paypal_server_sdk/models/callback_events.rb +35 -35
  76. data/lib/paypal_server_sdk/models/cancel_subscription_request.rb +60 -60
  77. data/lib/paypal_server_sdk/models/capture_incomplete_reason.rb +82 -82
  78. data/lib/paypal_server_sdk/models/capture_payment_instruction.rb +104 -104
  79. data/lib/paypal_server_sdk/models/capture_request.rb +126 -126
  80. data/lib/paypal_server_sdk/models/capture_status.rb +52 -52
  81. data/lib/paypal_server_sdk/models/capture_status_details.rb +62 -62
  82. data/lib/paypal_server_sdk/models/capture_status_with_details.rb +72 -72
  83. data/lib/paypal_server_sdk/models/capture_subscription_request.rb +78 -78
  84. data/lib/paypal_server_sdk/models/capture_type.rb +24 -24
  85. data/lib/paypal_server_sdk/models/captured_payment.rb +274 -274
  86. data/lib/paypal_server_sdk/models/card_attributes.rb +83 -83
  87. data/lib/paypal_server_sdk/models/card_attributes_response.rb +62 -62
  88. data/lib/paypal_server_sdk/models/card_authentication_response.rb +63 -63
  89. data/lib/paypal_server_sdk/models/card_brand.rb +149 -149
  90. data/lib/paypal_server_sdk/models/card_customer.rb +98 -98
  91. data/lib/paypal_server_sdk/models/card_customer_information.rb +108 -108
  92. data/lib/paypal_server_sdk/models/card_experience_context.rb +71 -71
  93. data/lib/paypal_server_sdk/models/card_from_request.rb +72 -72
  94. data/lib/paypal_server_sdk/models/card_payment_token_entity.rb +178 -178
  95. data/lib/paypal_server_sdk/models/card_request.rb +191 -191
  96. data/lib/paypal_server_sdk/models/card_response.rb +180 -180
  97. data/lib/paypal_server_sdk/models/card_response_address.rb +137 -136
  98. data/lib/paypal_server_sdk/models/card_response_with_billing_address.rb +101 -100
  99. data/lib/paypal_server_sdk/models/card_stored_credential.rb +111 -111
  100. data/lib/paypal_server_sdk/models/card_supplementary_data.rb +79 -79
  101. data/lib/paypal_server_sdk/models/card_type.rb +44 -44
  102. data/lib/paypal_server_sdk/models/card_vault_response.rb +99 -99
  103. data/lib/paypal_server_sdk/models/card_verification.rb +64 -64
  104. data/lib/paypal_server_sdk/models/card_verification_details.rb +140 -140
  105. data/lib/paypal_server_sdk/models/card_verification_processor_response.rb +74 -74
  106. data/lib/paypal_server_sdk/models/card_verification_status.rb +31 -31
  107. data/lib/paypal_server_sdk/models/cart_information.rb +94 -94
  108. data/lib/paypal_server_sdk/models/checkout_option.rb +77 -77
  109. data/lib/paypal_server_sdk/models/checkout_payment_intent.rb +40 -40
  110. data/lib/paypal_server_sdk/models/cobranded_card.rb +83 -83
  111. data/lib/paypal_server_sdk/models/confirm_order_request.rb +85 -74
  112. data/lib/paypal_server_sdk/models/create_subscription_request.rb +151 -151
  113. data/lib/paypal_server_sdk/models/customer.rb +76 -76
  114. data/lib/paypal_server_sdk/models/customer_information.rb +95 -95
  115. data/lib/paypal_server_sdk/models/customer_response.rb +75 -75
  116. data/lib/paypal_server_sdk/models/customer_vault_payment_tokens_response.rb +123 -122
  117. data/lib/paypal_server_sdk/models/cvv_code.rb +89 -89
  118. data/lib/paypal_server_sdk/models/cycle_execution.rb +124 -124
  119. data/lib/paypal_server_sdk/models/cycle_frequency.rb +72 -0
  120. data/lib/paypal_server_sdk/models/disbursement_mode.rb +34 -34
  121. data/lib/paypal_server_sdk/models/dispute_category.rb +31 -31
  122. data/lib/paypal_server_sdk/models/eci_flag.rb +50 -50
  123. data/lib/paypal_server_sdk/models/enrollment_status.rb +43 -43
  124. data/lib/paypal_server_sdk/models/eps_payment_object.rb +87 -86
  125. data/lib/paypal_server_sdk/models/eps_payment_request.rb +87 -86
  126. data/lib/paypal_server_sdk/models/error_details.rb +125 -125
  127. data/lib/paypal_server_sdk/models/exchange_rate.rb +91 -89
  128. data/lib/paypal_server_sdk/models/experience_context.rb +116 -115
  129. data/lib/paypal_server_sdk/models/experience_context_shipping_preference.rb +41 -41
  130. data/lib/paypal_server_sdk/models/experience_status.rb +44 -44
  131. data/lib/paypal_server_sdk/models/failed_payment_details.rb +98 -98
  132. data/lib/paypal_server_sdk/models/frequency.rb +75 -75
  133. data/lib/paypal_server_sdk/models/frequency_interval_unit.rb +48 -0
  134. data/lib/paypal_server_sdk/models/fulfillment_type.rb +47 -47
  135. data/lib/paypal_server_sdk/models/giropay_payment_object.rb +87 -86
  136. data/lib/paypal_server_sdk/models/giropay_payment_request.rb +87 -86
  137. data/lib/paypal_server_sdk/models/google_pay_authentication_method.rb +37 -37
  138. data/lib/paypal_server_sdk/models/google_pay_card.rb +128 -128
  139. data/lib/paypal_server_sdk/models/google_pay_card_response.rb +120 -120
  140. data/lib/paypal_server_sdk/models/google_pay_decrypted_token_data.rb +131 -131
  141. data/lib/paypal_server_sdk/models/google_pay_experience_context.rb +68 -68
  142. data/lib/paypal_server_sdk/models/google_pay_payment_method.rb +24 -24
  143. data/lib/paypal_server_sdk/models/google_pay_request.rb +136 -136
  144. data/lib/paypal_server_sdk/models/google_pay_request_card.rb +98 -98
  145. data/lib/paypal_server_sdk/models/google_pay_wallet_response.rb +98 -98
  146. data/lib/paypal_server_sdk/models/ideal_payment_object.rb +99 -98
  147. data/lib/paypal_server_sdk/models/ideal_payment_request.rb +97 -96
  148. data/lib/paypal_server_sdk/models/incentive_details.rb +99 -99
  149. data/lib/paypal_server_sdk/models/incentive_information.rb +71 -71
  150. data/lib/paypal_server_sdk/models/interval_unit.rb +40 -40
  151. data/lib/paypal_server_sdk/models/item.rb +161 -161
  152. data/lib/paypal_server_sdk/models/item_category.rb +38 -38
  153. data/lib/paypal_server_sdk/models/item_details.rb +287 -287
  154. data/lib/paypal_server_sdk/models/item_request.rb +163 -163
  155. data/lib/paypal_server_sdk/models/last_payment_details.rb +75 -75
  156. data/lib/paypal_server_sdk/models/level2_card_processing_data.rb +78 -78
  157. data/lib/paypal_server_sdk/models/level3_card_processing_data.rb +137 -137
  158. data/lib/paypal_server_sdk/models/liability_shift_indicator.rb +35 -35
  159. data/lib/paypal_server_sdk/models/line_item.rb +209 -209
  160. data/lib/paypal_server_sdk/models/link_description.rb +92 -87
  161. data/lib/paypal_server_sdk/models/link_http_method.rb +56 -56
  162. data/lib/paypal_server_sdk/models/merchant_preferences.rb +73 -73
  163. data/lib/paypal_server_sdk/models/mobile_return_flow.rb +36 -36
  164. data/lib/paypal_server_sdk/models/mobile_web_context.rb +76 -76
  165. data/lib/paypal_server_sdk/models/modify_subscription_request.rb +124 -124
  166. data/lib/paypal_server_sdk/models/modify_subscription_response.rb +141 -141
  167. data/lib/paypal_server_sdk/models/money.rb +75 -74
  168. data/lib/paypal_server_sdk/models/mybank_payment_object.rb +99 -98
  169. data/lib/paypal_server_sdk/models/mybank_payment_request.rb +87 -86
  170. data/lib/paypal_server_sdk/models/name.rb +73 -73
  171. data/lib/paypal_server_sdk/models/native_app_context.rb +72 -72
  172. data/lib/paypal_server_sdk/models/net_amount_breakdown_item.rb +87 -87
  173. data/lib/paypal_server_sdk/models/network_token.rb +110 -110
  174. data/lib/paypal_server_sdk/models/network_transaction.rb +107 -107
  175. data/lib/paypal_server_sdk/models/network_transaction_reference_entity.rb +100 -100
  176. data/lib/paypal_server_sdk/models/o_auth_provider_error.rb +58 -58
  177. data/lib/paypal_server_sdk/models/o_auth_token.rb +106 -106
  178. data/lib/paypal_server_sdk/models/one_time_charge.rb +118 -118
  179. data/lib/paypal_server_sdk/models/order.rb +197 -184
  180. data/lib/paypal_server_sdk/models/order_application_context.rb +219 -219
  181. data/lib/paypal_server_sdk/models/order_application_context_landing_page.rb +48 -48
  182. data/lib/paypal_server_sdk/models/order_application_context_shipping_preference.rb +45 -45
  183. data/lib/paypal_server_sdk/models/order_application_context_user_action.rb +42 -42
  184. data/lib/paypal_server_sdk/models/order_authorize_request.rb +63 -63
  185. data/lib/paypal_server_sdk/models/order_authorize_request_payment_source.rb +115 -115
  186. data/lib/paypal_server_sdk/models/order_authorize_response.rb +194 -181
  187. data/lib/paypal_server_sdk/models/order_authorize_response_payment_source.rb +102 -102
  188. data/lib/paypal_server_sdk/models/order_billing_plan.rb +93 -93
  189. data/lib/paypal_server_sdk/models/order_capture_request.rb +63 -63
  190. data/lib/paypal_server_sdk/models/order_capture_request_payment_source.rb +115 -115
  191. data/lib/paypal_server_sdk/models/order_confirm_application_context.rb +123 -122
  192. data/lib/paypal_server_sdk/models/order_request.rb +132 -120
  193. data/lib/paypal_server_sdk/models/order_status.rb +60 -60
  194. data/lib/paypal_server_sdk/models/order_tracker_item.rb +114 -114
  195. data/lib/paypal_server_sdk/models/order_tracker_request.rb +133 -133
  196. data/lib/paypal_server_sdk/models/order_tracker_response.rb +135 -135
  197. data/lib/paypal_server_sdk/models/order_tracker_status.rb +34 -34
  198. data/lib/paypal_server_sdk/models/orders_capture.rb +252 -252
  199. data/lib/paypal_server_sdk/models/orders_card_verification_method.rb +61 -61
  200. data/lib/paypal_server_sdk/models/os_type.rb +35 -35
  201. data/lib/paypal_server_sdk/models/p24_payment_object.rb +123 -122
  202. data/lib/paypal_server_sdk/models/p24_payment_request.rb +98 -97
  203. data/lib/paypal_server_sdk/models/pa_res_status.rb +57 -57
  204. data/lib/paypal_server_sdk/models/participant_metadata.rb +64 -64
  205. data/lib/paypal_server_sdk/models/patch.rb +93 -93
  206. data/lib/paypal_server_sdk/models/patch_op.rb +84 -84
  207. data/lib/paypal_server_sdk/models/payee_base.rb +76 -76
  208. data/lib/paypal_server_sdk/models/payee_payment_method_preference.rb +33 -33
  209. data/lib/paypal_server_sdk/models/payer.rb +136 -136
  210. data/lib/paypal_server_sdk/models/payer_base.rb +75 -75
  211. data/lib/paypal_server_sdk/models/payer_information.rb +146 -146
  212. data/lib/paypal_server_sdk/models/payer_name.rb +128 -128
  213. data/lib/paypal_server_sdk/models/payment_advice_code.rb +97 -97
  214. data/lib/paypal_server_sdk/models/payment_authorization.rb +233 -233
  215. data/lib/paypal_server_sdk/models/payment_collection.rb +113 -113
  216. data/lib/paypal_server_sdk/models/payment_initiator.rb +34 -34
  217. data/lib/paypal_server_sdk/models/payment_instruction.rb +121 -121
  218. data/lib/paypal_server_sdk/models/payment_method.rb +63 -63
  219. data/lib/paypal_server_sdk/models/payment_method_preference.rb +86 -86
  220. data/lib/paypal_server_sdk/models/payment_preferences.rb +105 -105
  221. data/lib/paypal_server_sdk/models/payment_preferences_override.rb +107 -107
  222. data/lib/paypal_server_sdk/models/payment_source.rb +203 -203
  223. data/lib/paypal_server_sdk/models/payment_source_response.rb +190 -190
  224. data/lib/paypal_server_sdk/models/payment_supplementary_data.rb +62 -62
  225. data/lib/paypal_server_sdk/models/payment_token_request.rb +74 -74
  226. data/lib/paypal_server_sdk/models/payment_token_request_card.rb +120 -120
  227. data/lib/paypal_server_sdk/models/payment_token_request_payment_source.rb +71 -71
  228. data/lib/paypal_server_sdk/models/payment_token_response.rb +104 -103
  229. data/lib/paypal_server_sdk/models/payment_token_response_payment_source.rb +91 -91
  230. data/lib/paypal_server_sdk/models/payment_token_status.rb +48 -48
  231. data/lib/paypal_server_sdk/models/payments_capture.rb +252 -252
  232. data/lib/paypal_server_sdk/models/paypal_experience_landing_page.rb +52 -52
  233. data/lib/paypal_server_sdk/models/paypal_experience_user_action.rb +37 -37
  234. data/lib/paypal_server_sdk/models/paypal_payment_token.rb +211 -211
  235. data/lib/paypal_server_sdk/models/paypal_payment_token_customer_type.rb +37 -37
  236. data/lib/paypal_server_sdk/models/paypal_payment_token_usage_type.rb +35 -35
  237. data/lib/paypal_server_sdk/models/paypal_reference_id_type.rb +40 -40
  238. data/lib/paypal_server_sdk/models/paypal_wallet.rb +188 -188
  239. data/lib/paypal_server_sdk/models/paypal_wallet_account_verification_status.rb +36 -36
  240. data/lib/paypal_server_sdk/models/paypal_wallet_attributes.rb +71 -71
  241. data/lib/paypal_server_sdk/models/paypal_wallet_attributes_response.rb +82 -82
  242. data/lib/paypal_server_sdk/models/paypal_wallet_contact_preference.rb +43 -43
  243. data/lib/paypal_server_sdk/models/paypal_wallet_context_shipping_preference.rb +40 -40
  244. data/lib/paypal_server_sdk/models/paypal_wallet_customer.rb +108 -108
  245. data/lib/paypal_server_sdk/models/paypal_wallet_customer_request.rb +108 -108
  246. data/lib/paypal_server_sdk/models/paypal_wallet_experience_context.rb +201 -200
  247. data/lib/paypal_server_sdk/models/paypal_wallet_response.rb +213 -213
  248. data/lib/paypal_server_sdk/models/paypal_wallet_stored_credential.rb +99 -99
  249. data/lib/paypal_server_sdk/models/paypal_wallet_vault_base.rb +134 -134
  250. data/lib/paypal_server_sdk/models/paypal_wallet_vault_instruction.rb +132 -132
  251. data/lib/paypal_server_sdk/models/paypal_wallet_vault_response.rb +99 -99
  252. data/lib/paypal_server_sdk/models/paypal_wallet_vault_status.rb +40 -40
  253. data/lib/paypal_server_sdk/models/phone.rb +91 -91
  254. data/lib/paypal_server_sdk/models/phone_number.rb +68 -68
  255. data/lib/paypal_server_sdk/models/phone_number_with_country_code.rb +83 -83
  256. data/lib/paypal_server_sdk/models/phone_number_with_optional_country_code.rb +81 -81
  257. data/lib/paypal_server_sdk/models/phone_type.rb +44 -44
  258. data/lib/paypal_server_sdk/models/phone_with_type.rb +72 -72
  259. data/lib/paypal_server_sdk/models/plan.rb +92 -92
  260. data/lib/paypal_server_sdk/models/plan_collection.rb +111 -111
  261. data/lib/paypal_server_sdk/models/plan_details.rb +147 -147
  262. data/lib/paypal_server_sdk/models/plan_override.rb +96 -96
  263. data/lib/paypal_server_sdk/models/plan_request.rb +154 -154
  264. data/lib/paypal_server_sdk/models/plan_request_status.rb +37 -37
  265. data/lib/paypal_server_sdk/models/platform_fee.rb +75 -75
  266. data/lib/paypal_server_sdk/models/pricing_model.rb +37 -37
  267. data/lib/paypal_server_sdk/models/pricing_scheme.rb +84 -84
  268. data/lib/paypal_server_sdk/models/pricing_tier.rb +83 -83
  269. data/lib/paypal_server_sdk/models/processing_instruction.rb +33 -0
  270. data/lib/paypal_server_sdk/models/processor_response.rb +98 -98
  271. data/lib/paypal_server_sdk/models/processor_response_code.rb +644 -644
  272. data/lib/paypal_server_sdk/models/purchase_unit.rb +245 -245
  273. data/lib/paypal_server_sdk/models/purchase_unit_request.rb +219 -219
  274. data/lib/paypal_server_sdk/models/reason_code.rb +56 -56
  275. data/lib/paypal_server_sdk/models/reauthorize_request.rb +72 -72
  276. data/lib/paypal_server_sdk/models/refund.rb +214 -214
  277. data/lib/paypal_server_sdk/models/refund_incomplete_reason.rb +25 -25
  278. data/lib/paypal_server_sdk/models/refund_payment_instruction.rb +80 -80
  279. data/lib/paypal_server_sdk/models/refund_platform_fee.rb +64 -64
  280. data/lib/paypal_server_sdk/models/refund_request.rb +115 -115
  281. data/lib/paypal_server_sdk/models/refund_status.rb +40 -40
  282. data/lib/paypal_server_sdk/models/refund_status_details.rb +62 -62
  283. data/lib/paypal_server_sdk/models/refund_status_with_details.rb +72 -72
  284. data/lib/paypal_server_sdk/models/related_identifiers.rb +83 -83
  285. data/lib/paypal_server_sdk/models/return_flow.rb +36 -36
  286. data/lib/paypal_server_sdk/models/risk_supplementary_data.rb +63 -63
  287. data/lib/paypal_server_sdk/models/search_response.rb +176 -176
  288. data/lib/paypal_server_sdk/models/seller_payable_breakdown.rb +177 -177
  289. data/lib/paypal_server_sdk/models/seller_protection.rb +78 -78
  290. data/lib/paypal_server_sdk/models/seller_protection_status.rb +41 -41
  291. data/lib/paypal_server_sdk/models/seller_receivable_breakdown.rb +147 -147
  292. data/lib/paypal_server_sdk/models/sepa_debit_experience_context.rb +89 -88
  293. data/lib/paypal_server_sdk/models/sepa_debit_request.rb +64 -64
  294. data/lib/paypal_server_sdk/models/setup_fee_failure_action.rb +32 -32
  295. data/lib/paypal_server_sdk/models/setup_token_request.rb +74 -74
  296. data/lib/paypal_server_sdk/models/setup_token_request_card.rb +143 -143
  297. data/lib/paypal_server_sdk/models/setup_token_request_payment_source.rb +111 -111
  298. data/lib/paypal_server_sdk/models/setup_token_response.rb +116 -115
  299. data/lib/paypal_server_sdk/models/setup_token_response_card.rb +178 -178
  300. data/lib/paypal_server_sdk/models/setup_token_response_payment_source.rb +81 -81
  301. data/lib/paypal_server_sdk/models/shipment_carrier.rb +5682 -5682
  302. data/lib/paypal_server_sdk/models/shipping_details.rb +133 -133
  303. data/lib/paypal_server_sdk/models/shipping_information.rb +101 -101
  304. data/lib/paypal_server_sdk/models/shipping_name.rb +62 -62
  305. data/lib/paypal_server_sdk/models/shipping_option.rb +108 -108
  306. data/lib/paypal_server_sdk/models/shipping_type.rb +48 -48
  307. data/lib/paypal_server_sdk/models/shipping_with_tracking_details.rb +152 -152
  308. data/lib/paypal_server_sdk/models/simple_postal_address_coarse_grained.rb +130 -130
  309. data/lib/paypal_server_sdk/models/sofort_payment_object.rb +99 -98
  310. data/lib/paypal_server_sdk/models/sofort_payment_request.rb +87 -86
  311. data/lib/paypal_server_sdk/models/standard_entry_class_code.rb +55 -55
  312. data/lib/paypal_server_sdk/models/store_in_vault_instruction.rb +25 -25
  313. data/lib/paypal_server_sdk/models/store_information.rb +71 -71
  314. data/lib/paypal_server_sdk/models/stored_payment_source.rb +111 -111
  315. data/lib/paypal_server_sdk/models/stored_payment_source_payment_type.rb +38 -38
  316. data/lib/paypal_server_sdk/models/stored_payment_source_usage_type.rb +39 -39
  317. data/lib/paypal_server_sdk/models/subscriber.rb +107 -107
  318. data/lib/paypal_server_sdk/models/subscriber_request.rb +120 -120
  319. data/lib/paypal_server_sdk/models/subscription.rb +241 -205
  320. data/lib/paypal_server_sdk/models/subscription_amount_with_breakdown.rb +119 -119
  321. data/lib/paypal_server_sdk/models/subscription_application_context.rb +134 -134
  322. data/lib/paypal_server_sdk/models/subscription_billing_cycle.rb +108 -108
  323. data/lib/paypal_server_sdk/models/subscription_billing_information.rb +148 -148
  324. data/lib/paypal_server_sdk/models/subscription_card_request.rb +141 -141
  325. data/lib/paypal_server_sdk/models/subscription_collection.rb +90 -90
  326. data/lib/paypal_server_sdk/models/subscription_customer_information.rb +84 -84
  327. data/lib/paypal_server_sdk/models/subscription_patch_application_context.rb +122 -122
  328. data/lib/paypal_server_sdk/models/subscription_payer.rb +85 -85
  329. data/lib/paypal_server_sdk/models/subscription_payer_name.rb +114 -114
  330. data/lib/paypal_server_sdk/models/subscription_payment_source.rb +65 -65
  331. data/lib/paypal_server_sdk/models/subscription_payment_source_response.rb +63 -63
  332. data/lib/paypal_server_sdk/models/subscription_plan_status.rb +37 -37
  333. data/lib/paypal_server_sdk/models/subscription_pricing_model.rb +31 -31
  334. data/lib/paypal_server_sdk/models/subscription_pricing_scheme.rb +129 -129
  335. data/lib/paypal_server_sdk/models/subscription_status.rb +52 -0
  336. data/lib/paypal_server_sdk/models/subscription_transaction_details.rb +118 -118
  337. data/lib/paypal_server_sdk/models/subscriptions_card_attributes.rb +83 -83
  338. data/lib/paypal_server_sdk/models/subscriptions_card_brand.rb +129 -129
  339. data/lib/paypal_server_sdk/models/supplementary_data.rb +76 -76
  340. data/lib/paypal_server_sdk/models/suspend_subscription.rb +60 -60
  341. data/lib/paypal_server_sdk/models/tax_amount.rb +63 -63
  342. data/lib/paypal_server_sdk/models/tax_id_type.rb +31 -31
  343. data/lib/paypal_server_sdk/models/tax_info.rb +69 -69
  344. data/lib/paypal_server_sdk/models/taxes.rb +71 -71
  345. data/lib/paypal_server_sdk/models/taxes_override.rb +72 -72
  346. data/lib/paypal_server_sdk/models/tenure_type.rb +38 -38
  347. data/lib/paypal_server_sdk/models/three_d_secure_authentication_response.rb +76 -76
  348. data/lib/paypal_server_sdk/models/three_d_secure_card_authentication_response.rb +89 -89
  349. data/lib/paypal_server_sdk/models/token.rb +68 -68
  350. data/lib/paypal_server_sdk/models/token_type.rb +25 -25
  351. data/lib/paypal_server_sdk/models/transaction_details.rb +126 -126
  352. data/lib/paypal_server_sdk/models/transaction_information.rb +494 -494
  353. data/lib/paypal_server_sdk/models/transaction_search_error_details.rb +103 -103
  354. data/lib/paypal_server_sdk/models/transactions_list.rb +111 -111
  355. data/lib/paypal_server_sdk/models/trustly_payment_object.rb +111 -110
  356. data/lib/paypal_server_sdk/models/trustly_payment_request.rb +98 -97
  357. data/lib/paypal_server_sdk/models/universal_product_code.rb +68 -68
  358. data/lib/paypal_server_sdk/models/upc_type.rb +52 -52
  359. data/lib/paypal_server_sdk/models/update_pricing_scheme.rb +72 -72
  360. data/lib/paypal_server_sdk/models/update_pricing_schemes_request.rb +69 -69
  361. data/lib/paypal_server_sdk/models/usage_pattern.rb +91 -91
  362. data/lib/paypal_server_sdk/models/usage_type.rb +34 -34
  363. data/lib/paypal_server_sdk/models/vault_apple_pay_request.rb +73 -73
  364. data/lib/paypal_server_sdk/models/vault_card_experience_context.rb +129 -128
  365. data/lib/paypal_server_sdk/models/vault_card_verification_method.rb +47 -47
  366. data/lib/paypal_server_sdk/models/vault_customer.rb +72 -72
  367. data/lib/paypal_server_sdk/models/vault_experience_context.rb +155 -154
  368. data/lib/paypal_server_sdk/models/vault_instruction.rb +62 -62
  369. data/lib/paypal_server_sdk/models/vault_instruction_action.rb +34 -34
  370. data/lib/paypal_server_sdk/models/vault_instruction_base.rb +64 -64
  371. data/lib/paypal_server_sdk/models/vault_paypal_wallet_request.rb +154 -154
  372. data/lib/paypal_server_sdk/models/vault_response.rb +100 -100
  373. data/lib/paypal_server_sdk/models/vault_response_customer.rb +86 -86
  374. data/lib/paypal_server_sdk/models/vault_status.rb +40 -40
  375. data/lib/paypal_server_sdk/models/vault_token_request.rb +68 -68
  376. data/lib/paypal_server_sdk/models/vault_token_request_type.rb +24 -24
  377. data/lib/paypal_server_sdk/models/vault_user_action.rb +37 -37
  378. data/lib/paypal_server_sdk/models/vault_venmo_request.rb +143 -143
  379. data/lib/paypal_server_sdk/models/vaulted_digital_wallet.rb +132 -132
  380. data/lib/paypal_server_sdk/models/vaulted_digital_wallet_shipping_details.rb +114 -114
  381. data/lib/paypal_server_sdk/models/venmo_experience_context.rb +101 -101
  382. data/lib/paypal_server_sdk/models/venmo_payment_token.rb +199 -199
  383. data/lib/paypal_server_sdk/models/venmo_payment_token_customer_type.rb +35 -35
  384. data/lib/paypal_server_sdk/models/venmo_payment_token_usage_pattern.rb +54 -54
  385. data/lib/paypal_server_sdk/models/venmo_payment_token_usage_type.rb +34 -34
  386. data/lib/paypal_server_sdk/models/venmo_vault_response.rb +100 -100
  387. data/lib/paypal_server_sdk/models/venmo_vault_response_status.rb +40 -40
  388. data/lib/paypal_server_sdk/models/venmo_wallet_additional_attributes.rb +72 -72
  389. data/lib/paypal_server_sdk/models/venmo_wallet_attributes_response.rb +62 -62
  390. data/lib/paypal_server_sdk/models/venmo_wallet_customer_information.rb +94 -94
  391. data/lib/paypal_server_sdk/models/venmo_wallet_experience_context.rb +108 -108
  392. data/lib/paypal_server_sdk/models/venmo_wallet_experience_context_shipping_preference.rb +38 -38
  393. data/lib/paypal_server_sdk/models/venmo_wallet_experience_context_user_action.rb +37 -37
  394. data/lib/paypal_server_sdk/models/venmo_wallet_request.rb +102 -102
  395. data/lib/paypal_server_sdk/models/venmo_wallet_response.rb +146 -146
  396. data/lib/paypal_server_sdk/models/venmo_wallet_vault_attributes.rb +131 -131
  397. data/lib/paypal_server_sdk/utilities/date_time_helper.rb +11 -11
  398. data/lib/paypal_server_sdk/utilities/file_wrapper.rb +17 -17
  399. data/lib/paypal_server_sdk.rb +440 -436
  400. metadata +6 -2
@@ -1,91 +1,91 @@
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 billing cycle details to override at subscription level. The
8
- # subscription billing cycle definition has to adhere to the plan billing
9
- # cycle definition.
10
- class BillingCycleOverride < BaseModel
11
- SKIP = Object.new
12
- private_constant :SKIP
13
-
14
- # The pricing scheme details.
15
- # @return [SubscriptionPricingScheme]
16
- attr_accessor :pricing_scheme
17
-
18
- # The order in which this cycle is to run among other billing cycles. For
19
- # example, a trial billing cycle has a `sequence` of `1` while a regular
20
- # billing cycle has a `sequence` of `2`, so that trial cycle runs before the
21
- # regular cycle.
22
- # @return [Integer]
23
- attr_accessor :sequence
24
-
25
- # The number of times this billing cycle gets executed. Trial billing cycles
26
- # can only be executed a finite number of times (value between 1 and 999 for
27
- # total_cycles). Regular billing cycles can be executed infinite times
28
- # (value of 0 for total_cycles) or a finite number of times (value between 1
29
- # and 999 for total_cycles).
30
- # @return [Integer]
31
- attr_accessor :total_cycles
32
-
33
- # A mapping from model property names to API property names.
34
- def self.names
35
- @_hash = {} if @_hash.nil?
36
- @_hash['pricing_scheme'] = 'pricing_scheme'
37
- @_hash['sequence'] = 'sequence'
38
- @_hash['total_cycles'] = 'total_cycles'
39
- @_hash
40
- end
41
-
42
- # An array for optional fields
43
- def self.optionals
44
- %w[
45
- pricing_scheme
46
- total_cycles
47
- ]
48
- end
49
-
50
- # An array for nullable fields
51
- def self.nullables
52
- []
53
- end
54
-
55
- def initialize(sequence:, pricing_scheme: SKIP, total_cycles: SKIP)
56
- @pricing_scheme = pricing_scheme unless pricing_scheme == SKIP
57
- @sequence = sequence
58
- @total_cycles = total_cycles unless total_cycles == SKIP
59
- end
60
-
61
- # Creates an instance of the object from a hash.
62
- def self.from_hash(hash)
63
- return nil unless hash
64
-
65
- # Extract variables from the hash.
66
- sequence = hash.key?('sequence') ? hash['sequence'] : nil
67
- pricing_scheme = SubscriptionPricingScheme.from_hash(hash['pricing_scheme']) if
68
- hash['pricing_scheme']
69
- total_cycles = hash.key?('total_cycles') ? hash['total_cycles'] : SKIP
70
-
71
- # Create object from extracted values.
72
- BillingCycleOverride.new(sequence: sequence,
73
- pricing_scheme: pricing_scheme,
74
- total_cycles: total_cycles)
75
- end
76
-
77
- # Provides a human-readable string representation of the object.
78
- def to_s
79
- class_name = self.class.name.split('::').last
80
- "<#{class_name} pricing_scheme: #{@pricing_scheme}, sequence: #{@sequence}, total_cycles:"\
81
- " #{@total_cycles}>"
82
- end
83
-
84
- # Provides a debugging-friendly string with detailed object information.
85
- def inspect
86
- class_name = self.class.name.split('::').last
87
- "<#{class_name} pricing_scheme: #{@pricing_scheme.inspect}, sequence: #{@sequence.inspect},"\
88
- " total_cycles: #{@total_cycles.inspect}>"
89
- end
90
- end
91
- end
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 billing cycle details to override at subscription level. The
8
+ # subscription billing cycle definition has to adhere to the plan billing
9
+ # cycle definition.
10
+ class BillingCycleOverride < BaseModel
11
+ SKIP = Object.new
12
+ private_constant :SKIP
13
+
14
+ # The pricing scheme details.
15
+ # @return [SubscriptionPricingScheme]
16
+ attr_accessor :pricing_scheme
17
+
18
+ # The order in which this cycle is to run among other billing cycles. For
19
+ # example, a trial billing cycle has a `sequence` of `1` while a regular
20
+ # billing cycle has a `sequence` of `2`, so that trial cycle runs before the
21
+ # regular cycle.
22
+ # @return [Integer]
23
+ attr_accessor :sequence
24
+
25
+ # The number of times this billing cycle gets executed. Trial billing cycles
26
+ # can only be executed a finite number of times (value between 1 and 999 for
27
+ # total_cycles). Regular billing cycles can be executed infinite times
28
+ # (value of 0 for total_cycles) or a finite number of times (value between 1
29
+ # and 999 for total_cycles).
30
+ # @return [Integer]
31
+ attr_accessor :total_cycles
32
+
33
+ # A mapping from model property names to API property names.
34
+ def self.names
35
+ @_hash = {} if @_hash.nil?
36
+ @_hash['pricing_scheme'] = 'pricing_scheme'
37
+ @_hash['sequence'] = 'sequence'
38
+ @_hash['total_cycles'] = 'total_cycles'
39
+ @_hash
40
+ end
41
+
42
+ # An array for optional fields
43
+ def self.optionals
44
+ %w[
45
+ pricing_scheme
46
+ total_cycles
47
+ ]
48
+ end
49
+
50
+ # An array for nullable fields
51
+ def self.nullables
52
+ []
53
+ end
54
+
55
+ def initialize(sequence:, pricing_scheme: SKIP, total_cycles: SKIP)
56
+ @pricing_scheme = pricing_scheme unless pricing_scheme == SKIP
57
+ @sequence = sequence
58
+ @total_cycles = total_cycles unless total_cycles == SKIP
59
+ end
60
+
61
+ # Creates an instance of the object from a hash.
62
+ def self.from_hash(hash)
63
+ return nil unless hash
64
+
65
+ # Extract variables from the hash.
66
+ sequence = hash.key?('sequence') ? hash['sequence'] : nil
67
+ pricing_scheme = SubscriptionPricingScheme.from_hash(hash['pricing_scheme']) if
68
+ hash['pricing_scheme']
69
+ total_cycles = hash.key?('total_cycles') ? hash['total_cycles'] : SKIP
70
+
71
+ # Create object from extracted values.
72
+ BillingCycleOverride.new(sequence: sequence,
73
+ pricing_scheme: pricing_scheme,
74
+ total_cycles: total_cycles)
75
+ end
76
+
77
+ # Provides a human-readable string representation of the object.
78
+ def to_s
79
+ class_name = self.class.name.split('::').last
80
+ "<#{class_name} pricing_scheme: #{@pricing_scheme}, sequence: #{@sequence}, total_cycles:"\
81
+ " #{@total_cycles}>"
82
+ end
83
+
84
+ # Provides a debugging-friendly string with detailed object information.
85
+ def inspect
86
+ class_name = self.class.name.split('::').last
87
+ "<#{class_name} pricing_scheme: #{@pricing_scheme.inspect}, sequence: #{@sequence.inspect},"\
88
+ " total_cycles: #{@total_cycles.inspect}>"
89
+ end
90
+ end
91
+ end
@@ -1,212 +1,212 @@
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 plan details.
8
- class BillingPlan < BaseModel
9
- SKIP = Object.new
10
- private_constant :SKIP
11
-
12
- # The unique PayPal-generated ID for the plan.
13
- # @return [String]
14
- attr_accessor :id
15
-
16
- # The ID for the product.
17
- # @return [String]
18
- attr_accessor :product_id
19
-
20
- # The plan name.
21
- # @return [String]
22
- attr_accessor :name
23
-
24
- # The plan status.
25
- # @return [SubscriptionPlanStatus]
26
- attr_accessor :status
27
-
28
- # The detailed description of the plan.
29
- # @return [String]
30
- attr_accessor :description
31
-
32
- # An array of billing cycles for trial billing and regular billing. A plan
33
- # can have at most two trial cycles and only one regular cycle.
34
- # @return [Array[SubscriptionBillingCycle]]
35
- attr_accessor :billing_cycles
36
-
37
- # The payment preferences for a subscription.
38
- # @return [PaymentPreferences]
39
- attr_accessor :payment_preferences
40
-
41
- # The merchant preferences for a subscription.
42
- # @return [MerchantPreferences]
43
- attr_accessor :merchant_preferences
44
-
45
- # The tax details.
46
- # @return [Taxes]
47
- attr_accessor :taxes
48
-
49
- # Indicates whether you can subscribe to this plan by providing a quantity
50
- # for the goods or service.
51
- # @return [TrueClass | FalseClass]
52
- attr_accessor :quantity_supported
53
-
54
- # The date and time, in [Internet date and time
55
- # format](https://tools.ietf.org/html/rfc3339#section-5.6). Seconds are
56
- # required while fractional seconds are optional. Note: The regular
57
- # expression provides guidance but does not reject all invalid dates.
58
- # @return [String]
59
- attr_accessor :create_time
60
-
61
- # The date and time, in [Internet date and time
62
- # format](https://tools.ietf.org/html/rfc3339#section-5.6). Seconds are
63
- # required while fractional seconds are optional. Note: The regular
64
- # expression provides guidance but does not reject all invalid dates.
65
- # @return [String]
66
- attr_accessor :update_time
67
-
68
- # An array of request-related [HATEOAS
69
- # links](/docs/api/reference/api-responses/#hateoas-links).
70
- # @return [Array[LinkDescription]]
71
- attr_accessor :links
72
-
73
- # A mapping from model property names to API property names.
74
- def self.names
75
- @_hash = {} if @_hash.nil?
76
- @_hash['id'] = 'id'
77
- @_hash['product_id'] = 'product_id'
78
- @_hash['name'] = 'name'
79
- @_hash['status'] = 'status'
80
- @_hash['description'] = 'description'
81
- @_hash['billing_cycles'] = 'billing_cycles'
82
- @_hash['payment_preferences'] = 'payment_preferences'
83
- @_hash['merchant_preferences'] = 'merchant_preferences'
84
- @_hash['taxes'] = 'taxes'
85
- @_hash['quantity_supported'] = 'quantity_supported'
86
- @_hash['create_time'] = 'create_time'
87
- @_hash['update_time'] = 'update_time'
88
- @_hash['links'] = 'links'
89
- @_hash
90
- end
91
-
92
- # An array for optional fields
93
- def self.optionals
94
- %w[
95
- id
96
- product_id
97
- name
98
- status
99
- description
100
- billing_cycles
101
- payment_preferences
102
- merchant_preferences
103
- taxes
104
- quantity_supported
105
- create_time
106
- update_time
107
- links
108
- ]
109
- end
110
-
111
- # An array for nullable fields
112
- def self.nullables
113
- []
114
- end
115
-
116
- def initialize(id: SKIP, product_id: SKIP, name: SKIP, status: SKIP,
117
- description: SKIP, billing_cycles: SKIP,
118
- payment_preferences: SKIP, merchant_preferences: SKIP,
119
- taxes: SKIP, quantity_supported: false, create_time: SKIP,
120
- update_time: SKIP, links: SKIP)
121
- @id = id unless id == SKIP
122
- @product_id = product_id unless product_id == SKIP
123
- @name = name unless name == SKIP
124
- @status = status unless status == SKIP
125
- @description = description unless description == SKIP
126
- @billing_cycles = billing_cycles unless billing_cycles == SKIP
127
- @payment_preferences = payment_preferences unless payment_preferences == SKIP
128
- @merchant_preferences = merchant_preferences unless merchant_preferences == SKIP
129
- @taxes = taxes unless taxes == SKIP
130
- @quantity_supported = quantity_supported unless quantity_supported == SKIP
131
- @create_time = create_time unless create_time == SKIP
132
- @update_time = update_time unless update_time == SKIP
133
- @links = links unless links == SKIP
134
- end
135
-
136
- # Creates an instance of the object from a hash.
137
- def self.from_hash(hash)
138
- return nil unless hash
139
-
140
- # Extract variables from the hash.
141
- id = hash.key?('id') ? hash['id'] : SKIP
142
- product_id = hash.key?('product_id') ? hash['product_id'] : SKIP
143
- name = hash.key?('name') ? hash['name'] : SKIP
144
- status = hash.key?('status') ? hash['status'] : SKIP
145
- description = hash.key?('description') ? hash['description'] : SKIP
146
- # Parameter is an array, so we need to iterate through it
147
- billing_cycles = nil
148
- unless hash['billing_cycles'].nil?
149
- billing_cycles = []
150
- hash['billing_cycles'].each do |structure|
151
- billing_cycles << (SubscriptionBillingCycle.from_hash(structure) if structure)
152
- end
153
- end
154
-
155
- billing_cycles = SKIP unless hash.key?('billing_cycles')
156
- payment_preferences = PaymentPreferences.from_hash(hash['payment_preferences']) if
157
- hash['payment_preferences']
158
- merchant_preferences = MerchantPreferences.from_hash(hash['merchant_preferences']) if
159
- hash['merchant_preferences']
160
- taxes = Taxes.from_hash(hash['taxes']) if hash['taxes']
161
- quantity_supported = hash['quantity_supported'] ||= false
162
- create_time = hash.key?('create_time') ? hash['create_time'] : SKIP
163
- update_time = hash.key?('update_time') ? hash['update_time'] : SKIP
164
- # Parameter is an array, so we need to iterate through it
165
- links = nil
166
- unless hash['links'].nil?
167
- links = []
168
- hash['links'].each do |structure|
169
- links << (LinkDescription.from_hash(structure) if structure)
170
- end
171
- end
172
-
173
- links = SKIP unless hash.key?('links')
174
-
175
- # Create object from extracted values.
176
- BillingPlan.new(id: id,
177
- product_id: product_id,
178
- name: name,
179
- status: status,
180
- description: description,
181
- billing_cycles: billing_cycles,
182
- payment_preferences: payment_preferences,
183
- merchant_preferences: merchant_preferences,
184
- taxes: taxes,
185
- quantity_supported: quantity_supported,
186
- create_time: create_time,
187
- update_time: update_time,
188
- links: links)
189
- end
190
-
191
- # Provides a human-readable string representation of the object.
192
- def to_s
193
- class_name = self.class.name.split('::').last
194
- "<#{class_name} id: #{@id}, product_id: #{@product_id}, name: #{@name}, status: #{@status},"\
195
- " description: #{@description}, billing_cycles: #{@billing_cycles}, payment_preferences:"\
196
- " #{@payment_preferences}, merchant_preferences: #{@merchant_preferences}, taxes: #{@taxes},"\
197
- " quantity_supported: #{@quantity_supported}, create_time: #{@create_time}, update_time:"\
198
- " #{@update_time}, links: #{@links}>"
199
- end
200
-
201
- # Provides a debugging-friendly string with detailed object information.
202
- def inspect
203
- class_name = self.class.name.split('::').last
204
- "<#{class_name} id: #{@id.inspect}, product_id: #{@product_id.inspect}, name:"\
205
- " #{@name.inspect}, status: #{@status.inspect}, description: #{@description.inspect},"\
206
- " billing_cycles: #{@billing_cycles.inspect}, payment_preferences:"\
207
- " #{@payment_preferences.inspect}, merchant_preferences: #{@merchant_preferences.inspect},"\
208
- " taxes: #{@taxes.inspect}, quantity_supported: #{@quantity_supported.inspect}, create_time:"\
209
- " #{@create_time.inspect}, update_time: #{@update_time.inspect}, links: #{@links.inspect}>"
210
- end
211
- end
212
- end
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 plan details.
8
+ class BillingPlan < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # The unique PayPal-generated ID for the plan.
13
+ # @return [String]
14
+ attr_accessor :id
15
+
16
+ # The ID for the product.
17
+ # @return [String]
18
+ attr_accessor :product_id
19
+
20
+ # The plan name.
21
+ # @return [String]
22
+ attr_accessor :name
23
+
24
+ # The plan status.
25
+ # @return [SubscriptionPlanStatus]
26
+ attr_accessor :status
27
+
28
+ # The detailed description of the plan.
29
+ # @return [String]
30
+ attr_accessor :description
31
+
32
+ # An array of billing cycles for trial billing and regular billing. A plan
33
+ # can have at most two trial cycles and only one regular cycle.
34
+ # @return [Array[SubscriptionBillingCycle]]
35
+ attr_accessor :billing_cycles
36
+
37
+ # The payment preferences for a subscription.
38
+ # @return [PaymentPreferences]
39
+ attr_accessor :payment_preferences
40
+
41
+ # The merchant preferences for a subscription.
42
+ # @return [MerchantPreferences]
43
+ attr_accessor :merchant_preferences
44
+
45
+ # The tax details.
46
+ # @return [Taxes]
47
+ attr_accessor :taxes
48
+
49
+ # Indicates whether you can subscribe to this plan by providing a quantity
50
+ # for the goods or service.
51
+ # @return [TrueClass | FalseClass]
52
+ attr_accessor :quantity_supported
53
+
54
+ # The date and time, in [Internet date and time
55
+ # format](https://tools.ietf.org/html/rfc3339#section-5.6). Seconds are
56
+ # required while fractional seconds are optional. Note: The regular
57
+ # expression provides guidance but does not reject all invalid dates.
58
+ # @return [String]
59
+ attr_accessor :create_time
60
+
61
+ # The date and time, in [Internet date and time
62
+ # format](https://tools.ietf.org/html/rfc3339#section-5.6). Seconds are
63
+ # required while fractional seconds are optional. Note: The regular
64
+ # expression provides guidance but does not reject all invalid dates.
65
+ # @return [String]
66
+ attr_accessor :update_time
67
+
68
+ # An array of request-related [HATEOAS
69
+ # links](/docs/api/reference/api-responses/#hateoas-links).
70
+ # @return [Array[LinkDescription]]
71
+ attr_accessor :links
72
+
73
+ # A mapping from model property names to API property names.
74
+ def self.names
75
+ @_hash = {} if @_hash.nil?
76
+ @_hash['id'] = 'id'
77
+ @_hash['product_id'] = 'product_id'
78
+ @_hash['name'] = 'name'
79
+ @_hash['status'] = 'status'
80
+ @_hash['description'] = 'description'
81
+ @_hash['billing_cycles'] = 'billing_cycles'
82
+ @_hash['payment_preferences'] = 'payment_preferences'
83
+ @_hash['merchant_preferences'] = 'merchant_preferences'
84
+ @_hash['taxes'] = 'taxes'
85
+ @_hash['quantity_supported'] = 'quantity_supported'
86
+ @_hash['create_time'] = 'create_time'
87
+ @_hash['update_time'] = 'update_time'
88
+ @_hash['links'] = 'links'
89
+ @_hash
90
+ end
91
+
92
+ # An array for optional fields
93
+ def self.optionals
94
+ %w[
95
+ id
96
+ product_id
97
+ name
98
+ status
99
+ description
100
+ billing_cycles
101
+ payment_preferences
102
+ merchant_preferences
103
+ taxes
104
+ quantity_supported
105
+ create_time
106
+ update_time
107
+ links
108
+ ]
109
+ end
110
+
111
+ # An array for nullable fields
112
+ def self.nullables
113
+ []
114
+ end
115
+
116
+ def initialize(id: SKIP, product_id: SKIP, name: SKIP, status: SKIP,
117
+ description: SKIP, billing_cycles: SKIP,
118
+ payment_preferences: SKIP, merchant_preferences: SKIP,
119
+ taxes: SKIP, quantity_supported: false, create_time: SKIP,
120
+ update_time: SKIP, links: SKIP)
121
+ @id = id unless id == SKIP
122
+ @product_id = product_id unless product_id == SKIP
123
+ @name = name unless name == SKIP
124
+ @status = status unless status == SKIP
125
+ @description = description unless description == SKIP
126
+ @billing_cycles = billing_cycles unless billing_cycles == SKIP
127
+ @payment_preferences = payment_preferences unless payment_preferences == SKIP
128
+ @merchant_preferences = merchant_preferences unless merchant_preferences == SKIP
129
+ @taxes = taxes unless taxes == SKIP
130
+ @quantity_supported = quantity_supported unless quantity_supported == SKIP
131
+ @create_time = create_time unless create_time == SKIP
132
+ @update_time = update_time unless update_time == SKIP
133
+ @links = links unless links == SKIP
134
+ end
135
+
136
+ # Creates an instance of the object from a hash.
137
+ def self.from_hash(hash)
138
+ return nil unless hash
139
+
140
+ # Extract variables from the hash.
141
+ id = hash.key?('id') ? hash['id'] : SKIP
142
+ product_id = hash.key?('product_id') ? hash['product_id'] : SKIP
143
+ name = hash.key?('name') ? hash['name'] : SKIP
144
+ status = hash.key?('status') ? hash['status'] : SKIP
145
+ description = hash.key?('description') ? hash['description'] : SKIP
146
+ # Parameter is an array, so we need to iterate through it
147
+ billing_cycles = nil
148
+ unless hash['billing_cycles'].nil?
149
+ billing_cycles = []
150
+ hash['billing_cycles'].each do |structure|
151
+ billing_cycles << (SubscriptionBillingCycle.from_hash(structure) if structure)
152
+ end
153
+ end
154
+
155
+ billing_cycles = SKIP unless hash.key?('billing_cycles')
156
+ payment_preferences = PaymentPreferences.from_hash(hash['payment_preferences']) if
157
+ hash['payment_preferences']
158
+ merchant_preferences = MerchantPreferences.from_hash(hash['merchant_preferences']) if
159
+ hash['merchant_preferences']
160
+ taxes = Taxes.from_hash(hash['taxes']) if hash['taxes']
161
+ quantity_supported = hash['quantity_supported'] ||= false
162
+ create_time = hash.key?('create_time') ? hash['create_time'] : SKIP
163
+ update_time = hash.key?('update_time') ? hash['update_time'] : SKIP
164
+ # Parameter is an array, so we need to iterate through it
165
+ links = nil
166
+ unless hash['links'].nil?
167
+ links = []
168
+ hash['links'].each do |structure|
169
+ links << (LinkDescription.from_hash(structure) if structure)
170
+ end
171
+ end
172
+
173
+ links = SKIP unless hash.key?('links')
174
+
175
+ # Create object from extracted values.
176
+ BillingPlan.new(id: id,
177
+ product_id: product_id,
178
+ name: name,
179
+ status: status,
180
+ description: description,
181
+ billing_cycles: billing_cycles,
182
+ payment_preferences: payment_preferences,
183
+ merchant_preferences: merchant_preferences,
184
+ taxes: taxes,
185
+ quantity_supported: quantity_supported,
186
+ create_time: create_time,
187
+ update_time: update_time,
188
+ links: links)
189
+ end
190
+
191
+ # Provides a human-readable string representation of the object.
192
+ def to_s
193
+ class_name = self.class.name.split('::').last
194
+ "<#{class_name} id: #{@id}, product_id: #{@product_id}, name: #{@name}, status: #{@status},"\
195
+ " description: #{@description}, billing_cycles: #{@billing_cycles}, payment_preferences:"\
196
+ " #{@payment_preferences}, merchant_preferences: #{@merchant_preferences}, taxes: #{@taxes},"\
197
+ " quantity_supported: #{@quantity_supported}, create_time: #{@create_time}, update_time:"\
198
+ " #{@update_time}, links: #{@links}>"
199
+ end
200
+
201
+ # Provides a debugging-friendly string with detailed object information.
202
+ def inspect
203
+ class_name = self.class.name.split('::').last
204
+ "<#{class_name} id: #{@id.inspect}, product_id: #{@product_id.inspect}, name:"\
205
+ " #{@name.inspect}, status: #{@status.inspect}, description: #{@description.inspect},"\
206
+ " billing_cycles: #{@billing_cycles.inspect}, payment_preferences:"\
207
+ " #{@payment_preferences.inspect}, merchant_preferences: #{@merchant_preferences.inspect},"\
208
+ " taxes: #{@taxes.inspect}, quantity_supported: #{@quantity_supported.inspect}, create_time:"\
209
+ " #{@create_time.inspect}, update_time: #{@update_time.inspect}, links: #{@links.inspect}>"
210
+ end
211
+ end
212
+ end