cli-sdk 1.0.0 → 10.0.1

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 (408) hide show
  1. checksums.yaml +4 -4
  2. data/LICENSE +35 -28
  3. data/README.md +166 -111
  4. data/bin/console +4 -4
  5. data/lib/paypal_server_sdk/api_helper.rb +10 -0
  6. data/lib/paypal_server_sdk/client.rb +110 -0
  7. data/lib/{apimatic_calculator → paypal_server_sdk}/configuration.rb +134 -115
  8. data/lib/{apimatic_calculator → paypal_server_sdk}/controllers/base_controller.rb +58 -53
  9. data/lib/paypal_server_sdk/controllers/o_auth_authorization_controller.rb +42 -0
  10. data/lib/paypal_server_sdk/controllers/orders_controller.rb +551 -0
  11. data/lib/paypal_server_sdk/controllers/payments_controller.rb +462 -0
  12. data/lib/paypal_server_sdk/controllers/subscriptions_controller.rb +843 -0
  13. data/lib/paypal_server_sdk/controllers/transaction_search_controller.rb +178 -0
  14. data/lib/paypal_server_sdk/controllers/vault_controller.rb +224 -0
  15. data/lib/{apimatic_calculator → paypal_server_sdk}/exceptions/api_exception.rb +21 -21
  16. data/lib/paypal_server_sdk/exceptions/default_error_exception.rb +95 -0
  17. data/lib/paypal_server_sdk/exceptions/error_exception.rb +87 -0
  18. data/lib/paypal_server_sdk/exceptions/o_auth_provider_exception.rb +64 -0
  19. data/lib/paypal_server_sdk/exceptions/search_error_exception.rb +107 -0
  20. data/lib/paypal_server_sdk/exceptions/subscription_error_exception.rb +95 -0
  21. data/lib/paypal_server_sdk/http/api_response.rb +19 -0
  22. data/lib/paypal_server_sdk/http/auth/o_auth2.rb +151 -0
  23. data/lib/paypal_server_sdk/http/http_call_back.rb +10 -0
  24. data/lib/paypal_server_sdk/http/http_method_enum.rb +10 -0
  25. data/lib/paypal_server_sdk/http/http_request.rb +10 -0
  26. data/lib/paypal_server_sdk/http/http_response.rb +10 -0
  27. data/lib/{apimatic_calculator → paypal_server_sdk}/http/proxy_settings.rb +6 -6
  28. data/lib/paypal_server_sdk/logging/configuration/api_logging_configuration.rb +186 -0
  29. data/lib/paypal_server_sdk/logging/sdk_logger.rb +17 -0
  30. data/lib/paypal_server_sdk/models/activate_subscription_request.rb +63 -0
  31. data/lib/paypal_server_sdk/models/activity_timestamps.rb +79 -0
  32. data/lib/paypal_server_sdk/models/address.rb +132 -0
  33. data/lib/paypal_server_sdk/models/amount_breakdown.rb +132 -0
  34. data/lib/paypal_server_sdk/models/amount_with_breakdown.rb +94 -0
  35. data/lib/paypal_server_sdk/models/app_switch_context.rb +74 -0
  36. data/lib/paypal_server_sdk/models/apple_pay_attributes.rb +73 -0
  37. data/lib/paypal_server_sdk/models/apple_pay_attributes_response.rb +62 -0
  38. data/lib/paypal_server_sdk/models/apple_pay_card.rb +108 -0
  39. data/lib/paypal_server_sdk/models/apple_pay_card_response.rb +210 -0
  40. data/lib/paypal_server_sdk/models/apple_pay_decrypted_token_data.rb +111 -0
  41. data/lib/paypal_server_sdk/models/apple_pay_experience_context.rb +68 -0
  42. data/lib/paypal_server_sdk/models/apple_pay_payment_data.rb +97 -0
  43. data/lib/paypal_server_sdk/models/apple_pay_payment_data_type.rb +41 -0
  44. data/lib/paypal_server_sdk/models/apple_pay_payment_object.rb +150 -0
  45. data/lib/paypal_server_sdk/models/apple_pay_payment_token.rb +63 -0
  46. data/lib/paypal_server_sdk/models/apple_pay_request.rb +165 -0
  47. data/lib/paypal_server_sdk/models/apple_pay_request_card.rb +88 -0
  48. data/lib/paypal_server_sdk/models/apple_pay_tokenized_card.rb +127 -0
  49. data/lib/paypal_server_sdk/models/application_context_user_action.rb +42 -0
  50. data/lib/paypal_server_sdk/models/assurance_details.rb +82 -0
  51. data/lib/paypal_server_sdk/models/auction_information.rb +100 -0
  52. data/lib/paypal_server_sdk/models/authentication_response.rb +74 -0
  53. data/lib/paypal_server_sdk/models/authorization.rb +211 -0
  54. data/lib/paypal_server_sdk/models/authorization_incomplete_reason.rb +36 -0
  55. data/lib/paypal_server_sdk/models/authorization_status.rb +58 -0
  56. data/lib/paypal_server_sdk/models/authorization_status_details.rb +62 -0
  57. data/lib/paypal_server_sdk/models/authorization_status_with_details.rb +72 -0
  58. data/lib/paypal_server_sdk/models/authorization_with_additional_data.rb +225 -0
  59. data/lib/paypal_server_sdk/models/avs_code.rb +156 -0
  60. data/lib/paypal_server_sdk/models/balance_information.rb +106 -0
  61. data/lib/paypal_server_sdk/models/balances_response.rb +111 -0
  62. data/lib/paypal_server_sdk/models/bancontact_payment_object.rb +110 -0
  63. data/lib/paypal_server_sdk/models/bancontact_payment_request.rb +87 -0
  64. data/lib/paypal_server_sdk/models/bank_request.rb +71 -0
  65. data/lib/{apimatic_calculator → paypal_server_sdk}/models/base_model.rb +110 -110
  66. data/lib/paypal_server_sdk/models/billing_cycle.rb +118 -0
  67. data/lib/paypal_server_sdk/models/billing_cycle_override.rb +91 -0
  68. data/lib/paypal_server_sdk/models/billing_plan.rb +212 -0
  69. data/lib/paypal_server_sdk/models/bin_details.rb +102 -0
  70. data/lib/paypal_server_sdk/models/blik_experience_context.rb +142 -0
  71. data/lib/paypal_server_sdk/models/blik_level0_payment_object.rb +60 -0
  72. data/lib/paypal_server_sdk/models/blik_one_click_payment_object.rb +64 -0
  73. data/lib/paypal_server_sdk/models/blik_one_click_payment_request.rb +97 -0
  74. data/lib/paypal_server_sdk/models/blik_payment_object.rb +99 -0
  75. data/lib/paypal_server_sdk/models/blik_payment_request.rb +120 -0
  76. data/lib/paypal_server_sdk/models/callback_configuration.rb +74 -0
  77. data/lib/paypal_server_sdk/models/callback_events.rb +40 -0
  78. data/lib/paypal_server_sdk/models/cancel_subscription_request.rb +60 -0
  79. data/lib/paypal_server_sdk/models/capture_incomplete_reason.rb +86 -0
  80. data/lib/paypal_server_sdk/models/capture_payment_instruction.rb +104 -0
  81. data/lib/paypal_server_sdk/models/capture_request.rb +126 -0
  82. data/lib/paypal_server_sdk/models/capture_status.rb +56 -0
  83. data/lib/paypal_server_sdk/models/capture_status_details.rb +62 -0
  84. data/lib/paypal_server_sdk/models/capture_status_with_details.rb +72 -0
  85. data/lib/paypal_server_sdk/models/capture_subscription_request.rb +78 -0
  86. data/lib/paypal_server_sdk/models/capture_type.rb +26 -0
  87. data/lib/paypal_server_sdk/models/captured_payment.rb +274 -0
  88. data/lib/paypal_server_sdk/models/card_attributes.rb +83 -0
  89. data/lib/paypal_server_sdk/models/card_attributes_response.rb +62 -0
  90. data/lib/paypal_server_sdk/models/card_authentication_response.rb +63 -0
  91. data/lib/paypal_server_sdk/models/card_brand.rb +153 -0
  92. data/lib/paypal_server_sdk/models/card_customer.rb +98 -0
  93. data/lib/paypal_server_sdk/models/card_customer_information.rb +108 -0
  94. data/lib/paypal_server_sdk/models/card_experience_context.rb +71 -0
  95. data/lib/paypal_server_sdk/models/card_from_request.rb +72 -0
  96. data/lib/paypal_server_sdk/models/card_payment_token_entity.rb +178 -0
  97. data/lib/paypal_server_sdk/models/card_request.rb +191 -0
  98. data/lib/paypal_server_sdk/models/card_response.rb +180 -0
  99. data/lib/paypal_server_sdk/models/card_response_address.rb +137 -0
  100. data/lib/paypal_server_sdk/models/card_response_with_billing_address.rb +101 -0
  101. data/lib/paypal_server_sdk/models/card_stored_credential.rb +111 -0
  102. data/lib/paypal_server_sdk/models/card_supplementary_data.rb +79 -0
  103. data/lib/paypal_server_sdk/models/card_type.rb +48 -0
  104. data/lib/paypal_server_sdk/models/card_vault_response.rb +99 -0
  105. data/lib/paypal_server_sdk/models/card_verification.rb +64 -0
  106. data/lib/paypal_server_sdk/models/card_verification_details.rb +140 -0
  107. data/lib/paypal_server_sdk/models/card_verification_processor_response.rb +74 -0
  108. data/lib/paypal_server_sdk/models/card_verification_status.rb +36 -0
  109. data/lib/paypal_server_sdk/models/cart_information.rb +94 -0
  110. data/lib/paypal_server_sdk/models/checkout_option.rb +77 -0
  111. data/lib/paypal_server_sdk/models/checkout_payment_intent.rb +45 -0
  112. data/lib/paypal_server_sdk/models/cobranded_card.rb +83 -0
  113. data/lib/paypal_server_sdk/models/confirm_order_request.rb +85 -0
  114. data/lib/paypal_server_sdk/models/create_subscription_request.rb +151 -0
  115. data/lib/paypal_server_sdk/models/customer.rb +76 -0
  116. data/lib/paypal_server_sdk/models/customer_information.rb +95 -0
  117. data/lib/paypal_server_sdk/models/customer_response.rb +75 -0
  118. data/lib/paypal_server_sdk/models/customer_vault_payment_tokens_response.rb +123 -0
  119. data/lib/paypal_server_sdk/models/cvv_code.rb +93 -0
  120. data/lib/paypal_server_sdk/models/cycle_execution.rb +124 -0
  121. data/lib/paypal_server_sdk/models/disbursement_mode.rb +39 -0
  122. data/lib/paypal_server_sdk/models/dispute_category.rb +36 -0
  123. data/lib/paypal_server_sdk/models/eci_flag.rb +54 -0
  124. data/lib/paypal_server_sdk/models/enrollment_status.rb +47 -0
  125. data/lib/paypal_server_sdk/models/eps_payment_object.rb +87 -0
  126. data/lib/paypal_server_sdk/models/eps_payment_request.rb +87 -0
  127. data/lib/paypal_server_sdk/models/error_details.rb +125 -0
  128. data/lib/paypal_server_sdk/models/exchange_rate.rb +91 -0
  129. data/lib/paypal_server_sdk/models/experience_context.rb +116 -0
  130. data/lib/paypal_server_sdk/models/experience_context_shipping_preference.rb +46 -0
  131. data/lib/paypal_server_sdk/models/experience_status.rb +48 -0
  132. data/lib/paypal_server_sdk/models/failed_payment_details.rb +98 -0
  133. data/lib/paypal_server_sdk/models/frequency.rb +75 -0
  134. data/lib/paypal_server_sdk/models/fulfillment_type.rb +51 -0
  135. data/lib/paypal_server_sdk/models/giropay_payment_object.rb +87 -0
  136. data/lib/paypal_server_sdk/models/giropay_payment_request.rb +87 -0
  137. data/lib/paypal_server_sdk/models/google_pay_authentication_method.rb +42 -0
  138. data/lib/paypal_server_sdk/models/google_pay_card.rb +128 -0
  139. data/lib/paypal_server_sdk/models/google_pay_card_response.rb +120 -0
  140. data/lib/paypal_server_sdk/models/google_pay_decrypted_token_data.rb +131 -0
  141. data/lib/paypal_server_sdk/models/google_pay_experience_context.rb +68 -0
  142. data/lib/paypal_server_sdk/models/google_pay_payment_method.rb +26 -0
  143. data/lib/paypal_server_sdk/models/google_pay_request.rb +136 -0
  144. data/lib/paypal_server_sdk/models/google_pay_request_card.rb +98 -0
  145. data/lib/paypal_server_sdk/models/google_pay_wallet_response.rb +98 -0
  146. data/lib/paypal_server_sdk/models/ideal_payment_object.rb +99 -0
  147. data/lib/paypal_server_sdk/models/ideal_payment_request.rb +97 -0
  148. data/lib/paypal_server_sdk/models/incentive_details.rb +99 -0
  149. data/lib/paypal_server_sdk/models/incentive_information.rb +71 -0
  150. data/lib/paypal_server_sdk/models/interval_unit.rb +44 -0
  151. data/lib/paypal_server_sdk/models/item.rb +161 -0
  152. data/lib/paypal_server_sdk/models/item_category.rb +43 -0
  153. data/lib/paypal_server_sdk/models/item_details.rb +287 -0
  154. data/lib/paypal_server_sdk/models/item_request.rb +163 -0
  155. data/lib/paypal_server_sdk/models/last_payment_details.rb +75 -0
  156. data/lib/paypal_server_sdk/models/level2_card_processing_data.rb +78 -0
  157. data/lib/paypal_server_sdk/models/level3_card_processing_data.rb +137 -0
  158. data/lib/paypal_server_sdk/models/liability_shift_indicator.rb +40 -0
  159. data/lib/paypal_server_sdk/models/line_item.rb +209 -0
  160. data/lib/paypal_server_sdk/models/link_description.rb +92 -0
  161. data/lib/paypal_server_sdk/models/link_http_method.rb +60 -0
  162. data/lib/paypal_server_sdk/models/merchant_preferences.rb +73 -0
  163. data/lib/paypal_server_sdk/models/mobile_return_flow.rb +41 -0
  164. data/lib/paypal_server_sdk/models/mobile_web_context.rb +76 -0
  165. data/lib/paypal_server_sdk/models/modify_subscription_request.rb +124 -0
  166. data/lib/paypal_server_sdk/models/modify_subscription_response.rb +141 -0
  167. data/lib/paypal_server_sdk/models/money.rb +75 -0
  168. data/lib/paypal_server_sdk/models/mybank_payment_object.rb +99 -0
  169. data/lib/paypal_server_sdk/models/mybank_payment_request.rb +87 -0
  170. data/lib/paypal_server_sdk/models/name.rb +73 -0
  171. data/lib/paypal_server_sdk/models/native_app_context.rb +72 -0
  172. data/lib/paypal_server_sdk/models/net_amount_breakdown_item.rb +87 -0
  173. data/lib/paypal_server_sdk/models/network_token.rb +110 -0
  174. data/lib/paypal_server_sdk/models/network_transaction.rb +107 -0
  175. data/lib/paypal_server_sdk/models/network_transaction_reference_entity.rb +100 -0
  176. data/lib/paypal_server_sdk/models/o_auth_provider_error.rb +62 -0
  177. data/lib/paypal_server_sdk/models/o_auth_token.rb +106 -0
  178. data/lib/paypal_server_sdk/models/one_time_charge.rb +118 -0
  179. data/lib/paypal_server_sdk/models/order.rb +197 -0
  180. data/lib/paypal_server_sdk/models/order_application_context.rb +219 -0
  181. data/lib/paypal_server_sdk/models/order_application_context_landing_page.rb +53 -0
  182. data/lib/paypal_server_sdk/models/order_application_context_shipping_preference.rb +50 -0
  183. data/lib/paypal_server_sdk/models/order_application_context_user_action.rb +47 -0
  184. data/lib/paypal_server_sdk/models/order_authorize_request.rb +63 -0
  185. data/lib/paypal_server_sdk/models/order_authorize_request_payment_source.rb +115 -0
  186. data/lib/paypal_server_sdk/models/order_authorize_response.rb +194 -0
  187. data/lib/paypal_server_sdk/models/order_authorize_response_payment_source.rb +102 -0
  188. data/lib/paypal_server_sdk/models/order_billing_plan.rb +93 -0
  189. data/lib/paypal_server_sdk/models/order_capture_request.rb +63 -0
  190. data/lib/paypal_server_sdk/models/order_capture_request_payment_source.rb +115 -0
  191. data/lib/paypal_server_sdk/models/order_confirm_application_context.rb +123 -0
  192. data/lib/paypal_server_sdk/models/order_request.rb +132 -0
  193. data/lib/paypal_server_sdk/models/order_status.rb +65 -0
  194. data/lib/paypal_server_sdk/models/order_tracker_item.rb +114 -0
  195. data/lib/paypal_server_sdk/models/order_tracker_request.rb +133 -0
  196. data/lib/paypal_server_sdk/models/order_tracker_response.rb +135 -0
  197. data/lib/paypal_server_sdk/models/order_tracker_status.rb +39 -0
  198. data/lib/paypal_server_sdk/models/orders_capture.rb +252 -0
  199. data/lib/paypal_server_sdk/models/orders_card_verification_method.rb +66 -0
  200. data/lib/paypal_server_sdk/models/os_type.rb +40 -0
  201. data/lib/paypal_server_sdk/models/p24_payment_object.rb +123 -0
  202. data/lib/paypal_server_sdk/models/p24_payment_request.rb +98 -0
  203. data/lib/paypal_server_sdk/models/pa_res_status.rb +61 -0
  204. data/lib/paypal_server_sdk/models/participant_metadata.rb +64 -0
  205. data/lib/paypal_server_sdk/models/patch.rb +93 -0
  206. data/lib/paypal_server_sdk/models/patch_op.rb +89 -0
  207. data/lib/paypal_server_sdk/models/payee_base.rb +76 -0
  208. data/lib/paypal_server_sdk/models/payee_payment_method_preference.rb +38 -0
  209. data/lib/paypal_server_sdk/models/payer.rb +136 -0
  210. data/lib/paypal_server_sdk/models/payer_base.rb +75 -0
  211. data/lib/paypal_server_sdk/models/payer_information.rb +146 -0
  212. data/lib/paypal_server_sdk/models/payer_name.rb +128 -0
  213. data/lib/paypal_server_sdk/models/payment_advice_code.rb +101 -0
  214. data/lib/paypal_server_sdk/models/payment_authorization.rb +233 -0
  215. data/lib/paypal_server_sdk/models/payment_collection.rb +113 -0
  216. data/lib/paypal_server_sdk/models/payment_initiator.rb +39 -0
  217. data/lib/paypal_server_sdk/models/payment_instruction.rb +121 -0
  218. data/lib/paypal_server_sdk/models/payment_method.rb +63 -0
  219. data/lib/paypal_server_sdk/models/payment_method_preference.rb +86 -0
  220. data/lib/paypal_server_sdk/models/payment_preferences.rb +105 -0
  221. data/lib/paypal_server_sdk/models/payment_preferences_override.rb +107 -0
  222. data/lib/paypal_server_sdk/models/payment_source.rb +203 -0
  223. data/lib/paypal_server_sdk/models/payment_source_response.rb +190 -0
  224. data/lib/paypal_server_sdk/models/payment_supplementary_data.rb +62 -0
  225. data/lib/paypal_server_sdk/models/payment_token_request.rb +74 -0
  226. data/lib/paypal_server_sdk/models/payment_token_request_card.rb +120 -0
  227. data/lib/paypal_server_sdk/models/payment_token_request_payment_source.rb +71 -0
  228. data/lib/paypal_server_sdk/models/payment_token_response.rb +104 -0
  229. data/lib/paypal_server_sdk/models/payment_token_response_payment_source.rb +91 -0
  230. data/lib/paypal_server_sdk/models/payment_token_status.rb +52 -0
  231. data/lib/paypal_server_sdk/models/payments_capture.rb +252 -0
  232. data/lib/paypal_server_sdk/models/paypal_experience_landing_page.rb +56 -0
  233. data/lib/paypal_server_sdk/models/paypal_experience_user_action.rb +42 -0
  234. data/lib/paypal_server_sdk/models/paypal_payment_token.rb +211 -0
  235. data/lib/paypal_server_sdk/models/paypal_payment_token_customer_type.rb +42 -0
  236. data/lib/paypal_server_sdk/models/paypal_payment_token_usage_type.rb +40 -0
  237. data/lib/paypal_server_sdk/models/paypal_reference_id_type.rb +44 -0
  238. data/lib/paypal_server_sdk/models/paypal_wallet.rb +188 -0
  239. data/lib/paypal_server_sdk/models/paypal_wallet_account_verification_status.rb +41 -0
  240. data/lib/paypal_server_sdk/models/paypal_wallet_attributes.rb +71 -0
  241. data/lib/paypal_server_sdk/models/paypal_wallet_attributes_response.rb +82 -0
  242. data/lib/paypal_server_sdk/models/paypal_wallet_contact_preference.rb +48 -0
  243. data/lib/paypal_server_sdk/models/paypal_wallet_context_shipping_preference.rb +45 -0
  244. data/lib/paypal_server_sdk/models/paypal_wallet_customer.rb +108 -0
  245. data/lib/paypal_server_sdk/models/paypal_wallet_customer_request.rb +108 -0
  246. data/lib/paypal_server_sdk/models/paypal_wallet_experience_context.rb +201 -0
  247. data/lib/paypal_server_sdk/models/paypal_wallet_response.rb +213 -0
  248. data/lib/paypal_server_sdk/models/paypal_wallet_stored_credential.rb +99 -0
  249. data/lib/paypal_server_sdk/models/paypal_wallet_vault_base.rb +134 -0
  250. data/lib/paypal_server_sdk/models/paypal_wallet_vault_instruction.rb +132 -0
  251. data/lib/paypal_server_sdk/models/paypal_wallet_vault_response.rb +99 -0
  252. data/lib/paypal_server_sdk/models/paypal_wallet_vault_status.rb +45 -0
  253. data/lib/paypal_server_sdk/models/phone.rb +91 -0
  254. data/lib/paypal_server_sdk/models/phone_number.rb +68 -0
  255. data/lib/paypal_server_sdk/models/phone_number_with_country_code.rb +83 -0
  256. data/lib/paypal_server_sdk/models/phone_number_with_optional_country_code.rb +81 -0
  257. data/lib/paypal_server_sdk/models/phone_type.rb +48 -0
  258. data/lib/paypal_server_sdk/models/phone_with_type.rb +72 -0
  259. data/lib/paypal_server_sdk/models/plan.rb +92 -0
  260. data/lib/paypal_server_sdk/models/plan_collection.rb +111 -0
  261. data/lib/paypal_server_sdk/models/plan_details.rb +147 -0
  262. data/lib/paypal_server_sdk/models/plan_override.rb +96 -0
  263. data/lib/paypal_server_sdk/models/plan_request.rb +154 -0
  264. data/lib/paypal_server_sdk/models/plan_request_status.rb +42 -0
  265. data/lib/paypal_server_sdk/models/platform_fee.rb +75 -0
  266. data/lib/paypal_server_sdk/models/pricing_model.rb +42 -0
  267. data/lib/paypal_server_sdk/models/pricing_scheme.rb +84 -0
  268. data/lib/paypal_server_sdk/models/pricing_tier.rb +83 -0
  269. data/lib/paypal_server_sdk/models/processing_instruction.rb +33 -0
  270. data/lib/paypal_server_sdk/models/processor_response.rb +98 -0
  271. data/lib/paypal_server_sdk/models/processor_response_code.rb +648 -0
  272. data/lib/paypal_server_sdk/models/purchase_unit.rb +245 -0
  273. data/lib/paypal_server_sdk/models/purchase_unit_request.rb +219 -0
  274. data/lib/paypal_server_sdk/models/reason_code.rb +60 -0
  275. data/lib/paypal_server_sdk/models/reauthorize_request.rb +72 -0
  276. data/lib/paypal_server_sdk/models/refund.rb +214 -0
  277. data/lib/paypal_server_sdk/models/refund_incomplete_reason.rb +27 -0
  278. data/lib/paypal_server_sdk/models/refund_payment_instruction.rb +80 -0
  279. data/lib/paypal_server_sdk/models/refund_platform_fee.rb +64 -0
  280. data/lib/paypal_server_sdk/models/refund_request.rb +115 -0
  281. data/lib/paypal_server_sdk/models/refund_status.rb +44 -0
  282. data/lib/paypal_server_sdk/models/refund_status_details.rb +62 -0
  283. data/lib/paypal_server_sdk/models/refund_status_with_details.rb +72 -0
  284. data/lib/paypal_server_sdk/models/related_identifiers.rb +83 -0
  285. data/lib/paypal_server_sdk/models/return_flow.rb +41 -0
  286. data/lib/paypal_server_sdk/models/risk_supplementary_data.rb +63 -0
  287. data/lib/paypal_server_sdk/models/search_response.rb +176 -0
  288. data/lib/paypal_server_sdk/models/seller_payable_breakdown.rb +177 -0
  289. data/lib/paypal_server_sdk/models/seller_protection.rb +78 -0
  290. data/lib/paypal_server_sdk/models/seller_protection_status.rb +46 -0
  291. data/lib/paypal_server_sdk/models/seller_receivable_breakdown.rb +147 -0
  292. data/lib/paypal_server_sdk/models/sepa_debit_experience_context.rb +89 -0
  293. data/lib/paypal_server_sdk/models/sepa_debit_request.rb +64 -0
  294. data/lib/paypal_server_sdk/models/setup_fee_failure_action.rb +37 -0
  295. data/lib/paypal_server_sdk/models/setup_token_request.rb +74 -0
  296. data/lib/paypal_server_sdk/models/setup_token_request_card.rb +143 -0
  297. data/lib/paypal_server_sdk/models/setup_token_request_payment_source.rb +111 -0
  298. data/lib/paypal_server_sdk/models/setup_token_response.rb +116 -0
  299. data/lib/paypal_server_sdk/models/setup_token_response_card.rb +178 -0
  300. data/lib/paypal_server_sdk/models/setup_token_response_payment_source.rb +81 -0
  301. data/lib/paypal_server_sdk/models/shipment_carrier.rb +5686 -0
  302. data/lib/paypal_server_sdk/models/shipping_details.rb +133 -0
  303. data/lib/paypal_server_sdk/models/shipping_information.rb +101 -0
  304. data/lib/paypal_server_sdk/models/shipping_name.rb +62 -0
  305. data/lib/paypal_server_sdk/models/shipping_option.rb +108 -0
  306. data/lib/paypal_server_sdk/models/shipping_type.rb +52 -0
  307. data/lib/paypal_server_sdk/models/shipping_with_tracking_details.rb +152 -0
  308. data/lib/paypal_server_sdk/models/simple_postal_address_coarse_grained.rb +130 -0
  309. data/lib/paypal_server_sdk/models/sofort_payment_object.rb +99 -0
  310. data/lib/paypal_server_sdk/models/sofort_payment_request.rb +87 -0
  311. data/lib/paypal_server_sdk/models/standard_entry_class_code.rb +59 -0
  312. data/lib/paypal_server_sdk/models/store_in_vault_instruction.rb +27 -0
  313. data/lib/paypal_server_sdk/models/store_information.rb +71 -0
  314. data/lib/paypal_server_sdk/models/stored_payment_source.rb +111 -0
  315. data/lib/paypal_server_sdk/models/stored_payment_source_payment_type.rb +43 -0
  316. data/lib/paypal_server_sdk/models/stored_payment_source_usage_type.rb +44 -0
  317. data/lib/paypal_server_sdk/models/subscriber.rb +107 -0
  318. data/lib/paypal_server_sdk/models/subscriber_request.rb +120 -0
  319. data/lib/paypal_server_sdk/models/subscription.rb +205 -0
  320. data/lib/paypal_server_sdk/models/subscription_amount_with_breakdown.rb +119 -0
  321. data/lib/paypal_server_sdk/models/subscription_application_context.rb +134 -0
  322. data/lib/paypal_server_sdk/models/subscription_billing_cycle.rb +108 -0
  323. data/lib/paypal_server_sdk/models/subscription_billing_information.rb +148 -0
  324. data/lib/paypal_server_sdk/models/subscription_card_request.rb +141 -0
  325. data/lib/paypal_server_sdk/models/subscription_collection.rb +90 -0
  326. data/lib/paypal_server_sdk/models/subscription_customer_information.rb +84 -0
  327. data/lib/paypal_server_sdk/models/subscription_patch_application_context.rb +122 -0
  328. data/lib/paypal_server_sdk/models/subscription_payer.rb +85 -0
  329. data/lib/paypal_server_sdk/models/subscription_payer_name.rb +114 -0
  330. data/lib/paypal_server_sdk/models/subscription_payment_source.rb +65 -0
  331. data/lib/paypal_server_sdk/models/subscription_payment_source_response.rb +63 -0
  332. data/lib/paypal_server_sdk/models/subscription_plan_status.rb +42 -0
  333. data/lib/paypal_server_sdk/models/subscription_pricing_model.rb +36 -0
  334. data/lib/paypal_server_sdk/models/subscription_pricing_scheme.rb +129 -0
  335. data/lib/paypal_server_sdk/models/subscription_transaction_details.rb +118 -0
  336. data/lib/paypal_server_sdk/models/subscriptions_card_attributes.rb +83 -0
  337. data/lib/paypal_server_sdk/models/subscriptions_card_brand.rb +133 -0
  338. data/lib/paypal_server_sdk/models/supplementary_data.rb +76 -0
  339. data/lib/paypal_server_sdk/models/suspend_subscription.rb +60 -0
  340. data/lib/paypal_server_sdk/models/tax_amount.rb +63 -0
  341. data/lib/paypal_server_sdk/models/tax_id_type.rb +36 -0
  342. data/lib/paypal_server_sdk/models/tax_info.rb +69 -0
  343. data/lib/paypal_server_sdk/models/taxes.rb +71 -0
  344. data/lib/paypal_server_sdk/models/taxes_override.rb +72 -0
  345. data/lib/paypal_server_sdk/models/tenure_type.rb +43 -0
  346. data/lib/paypal_server_sdk/models/three_d_secure_authentication_response.rb +76 -0
  347. data/lib/paypal_server_sdk/models/three_d_secure_card_authentication_response.rb +89 -0
  348. data/lib/paypal_server_sdk/models/token.rb +68 -0
  349. data/lib/paypal_server_sdk/models/token_type.rb +27 -0
  350. data/lib/paypal_server_sdk/models/transaction_details.rb +125 -0
  351. data/lib/paypal_server_sdk/models/transaction_information.rb +494 -0
  352. data/lib/paypal_server_sdk/models/transaction_search_error_details.rb +103 -0
  353. data/lib/paypal_server_sdk/models/transactions_list.rb +111 -0
  354. data/lib/paypal_server_sdk/models/trustly_payment_object.rb +111 -0
  355. data/lib/paypal_server_sdk/models/trustly_payment_request.rb +98 -0
  356. data/lib/paypal_server_sdk/models/universal_product_code.rb +68 -0
  357. data/lib/paypal_server_sdk/models/upc_type.rb +56 -0
  358. data/lib/paypal_server_sdk/models/update_pricing_scheme.rb +72 -0
  359. data/lib/paypal_server_sdk/models/update_pricing_schemes_request.rb +69 -0
  360. data/lib/paypal_server_sdk/models/usage_pattern.rb +95 -0
  361. data/lib/paypal_server_sdk/models/usage_type.rb +39 -0
  362. data/lib/paypal_server_sdk/models/vault_apple_pay_request.rb +73 -0
  363. data/lib/paypal_server_sdk/models/vault_card_experience_context.rb +129 -0
  364. data/lib/paypal_server_sdk/models/vault_card_verification_method.rb +52 -0
  365. data/lib/paypal_server_sdk/models/vault_customer.rb +72 -0
  366. data/lib/paypal_server_sdk/models/vault_experience_context.rb +155 -0
  367. data/lib/paypal_server_sdk/models/vault_instruction.rb +62 -0
  368. data/lib/paypal_server_sdk/models/vault_instruction_action.rb +39 -0
  369. data/lib/paypal_server_sdk/models/vault_instruction_base.rb +64 -0
  370. data/lib/paypal_server_sdk/models/vault_paypal_wallet_request.rb +154 -0
  371. data/lib/paypal_server_sdk/models/vault_response.rb +100 -0
  372. data/lib/paypal_server_sdk/models/vault_response_customer.rb +86 -0
  373. data/lib/paypal_server_sdk/models/vault_status.rb +45 -0
  374. data/lib/paypal_server_sdk/models/vault_token_request.rb +68 -0
  375. data/lib/paypal_server_sdk/models/vault_token_request_type.rb +26 -0
  376. data/lib/paypal_server_sdk/models/vault_user_action.rb +42 -0
  377. data/lib/paypal_server_sdk/models/vault_venmo_request.rb +143 -0
  378. data/lib/paypal_server_sdk/models/vaulted_digital_wallet.rb +132 -0
  379. data/lib/paypal_server_sdk/models/vaulted_digital_wallet_shipping_details.rb +114 -0
  380. data/lib/paypal_server_sdk/models/venmo_experience_context.rb +101 -0
  381. data/lib/paypal_server_sdk/models/venmo_payment_token.rb +199 -0
  382. data/lib/paypal_server_sdk/models/venmo_payment_token_customer_type.rb +40 -0
  383. data/lib/paypal_server_sdk/models/venmo_payment_token_usage_pattern.rb +58 -0
  384. data/lib/paypal_server_sdk/models/venmo_payment_token_usage_type.rb +39 -0
  385. data/lib/paypal_server_sdk/models/venmo_vault_response.rb +100 -0
  386. data/lib/paypal_server_sdk/models/venmo_vault_response_status.rb +45 -0
  387. data/lib/paypal_server_sdk/models/venmo_wallet_additional_attributes.rb +72 -0
  388. data/lib/paypal_server_sdk/models/venmo_wallet_attributes_response.rb +62 -0
  389. data/lib/paypal_server_sdk/models/venmo_wallet_customer_information.rb +94 -0
  390. data/lib/paypal_server_sdk/models/venmo_wallet_experience_context.rb +108 -0
  391. data/lib/paypal_server_sdk/models/venmo_wallet_experience_context_shipping_preference.rb +43 -0
  392. data/lib/paypal_server_sdk/models/venmo_wallet_experience_context_user_action.rb +42 -0
  393. data/lib/paypal_server_sdk/models/venmo_wallet_request.rb +102 -0
  394. data/lib/paypal_server_sdk/models/venmo_wallet_response.rb +146 -0
  395. data/lib/paypal_server_sdk/models/venmo_wallet_vault_attributes.rb +131 -0
  396. data/lib/{apimatic_calculator → paypal_server_sdk}/utilities/date_time_helper.rb +11 -11
  397. data/lib/{apimatic_calculator → paypal_server_sdk}/utilities/file_wrapper.rb +17 -17
  398. data/lib/paypal_server_sdk.rb +437 -0
  399. metadata +396 -18
  400. data/lib/apimatic_calculator/api_helper.rb +0 -10
  401. data/lib/apimatic_calculator/client.rb +0 -56
  402. data/lib/apimatic_calculator/controllers/simple_calculator_controller.rb +0 -33
  403. data/lib/apimatic_calculator/http/http_call_back.rb +0 -10
  404. data/lib/apimatic_calculator/http/http_method_enum.rb +0 -10
  405. data/lib/apimatic_calculator/http/http_request.rb +0 -10
  406. data/lib/apimatic_calculator/http/http_response.rb +0 -10
  407. data/lib/apimatic_calculator/models/operation_type_enum.rb +0 -44
  408. data/lib/apimatic_calculator.rb +0 -40
@@ -0,0 +1,111 @@
1
+ # paypal_server_sdk
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0
4
+ # ( https://www.apimatic.io ).
5
+
6
+ module PaypalServerSdk
7
+ # The list transactions for a subscription request details.
8
+ class TransactionsList < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # An array of transactions.
13
+ # @return [Array[SubscriptionTransactionDetails]]
14
+ attr_accessor :transactions
15
+
16
+ # The total number of items.
17
+ # @return [Integer]
18
+ attr_accessor :total_items
19
+
20
+ # The total number of pages.
21
+ # @return [Integer]
22
+ attr_accessor :total_pages
23
+
24
+ # An array of request-related [HATEOAS
25
+ # links](/docs/api/reference/api-responses/#hateoas-links).
26
+ # @return [Array[LinkDescription]]
27
+ attr_accessor :links
28
+
29
+ # A mapping from model property names to API property names.
30
+ def self.names
31
+ @_hash = {} if @_hash.nil?
32
+ @_hash['transactions'] = 'transactions'
33
+ @_hash['total_items'] = 'total_items'
34
+ @_hash['total_pages'] = 'total_pages'
35
+ @_hash['links'] = 'links'
36
+ @_hash
37
+ end
38
+
39
+ # An array for optional fields
40
+ def self.optionals
41
+ %w[
42
+ transactions
43
+ total_items
44
+ total_pages
45
+ links
46
+ ]
47
+ end
48
+
49
+ # An array for nullable fields
50
+ def self.nullables
51
+ []
52
+ end
53
+
54
+ def initialize(transactions: SKIP, total_items: SKIP, total_pages: SKIP,
55
+ links: SKIP)
56
+ @transactions = transactions unless transactions == SKIP
57
+ @total_items = total_items unless total_items == SKIP
58
+ @total_pages = total_pages unless total_pages == SKIP
59
+ @links = links unless links == SKIP
60
+ end
61
+
62
+ # Creates an instance of the object from a hash.
63
+ def self.from_hash(hash)
64
+ return nil unless hash
65
+
66
+ # Extract variables from the hash.
67
+ # Parameter is an array, so we need to iterate through it
68
+ transactions = nil
69
+ unless hash['transactions'].nil?
70
+ transactions = []
71
+ hash['transactions'].each do |structure|
72
+ transactions << (SubscriptionTransactionDetails.from_hash(structure) if structure)
73
+ end
74
+ end
75
+
76
+ transactions = SKIP unless hash.key?('transactions')
77
+ total_items = hash.key?('total_items') ? hash['total_items'] : SKIP
78
+ total_pages = hash.key?('total_pages') ? hash['total_pages'] : SKIP
79
+ # Parameter is an array, so we need to iterate through it
80
+ links = nil
81
+ unless hash['links'].nil?
82
+ links = []
83
+ hash['links'].each do |structure|
84
+ links << (LinkDescription.from_hash(structure) if structure)
85
+ end
86
+ end
87
+
88
+ links = SKIP unless hash.key?('links')
89
+
90
+ # Create object from extracted values.
91
+ TransactionsList.new(transactions: transactions,
92
+ total_items: total_items,
93
+ total_pages: total_pages,
94
+ links: links)
95
+ end
96
+
97
+ # Provides a human-readable string representation of the object.
98
+ def to_s
99
+ class_name = self.class.name.split('::').last
100
+ "<#{class_name} transactions: #{@transactions}, total_items: #{@total_items}, total_pages:"\
101
+ " #{@total_pages}, links: #{@links}>"
102
+ end
103
+
104
+ # Provides a debugging-friendly string with detailed object information.
105
+ def inspect
106
+ class_name = self.class.name.split('::').last
107
+ "<#{class_name} transactions: #{@transactions.inspect}, total_items:"\
108
+ " #{@total_items.inspect}, total_pages: #{@total_pages.inspect}, links: #{@links.inspect}>"
109
+ end
110
+ end
111
+ end
@@ -0,0 +1,111 @@
1
+ # paypal_server_sdk
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0
4
+ # ( https://www.apimatic.io ).
5
+
6
+ module PaypalServerSdk
7
+ # Information needed to pay using Trustly.
8
+ class TrustlyPaymentObject < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # The full name representation like Mr J Smith.
13
+ # @return [String]
14
+ attr_accessor :name
15
+
16
+ # The [two-character ISO 3166-1
17
+ # code](https://developer.paypal.com/api/rest/reference/country-codes/) that
18
+ # identifies the country or region. Note: The country code for Great Britain
19
+ # is GB and not UK as used in the top-level domain names for that country.
20
+ # Use the `C2` country code for China worldwide for comparable uncontrolled
21
+ # price (CUP) method, bank card, and cross-border transactions.
22
+ # @return [String]
23
+ attr_accessor :country_code
24
+
25
+ # The internationalized email address. Note: Up to 64 characters are allowed
26
+ # before and 255 characters are allowed after the @ sign. However, the
27
+ # generally accepted maximum length for an email address is 254 characters.
28
+ # The pattern verifies that an unquoted @ sign exists.
29
+ # @return [String]
30
+ attr_accessor :email
31
+
32
+ # The business identification code (BIC). In payments systems, a BIC is used
33
+ # to identify a specific business, most commonly a bank.
34
+ # @return [String]
35
+ attr_accessor :bic
36
+
37
+ # The last characters of the IBAN used to pay.
38
+ # @return [String]
39
+ attr_accessor :iban_last_chars
40
+
41
+ # A mapping from model property names to API property names.
42
+ def self.names
43
+ @_hash = {} if @_hash.nil?
44
+ @_hash['name'] = 'name'
45
+ @_hash['country_code'] = 'country_code'
46
+ @_hash['email'] = 'email'
47
+ @_hash['bic'] = 'bic'
48
+ @_hash['iban_last_chars'] = 'iban_last_chars'
49
+ @_hash
50
+ end
51
+
52
+ # An array for optional fields
53
+ def self.optionals
54
+ %w[
55
+ name
56
+ country_code
57
+ email
58
+ bic
59
+ iban_last_chars
60
+ ]
61
+ end
62
+
63
+ # An array for nullable fields
64
+ def self.nullables
65
+ []
66
+ end
67
+
68
+ def initialize(name: SKIP, country_code: SKIP, email: SKIP, bic: SKIP,
69
+ iban_last_chars: SKIP)
70
+ @name = name unless name == SKIP
71
+ @country_code = country_code unless country_code == SKIP
72
+ @email = email unless email == SKIP
73
+ @bic = bic unless bic == SKIP
74
+ @iban_last_chars = iban_last_chars unless iban_last_chars == SKIP
75
+ end
76
+
77
+ # Creates an instance of the object from a hash.
78
+ def self.from_hash(hash)
79
+ return nil unless hash
80
+
81
+ # Extract variables from the hash.
82
+ name = hash.key?('name') ? hash['name'] : SKIP
83
+ country_code = hash.key?('country_code') ? hash['country_code'] : SKIP
84
+ email = hash.key?('email') ? hash['email'] : SKIP
85
+ bic = hash.key?('bic') ? hash['bic'] : SKIP
86
+ iban_last_chars =
87
+ hash.key?('iban_last_chars') ? hash['iban_last_chars'] : SKIP
88
+
89
+ # Create object from extracted values.
90
+ TrustlyPaymentObject.new(name: name,
91
+ country_code: country_code,
92
+ email: email,
93
+ bic: bic,
94
+ iban_last_chars: iban_last_chars)
95
+ end
96
+
97
+ # Provides a human-readable string representation of the object.
98
+ def to_s
99
+ class_name = self.class.name.split('::').last
100
+ "<#{class_name} name: #{@name}, country_code: #{@country_code}, email: #{@email}, bic:"\
101
+ " #{@bic}, iban_last_chars: #{@iban_last_chars}>"
102
+ end
103
+
104
+ # Provides a debugging-friendly string with detailed object information.
105
+ def inspect
106
+ class_name = self.class.name.split('::').last
107
+ "<#{class_name} name: #{@name.inspect}, country_code: #{@country_code.inspect}, email:"\
108
+ " #{@email.inspect}, bic: #{@bic.inspect}, iban_last_chars: #{@iban_last_chars.inspect}>"
109
+ end
110
+ end
111
+ 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
+ # Information needed to pay using Trustly.
8
+ class TrustlyPaymentRequest < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # The full name representation like Mr J Smith.
13
+ # @return [String]
14
+ attr_accessor :name
15
+
16
+ # The [two-character ISO 3166-1
17
+ # code](https://developer.paypal.com/api/rest/reference/country-codes/) that
18
+ # identifies the country or region. Note: The country code for Great Britain
19
+ # is GB and not UK as used in the top-level domain names for that country.
20
+ # Use the `C2` country code for China worldwide for comparable uncontrolled
21
+ # price (CUP) method, bank card, and cross-border transactions.
22
+ # @return [String]
23
+ attr_accessor :country_code
24
+
25
+ # The internationalized email address. Note: Up to 64 characters are allowed
26
+ # before and 255 characters are allowed after the @ sign. However, the
27
+ # generally accepted maximum length for an email address is 254 characters.
28
+ # The pattern verifies that an unquoted @ sign exists.
29
+ # @return [String]
30
+ attr_accessor :email
31
+
32
+ # Customizes the payer experience during the approval process for the
33
+ # payment.
34
+ # @return [ExperienceContext]
35
+ attr_accessor :experience_context
36
+
37
+ # A mapping from model property names to API property names.
38
+ def self.names
39
+ @_hash = {} if @_hash.nil?
40
+ @_hash['name'] = 'name'
41
+ @_hash['country_code'] = 'country_code'
42
+ @_hash['email'] = 'email'
43
+ @_hash['experience_context'] = 'experience_context'
44
+ @_hash
45
+ end
46
+
47
+ # An array for optional fields
48
+ def self.optionals
49
+ %w[
50
+ experience_context
51
+ ]
52
+ end
53
+
54
+ # An array for nullable fields
55
+ def self.nullables
56
+ []
57
+ end
58
+
59
+ def initialize(name:, country_code:, email:, experience_context: SKIP)
60
+ @name = name
61
+ @country_code = country_code
62
+ @email = email
63
+ @experience_context = experience_context unless experience_context == 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
+ name = hash.key?('name') ? hash['name'] : nil
72
+ country_code = hash.key?('country_code') ? hash['country_code'] : nil
73
+ email = hash.key?('email') ? hash['email'] : nil
74
+ experience_context = ExperienceContext.from_hash(hash['experience_context']) if
75
+ hash['experience_context']
76
+
77
+ # Create object from extracted values.
78
+ TrustlyPaymentRequest.new(name: name,
79
+ country_code: country_code,
80
+ email: email,
81
+ experience_context: experience_context)
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} name: #{@name}, country_code: #{@country_code}, email: #{@email},"\
88
+ " experience_context: #{@experience_context}>"
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} name: #{@name.inspect}, country_code: #{@country_code.inspect}, email:"\
95
+ " #{@email.inspect}, experience_context: #{@experience_context.inspect}>"
96
+ end
97
+ end
98
+ end
@@ -0,0 +1,68 @@
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 Universal Product Code of the item.
8
+ class UniversalProductCode < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # The Universal Product Code type.
13
+ # @return [UpcType]
14
+ attr_accessor :type
15
+
16
+ # The UPC product code of the item.
17
+ # @return [String]
18
+ attr_accessor :code
19
+
20
+ # A mapping from model property names to API property names.
21
+ def self.names
22
+ @_hash = {} if @_hash.nil?
23
+ @_hash['type'] = 'type'
24
+ @_hash['code'] = 'code'
25
+ @_hash
26
+ end
27
+
28
+ # An array for optional fields
29
+ def self.optionals
30
+ []
31
+ end
32
+
33
+ # An array for nullable fields
34
+ def self.nullables
35
+ []
36
+ end
37
+
38
+ def initialize(type:, code:)
39
+ @type = type
40
+ @code = code
41
+ end
42
+
43
+ # Creates an instance of the object from a hash.
44
+ def self.from_hash(hash)
45
+ return nil unless hash
46
+
47
+ # Extract variables from the hash.
48
+ type = hash.key?('type') ? hash['type'] : nil
49
+ code = hash.key?('code') ? hash['code'] : nil
50
+
51
+ # Create object from extracted values.
52
+ UniversalProductCode.new(type: type,
53
+ code: code)
54
+ end
55
+
56
+ # Provides a human-readable string representation of the object.
57
+ def to_s
58
+ class_name = self.class.name.split('::').last
59
+ "<#{class_name} type: #{@type}, code: #{@code}>"
60
+ end
61
+
62
+ # Provides a debugging-friendly string with detailed object information.
63
+ def inspect
64
+ class_name = self.class.name.split('::').last
65
+ "<#{class_name} type: #{@type.inspect}, code: #{@code.inspect}>"
66
+ end
67
+ end
68
+ end
@@ -0,0 +1,56 @@
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 Universal Product Code type.
8
+ class UpcType
9
+ UPC_TYPE = [
10
+ # TODO: Write general description for UPC_A
11
+ UPC_A = 'UPC-A'.freeze,
12
+
13
+ # TODO: Write general description for UPC_B
14
+ UPC_B = 'UPC-B'.freeze,
15
+
16
+ # TODO: Write general description for UPC_C
17
+ UPC_C = 'UPC-C'.freeze,
18
+
19
+ # TODO: Write general description for UPC_D
20
+ UPC_D = 'UPC-D'.freeze,
21
+
22
+ # TODO: Write general description for UPC_E
23
+ UPC_E = 'UPC-E'.freeze,
24
+
25
+ # TODO: Write general description for UPC_2
26
+ UPC_2 = 'UPC-2'.freeze,
27
+
28
+ # TODO: Write general description for UPC_5
29
+ UPC_5 = 'UPC-5'.freeze
30
+ ].freeze
31
+
32
+ def self.validate(value)
33
+ return false if value.nil?
34
+
35
+ true
36
+ end
37
+
38
+ def self.from_value(value, default_value = UPC_A)
39
+ return default_value if value.nil?
40
+
41
+ str = value.to_s.strip
42
+
43
+ case str.downcase
44
+ when 'upc_a' then UPC_A
45
+ when 'upc_b' then UPC_B
46
+ when 'upc_c' then UPC_C
47
+ when 'upc_d' then UPC_D
48
+ when 'upc_e' then UPC_E
49
+ when 'upc_2' then UPC_2
50
+ when 'upc_5' then UPC_5
51
+ else
52
+ default_value
53
+ end
54
+ end
55
+ end
56
+ end
@@ -0,0 +1,72 @@
1
+ # paypal_server_sdk
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0
4
+ # ( https://www.apimatic.io ).
5
+
6
+ module PaypalServerSdk
7
+ # The update pricing scheme request details.
8
+ class UpdatePricingScheme < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # The billing cycle sequence.
13
+ # @return [Integer]
14
+ attr_accessor :billing_cycle_sequence
15
+
16
+ # The pricing scheme details.
17
+ # @return [SubscriptionPricingScheme]
18
+ attr_accessor :pricing_scheme
19
+
20
+ # A mapping from model property names to API property names.
21
+ def self.names
22
+ @_hash = {} if @_hash.nil?
23
+ @_hash['billing_cycle_sequence'] = 'billing_cycle_sequence'
24
+ @_hash['pricing_scheme'] = 'pricing_scheme'
25
+ @_hash
26
+ end
27
+
28
+ # An array for optional fields
29
+ def self.optionals
30
+ []
31
+ end
32
+
33
+ # An array for nullable fields
34
+ def self.nullables
35
+ []
36
+ end
37
+
38
+ def initialize(billing_cycle_sequence:, pricing_scheme:)
39
+ @billing_cycle_sequence = billing_cycle_sequence
40
+ @pricing_scheme = pricing_scheme
41
+ end
42
+
43
+ # Creates an instance of the object from a hash.
44
+ def self.from_hash(hash)
45
+ return nil unless hash
46
+
47
+ # Extract variables from the hash.
48
+ billing_cycle_sequence =
49
+ hash.key?('billing_cycle_sequence') ? hash['billing_cycle_sequence'] : nil
50
+ pricing_scheme = SubscriptionPricingScheme.from_hash(hash['pricing_scheme']) if
51
+ hash['pricing_scheme']
52
+
53
+ # Create object from extracted values.
54
+ UpdatePricingScheme.new(billing_cycle_sequence: billing_cycle_sequence,
55
+ pricing_scheme: pricing_scheme)
56
+ end
57
+
58
+ # Provides a human-readable string representation of the object.
59
+ def to_s
60
+ class_name = self.class.name.split('::').last
61
+ "<#{class_name} billing_cycle_sequence: #{@billing_cycle_sequence}, pricing_scheme:"\
62
+ " #{@pricing_scheme}>"
63
+ end
64
+
65
+ # Provides a debugging-friendly string with detailed object information.
66
+ def inspect
67
+ class_name = self.class.name.split('::').last
68
+ "<#{class_name} billing_cycle_sequence: #{@billing_cycle_sequence.inspect}, pricing_scheme:"\
69
+ " #{@pricing_scheme.inspect}>"
70
+ end
71
+ end
72
+ end
@@ -0,0 +1,69 @@
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 update pricing scheme request details.
8
+ class UpdatePricingSchemesRequest < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # An array of pricing schemes.
13
+ # @return [Array[UpdatePricingScheme]]
14
+ attr_accessor :pricing_schemes
15
+
16
+ # A mapping from model property names to API property names.
17
+ def self.names
18
+ @_hash = {} if @_hash.nil?
19
+ @_hash['pricing_schemes'] = 'pricing_schemes'
20
+ @_hash
21
+ end
22
+
23
+ # An array for optional fields
24
+ def self.optionals
25
+ []
26
+ end
27
+
28
+ # An array for nullable fields
29
+ def self.nullables
30
+ []
31
+ end
32
+
33
+ def initialize(pricing_schemes:)
34
+ @pricing_schemes = pricing_schemes
35
+ end
36
+
37
+ # Creates an instance of the object from a hash.
38
+ def self.from_hash(hash)
39
+ return nil unless hash
40
+
41
+ # Extract variables from the hash.
42
+ # Parameter is an array, so we need to iterate through it
43
+ pricing_schemes = nil
44
+ unless hash['pricing_schemes'].nil?
45
+ pricing_schemes = []
46
+ hash['pricing_schemes'].each do |structure|
47
+ pricing_schemes << (UpdatePricingScheme.from_hash(structure) if structure)
48
+ end
49
+ end
50
+
51
+ pricing_schemes = nil unless hash.key?('pricing_schemes')
52
+
53
+ # Create object from extracted values.
54
+ UpdatePricingSchemesRequest.new(pricing_schemes: pricing_schemes)
55
+ end
56
+
57
+ # Provides a human-readable string representation of the object.
58
+ def to_s
59
+ class_name = self.class.name.split('::').last
60
+ "<#{class_name} pricing_schemes: #{@pricing_schemes}>"
61
+ end
62
+
63
+ # Provides a debugging-friendly string with detailed object information.
64
+ def inspect
65
+ class_name = self.class.name.split('::').last
66
+ "<#{class_name} pricing_schemes: #{@pricing_schemes.inspect}>"
67
+ end
68
+ end
69
+ end
@@ -0,0 +1,95 @@
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
+ # Expected business/pricing model for the billing agreement., Expected
8
+ # business/charge model for the billing agreement.
9
+ class UsagePattern
10
+ USAGE_PATTERN = [
11
+ # On-demand instant payments – non-recurring, pre-paid, variable amount,
12
+ # variable frequency.
13
+ IMMEDIATE = 'IMMEDIATE'.freeze,
14
+
15
+ # Pay after use, non-recurring post-paid, variable amount, irregular
16
+ # frequency.
17
+ DEFERRED = 'DEFERRED'.freeze,
18
+
19
+ # Pay upfront fixed or variable amount on a fixed date before the
20
+ # goods/service is delivered.
21
+ RECURRING_PREPAID = 'RECURRING_PREPAID'.freeze,
22
+
23
+ # Pay on a fixed date based on usage or consumption after the
24
+ # goods/service is delivered.
25
+ RECURRING_POSTPAID = 'RECURRING_POSTPAID'.freeze,
26
+
27
+ # Charge payer when the set amount is reached or monthly billing cycle,
28
+ # whichever comes first, before the goods/service is delivered.
29
+ THRESHOLD_PREPAID = 'THRESHOLD_PREPAID'.freeze,
30
+
31
+ # Charge payer when the set amount is reached or monthly billing cycle,
32
+ # whichever comes first, after the goods/service is delivered.
33
+ THRESHOLD_POSTPAID = 'THRESHOLD_POSTPAID'.freeze,
34
+
35
+ # Subscription plan where the "amount due" and the "billing frequency" are
36
+ # fixed, and there is no defined duration with the payment due before the
37
+ # good/service is delivered.
38
+ SUBSCRIPTION_PREPAID = 'SUBSCRIPTION_PREPAID'.freeze,
39
+
40
+ # Subscription plan where the "amount due" and the "billing frequency" are
41
+ # fixed, and there is no defined duration with the payment due after the
42
+ # goods/services are delivered.
43
+ SUBSCRIPTION_POSTPAID = 'SUBSCRIPTION_POSTPAID'.freeze,
44
+
45
+ # Unscheduled card on file plan where the merchant can bill buyer upfront
46
+ # based on an agreed logic, but "amount due" and "frequency" can vary.
47
+ # Inclusive of automatic reload plans.
48
+ UNSCHEDULED_PREPAID = 'UNSCHEDULED_PREPAID'.freeze,
49
+
50
+ # Unscheduled card on file plan where the merchant can bill buyer based on
51
+ # an agreed logic, but "amount due" and "frequency" can vary. Inclusive of
52
+ # automatic reload plans.
53
+ UNSCHEDULED_POSTPAID = 'UNSCHEDULED_POSTPAID'.freeze,
54
+
55
+ # Merchant-managed installment plan when the "amount" to be paid and the
56
+ # "billing frequency" are fixed, but there is a defined number of payments
57
+ # with the payment due before the good/service is delivered.
58
+ INSTALLMENT_PREPAID = 'INSTALLMENT_PREPAID'.freeze,
59
+
60
+ # Merchant-managed installment plan when the "amount" to be paid and the
61
+ # "billing frequency" are fixed, but there is a defined number of payments
62
+ # with the payment due after the goods/services are delivered.
63
+ INSTALLMENT_POSTPAID = 'INSTALLMENT_POSTPAID'.freeze
64
+ ].freeze
65
+
66
+ def self.validate(value)
67
+ return false if value.nil?
68
+
69
+ true
70
+ end
71
+
72
+ def self.from_value(value, default_value = IMMEDIATE)
73
+ return default_value if value.nil?
74
+
75
+ str = value.to_s.strip
76
+
77
+ case str.downcase
78
+ when 'immediate' then IMMEDIATE
79
+ when 'deferred' then DEFERRED
80
+ when 'recurring_prepaid' then RECURRING_PREPAID
81
+ when 'recurring_postpaid' then RECURRING_POSTPAID
82
+ when 'threshold_prepaid' then THRESHOLD_PREPAID
83
+ when 'threshold_postpaid' then THRESHOLD_POSTPAID
84
+ when 'subscription_prepaid' then SUBSCRIPTION_PREPAID
85
+ when 'subscription_postpaid' then SUBSCRIPTION_POSTPAID
86
+ when 'unscheduled_prepaid' then UNSCHEDULED_PREPAID
87
+ when 'unscheduled_postpaid' then UNSCHEDULED_POSTPAID
88
+ when 'installment_prepaid' then INSTALLMENT_PREPAID
89
+ when 'installment_postpaid' then INSTALLMENT_POSTPAID
90
+ else
91
+ default_value
92
+ end
93
+ end
94
+ end
95
+ end