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,126 @@
1
+ # paypal_server_sdk
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0
4
+ # ( https://www.apimatic.io ).
5
+
6
+ module PaypalServerSdk
7
+ # Captures either a portion or the full authorized amount of an authorized
8
+ # payment.
9
+ class CaptureRequest < BaseModel
10
+ SKIP = Object.new
11
+ private_constant :SKIP
12
+
13
+ # The currency and amount for a financial transaction, such as a balance or
14
+ # payment due.
15
+ # @return [Money]
16
+ attr_accessor :amount
17
+
18
+ # The API caller-provided external invoice number for this order. Appears in
19
+ # both the payer's transaction history and the emails that the payer
20
+ # receives.
21
+ # @return [String]
22
+ attr_accessor :invoice_id
23
+
24
+ # Indicates whether you can make additional captures against the authorized
25
+ # payment. Set to `true` if you do not intend to capture additional payments
26
+ # against the authorization. Set to `false` if you intend to capture
27
+ # additional payments against the authorization.
28
+ # @return [TrueClass | FalseClass]
29
+ attr_accessor :final_capture
30
+
31
+ # Any additional payment instructions to be consider during payment
32
+ # processing. This processing instruction is applicable for Capturing an
33
+ # order or Authorizing an Order.
34
+ # @return [CapturePaymentInstruction]
35
+ attr_accessor :payment_instruction
36
+
37
+ # An informational note about this settlement. Appears in both the payer's
38
+ # transaction history and the emails that the payer receives.
39
+ # @return [String]
40
+ attr_accessor :note_to_payer
41
+
42
+ # The payment descriptor on the payer's account statement.
43
+ # @return [String]
44
+ attr_accessor :soft_descriptor
45
+
46
+ # A mapping from model property names to API property names.
47
+ def self.names
48
+ @_hash = {} if @_hash.nil?
49
+ @_hash['amount'] = 'amount'
50
+ @_hash['invoice_id'] = 'invoice_id'
51
+ @_hash['final_capture'] = 'final_capture'
52
+ @_hash['payment_instruction'] = 'payment_instruction'
53
+ @_hash['note_to_payer'] = 'note_to_payer'
54
+ @_hash['soft_descriptor'] = 'soft_descriptor'
55
+ @_hash
56
+ end
57
+
58
+ # An array for optional fields
59
+ def self.optionals
60
+ %w[
61
+ amount
62
+ invoice_id
63
+ final_capture
64
+ payment_instruction
65
+ note_to_payer
66
+ soft_descriptor
67
+ ]
68
+ end
69
+
70
+ # An array for nullable fields
71
+ def self.nullables
72
+ []
73
+ end
74
+
75
+ def initialize(amount: SKIP, invoice_id: SKIP, final_capture: false,
76
+ payment_instruction: SKIP, note_to_payer: SKIP,
77
+ soft_descriptor: SKIP)
78
+ @amount = amount unless amount == SKIP
79
+ @invoice_id = invoice_id unless invoice_id == SKIP
80
+ @final_capture = final_capture unless final_capture == SKIP
81
+ @payment_instruction = payment_instruction unless payment_instruction == SKIP
82
+ @note_to_payer = note_to_payer unless note_to_payer == SKIP
83
+ @soft_descriptor = soft_descriptor unless soft_descriptor == SKIP
84
+ end
85
+
86
+ # Creates an instance of the object from a hash.
87
+ def self.from_hash(hash)
88
+ return nil unless hash
89
+
90
+ # Extract variables from the hash.
91
+ amount = Money.from_hash(hash['amount']) if hash['amount']
92
+ invoice_id = hash.key?('invoice_id') ? hash['invoice_id'] : SKIP
93
+ final_capture = hash['final_capture'] ||= false
94
+ payment_instruction = CapturePaymentInstruction.from_hash(hash['payment_instruction']) if
95
+ hash['payment_instruction']
96
+ note_to_payer = hash.key?('note_to_payer') ? hash['note_to_payer'] : SKIP
97
+ soft_descriptor =
98
+ hash.key?('soft_descriptor') ? hash['soft_descriptor'] : SKIP
99
+
100
+ # Create object from extracted values.
101
+ CaptureRequest.new(amount: amount,
102
+ invoice_id: invoice_id,
103
+ final_capture: final_capture,
104
+ payment_instruction: payment_instruction,
105
+ note_to_payer: note_to_payer,
106
+ soft_descriptor: soft_descriptor)
107
+ end
108
+
109
+ # Provides a human-readable string representation of the object.
110
+ def to_s
111
+ class_name = self.class.name.split('::').last
112
+ "<#{class_name} amount: #{@amount}, invoice_id: #{@invoice_id}, final_capture:"\
113
+ " #{@final_capture}, payment_instruction: #{@payment_instruction}, note_to_payer:"\
114
+ " #{@note_to_payer}, soft_descriptor: #{@soft_descriptor}>"
115
+ end
116
+
117
+ # Provides a debugging-friendly string with detailed object information.
118
+ def inspect
119
+ class_name = self.class.name.split('::').last
120
+ "<#{class_name} amount: #{@amount.inspect}, invoice_id: #{@invoice_id.inspect},"\
121
+ " final_capture: #{@final_capture.inspect}, payment_instruction:"\
122
+ " #{@payment_instruction.inspect}, note_to_payer: #{@note_to_payer.inspect},"\
123
+ " soft_descriptor: #{@soft_descriptor.inspect}>"
124
+ end
125
+ end
126
+ 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 status of the captured payment.
8
+ class CaptureStatus
9
+ CAPTURE_STATUS = [
10
+ # The funds for this captured payment were credited to the payee's PayPal
11
+ # account.
12
+ COMPLETED = 'COMPLETED'.freeze,
13
+
14
+ # The funds could not be captured.
15
+ DECLINED = 'DECLINED'.freeze,
16
+
17
+ # An amount less than this captured payment's amount was partially
18
+ # refunded to the payer.
19
+ PARTIALLY_REFUNDED = 'PARTIALLY_REFUNDED'.freeze,
20
+
21
+ # The funds for this captured payment was not yet credited to the payee's
22
+ # PayPal account. For more information, see status.details.
23
+ PENDING = 'PENDING'.freeze,
24
+
25
+ # An amount greater than or equal to this captured payment's amount was
26
+ # refunded to the payer.
27
+ REFUNDED = 'REFUNDED'.freeze,
28
+
29
+ # There was an error while capturing payment.
30
+ FAILED = 'FAILED'.freeze
31
+ ].freeze
32
+
33
+ def self.validate(value)
34
+ return false if value.nil?
35
+
36
+ true
37
+ end
38
+
39
+ def self.from_value(value, default_value = COMPLETED)
40
+ return default_value if value.nil?
41
+
42
+ str = value.to_s.strip
43
+
44
+ case str.downcase
45
+ when 'completed' then COMPLETED
46
+ when 'declined' then DECLINED
47
+ when 'partially_refunded' then PARTIALLY_REFUNDED
48
+ when 'pending' then PENDING
49
+ when 'refunded' then REFUNDED
50
+ when 'failed' then FAILED
51
+ else
52
+ default_value
53
+ end
54
+ end
55
+ end
56
+ end
@@ -0,0 +1,62 @@
1
+ # paypal_server_sdk
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0
4
+ # ( https://www.apimatic.io ).
5
+
6
+ module PaypalServerSdk
7
+ # The details of the captured payment status.
8
+ class CaptureStatusDetails < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # The reason why the captured payment status is `PENDING` or `DENIED`.
13
+ # @return [CaptureIncompleteReason]
14
+ attr_accessor :reason
15
+
16
+ # A mapping from model property names to API property names.
17
+ def self.names
18
+ @_hash = {} if @_hash.nil?
19
+ @_hash['reason'] = 'reason'
20
+ @_hash
21
+ end
22
+
23
+ # An array for optional fields
24
+ def self.optionals
25
+ %w[
26
+ reason
27
+ ]
28
+ end
29
+
30
+ # An array for nullable fields
31
+ def self.nullables
32
+ []
33
+ end
34
+
35
+ def initialize(reason: SKIP)
36
+ @reason = reason unless reason == SKIP
37
+ end
38
+
39
+ # Creates an instance of the object from a hash.
40
+ def self.from_hash(hash)
41
+ return nil unless hash
42
+
43
+ # Extract variables from the hash.
44
+ reason = hash.key?('reason') ? hash['reason'] : SKIP
45
+
46
+ # Create object from extracted values.
47
+ CaptureStatusDetails.new(reason: reason)
48
+ end
49
+
50
+ # Provides a human-readable string representation of the object.
51
+ def to_s
52
+ class_name = self.class.name.split('::').last
53
+ "<#{class_name} reason: #{@reason}>"
54
+ end
55
+
56
+ # Provides a debugging-friendly string with detailed object information.
57
+ def inspect
58
+ class_name = self.class.name.split('::').last
59
+ "<#{class_name} reason: #{@reason.inspect}>"
60
+ end
61
+ end
62
+ 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 status and status details of a captured payment.
8
+ class CaptureStatusWithDetails < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # The status of the captured payment.
13
+ # @return [CaptureStatus]
14
+ attr_accessor :status
15
+
16
+ # The details of the captured payment status.
17
+ # @return [CaptureStatusDetails]
18
+ attr_accessor :status_details
19
+
20
+ # A mapping from model property names to API property names.
21
+ def self.names
22
+ @_hash = {} if @_hash.nil?
23
+ @_hash['status'] = 'status'
24
+ @_hash['status_details'] = 'status_details'
25
+ @_hash
26
+ end
27
+
28
+ # An array for optional fields
29
+ def self.optionals
30
+ %w[
31
+ status
32
+ status_details
33
+ ]
34
+ end
35
+
36
+ # An array for nullable fields
37
+ def self.nullables
38
+ []
39
+ end
40
+
41
+ def initialize(status: SKIP, status_details: SKIP)
42
+ @status = status unless status == SKIP
43
+ @status_details = status_details unless status_details == SKIP
44
+ end
45
+
46
+ # Creates an instance of the object from a hash.
47
+ def self.from_hash(hash)
48
+ return nil unless hash
49
+
50
+ # Extract variables from the hash.
51
+ status = hash.key?('status') ? hash['status'] : SKIP
52
+ status_details = CaptureStatusDetails.from_hash(hash['status_details']) if
53
+ hash['status_details']
54
+
55
+ # Create object from extracted values.
56
+ CaptureStatusWithDetails.new(status: status,
57
+ status_details: status_details)
58
+ end
59
+
60
+ # Provides a human-readable string representation of the object.
61
+ def to_s
62
+ class_name = self.class.name.split('::').last
63
+ "<#{class_name} status: #{@status}, status_details: #{@status_details}>"
64
+ end
65
+
66
+ # Provides a debugging-friendly string with detailed object information.
67
+ def inspect
68
+ class_name = self.class.name.split('::').last
69
+ "<#{class_name} status: #{@status.inspect}, status_details: #{@status_details.inspect}>"
70
+ end
71
+ end
72
+ end
@@ -0,0 +1,78 @@
1
+ # paypal_server_sdk
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0
4
+ # ( https://www.apimatic.io ).
5
+
6
+ module PaypalServerSdk
7
+ # The charge amount from the subscriber.
8
+ class CaptureSubscriptionRequest < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # The reason or note for the subscription charge.
13
+ # @return [String]
14
+ attr_accessor :note
15
+
16
+ # The type of capture.
17
+ # @return [CaptureType]
18
+ attr_accessor :capture_type
19
+
20
+ # The currency and amount for a financial transaction, such as a balance or
21
+ # payment due.
22
+ # @return [Money]
23
+ attr_accessor :amount
24
+
25
+ # A mapping from model property names to API property names.
26
+ def self.names
27
+ @_hash = {} if @_hash.nil?
28
+ @_hash['note'] = 'note'
29
+ @_hash['capture_type'] = 'capture_type'
30
+ @_hash['amount'] = 'amount'
31
+ @_hash
32
+ end
33
+
34
+ # An array for optional fields
35
+ def self.optionals
36
+ []
37
+ end
38
+
39
+ # An array for nullable fields
40
+ def self.nullables
41
+ []
42
+ end
43
+
44
+ def initialize(note:, capture_type:, amount:)
45
+ @note = note
46
+ @capture_type = capture_type
47
+ @amount = amount
48
+ end
49
+
50
+ # Creates an instance of the object from a hash.
51
+ def self.from_hash(hash)
52
+ return nil unless hash
53
+
54
+ # Extract variables from the hash.
55
+ note = hash.key?('note') ? hash['note'] : nil
56
+ capture_type = hash.key?('capture_type') ? hash['capture_type'] : nil
57
+ amount = Money.from_hash(hash['amount']) if hash['amount']
58
+
59
+ # Create object from extracted values.
60
+ CaptureSubscriptionRequest.new(note: note,
61
+ capture_type: capture_type,
62
+ amount: amount)
63
+ end
64
+
65
+ # Provides a human-readable string representation of the object.
66
+ def to_s
67
+ class_name = self.class.name.split('::').last
68
+ "<#{class_name} note: #{@note}, capture_type: #{@capture_type}, amount: #{@amount}>"
69
+ end
70
+
71
+ # Provides a debugging-friendly string with detailed object information.
72
+ def inspect
73
+ class_name = self.class.name.split('::').last
74
+ "<#{class_name} note: #{@note.inspect}, capture_type: #{@capture_type.inspect}, amount:"\
75
+ " #{@amount.inspect}>"
76
+ end
77
+ end
78
+ end
@@ -0,0 +1,26 @@
1
+ # paypal_server_sdk
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0
4
+ # ( https://www.apimatic.io ).
5
+
6
+ module PaypalServerSdk
7
+ # The type of capture.
8
+ class CaptureType
9
+ CAPTURE_TYPE = [
10
+ # The outstanding balance that the subscriber must clear.
11
+ OUTSTANDING_BALANCE = 'OUTSTANDING_BALANCE'.freeze
12
+ ].freeze
13
+
14
+ def self.validate(value)
15
+ return false if value.nil?
16
+
17
+ true
18
+ end
19
+
20
+ def self.from_value(value, default_value = OUTSTANDING_BALANCE)
21
+ return default_value if value.nil?
22
+
23
+ default_value
24
+ end
25
+ end
26
+ end
@@ -0,0 +1,274 @@
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
+ # A captured payment.
8
+ class CapturedPayment < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # The status of the captured payment.
13
+ # @return [CaptureStatus]
14
+ attr_accessor :status
15
+
16
+ # The details of the captured payment status.
17
+ # @return [CaptureStatusDetails]
18
+ attr_accessor :status_details
19
+
20
+ # The PayPal-generated ID for the captured payment.
21
+ # @return [String]
22
+ attr_accessor :id
23
+
24
+ # The currency and amount for a financial transaction, such as a balance or
25
+ # payment due.
26
+ # @return [Money]
27
+ attr_accessor :amount
28
+
29
+ # The API caller-provided external invoice number for this order. Appears in
30
+ # both the payer's transaction history and the emails that the payer
31
+ # receives.
32
+ # @return [String]
33
+ attr_accessor :invoice_id
34
+
35
+ # The API caller-provided external ID. Used to reconcile API
36
+ # caller-initiated transactions with PayPal transactions. Appears in
37
+ # transaction and settlement reports.
38
+ # @return [String]
39
+ attr_accessor :custom_id
40
+
41
+ # Reference values used by the card network to identify a transaction.
42
+ # @return [NetworkTransaction]
43
+ attr_accessor :network_transaction_reference
44
+
45
+ # The level of protection offered as defined by [PayPal Seller Protection
46
+ # for
47
+ # Merchants](https://www.paypal.com/us/webapps/mpp/security/seller-protectio
48
+ # n).
49
+ # @return [SellerProtection]
50
+ attr_accessor :seller_protection
51
+
52
+ # Indicates whether you can make additional captures against the authorized
53
+ # payment. Set to `true` if you do not intend to capture additional payments
54
+ # against the authorization. Set to `false` if you intend to capture
55
+ # additional payments against the authorization.
56
+ # @return [TrueClass | FalseClass]
57
+ attr_accessor :final_capture
58
+
59
+ # The detailed breakdown of the capture activity. This is not available for
60
+ # transactions that are in pending state.
61
+ # @return [SellerReceivableBreakdown]
62
+ attr_accessor :seller_receivable_breakdown
63
+
64
+ # The funds that are held on behalf of the merchant.
65
+ # @return [DisbursementMode]
66
+ attr_accessor :disbursement_mode
67
+
68
+ # An array of related [HATEOAS
69
+ # links](/docs/api/reference/api-responses/#hateoas-links).
70
+ # @return [Array[LinkDescription]]
71
+ attr_accessor :links
72
+
73
+ # The processor response information for payment requests, such as direct
74
+ # credit card transactions.
75
+ # @return [ProcessorResponse]
76
+ attr_accessor :processor_response
77
+
78
+ # The date and time, in [Internet date and time
79
+ # format](https://tools.ietf.org/html/rfc3339#section-5.6). Seconds are
80
+ # required while fractional seconds are optional. Note: The regular
81
+ # expression provides guidance but does not reject all invalid dates.
82
+ # @return [String]
83
+ attr_accessor :create_time
84
+
85
+ # The date and time, in [Internet date and time
86
+ # format](https://tools.ietf.org/html/rfc3339#section-5.6). Seconds are
87
+ # required while fractional seconds are optional. Note: The regular
88
+ # expression provides guidance but does not reject all invalid dates.
89
+ # @return [String]
90
+ attr_accessor :update_time
91
+
92
+ # The supplementary data.
93
+ # @return [PaymentSupplementaryData]
94
+ attr_accessor :supplementary_data
95
+
96
+ # The details for the merchant who receives the funds and fulfills the
97
+ # order. The merchant is also known as the payee.
98
+ # @return [PayeeBase]
99
+ attr_accessor :payee
100
+
101
+ # A mapping from model property names to API property names.
102
+ def self.names
103
+ @_hash = {} if @_hash.nil?
104
+ @_hash['status'] = 'status'
105
+ @_hash['status_details'] = 'status_details'
106
+ @_hash['id'] = 'id'
107
+ @_hash['amount'] = 'amount'
108
+ @_hash['invoice_id'] = 'invoice_id'
109
+ @_hash['custom_id'] = 'custom_id'
110
+ @_hash['network_transaction_reference'] =
111
+ 'network_transaction_reference'
112
+ @_hash['seller_protection'] = 'seller_protection'
113
+ @_hash['final_capture'] = 'final_capture'
114
+ @_hash['seller_receivable_breakdown'] = 'seller_receivable_breakdown'
115
+ @_hash['disbursement_mode'] = 'disbursement_mode'
116
+ @_hash['links'] = 'links'
117
+ @_hash['processor_response'] = 'processor_response'
118
+ @_hash['create_time'] = 'create_time'
119
+ @_hash['update_time'] = 'update_time'
120
+ @_hash['supplementary_data'] = 'supplementary_data'
121
+ @_hash['payee'] = 'payee'
122
+ @_hash
123
+ end
124
+
125
+ # An array for optional fields
126
+ def self.optionals
127
+ %w[
128
+ status
129
+ status_details
130
+ id
131
+ amount
132
+ invoice_id
133
+ custom_id
134
+ network_transaction_reference
135
+ seller_protection
136
+ final_capture
137
+ seller_receivable_breakdown
138
+ disbursement_mode
139
+ links
140
+ processor_response
141
+ create_time
142
+ update_time
143
+ supplementary_data
144
+ payee
145
+ ]
146
+ end
147
+
148
+ # An array for nullable fields
149
+ def self.nullables
150
+ []
151
+ end
152
+
153
+ def initialize(status: SKIP, status_details: SKIP, id: SKIP, amount: SKIP,
154
+ invoice_id: SKIP, custom_id: SKIP,
155
+ network_transaction_reference: SKIP, seller_protection: SKIP,
156
+ final_capture: false, seller_receivable_breakdown: SKIP,
157
+ disbursement_mode: DisbursementMode::INSTANT, links: SKIP,
158
+ processor_response: SKIP, create_time: SKIP,
159
+ update_time: SKIP, supplementary_data: SKIP, payee: SKIP)
160
+ @status = status unless status == SKIP
161
+ @status_details = status_details unless status_details == SKIP
162
+ @id = id unless id == SKIP
163
+ @amount = amount unless amount == SKIP
164
+ @invoice_id = invoice_id unless invoice_id == SKIP
165
+ @custom_id = custom_id unless custom_id == SKIP
166
+ unless network_transaction_reference == SKIP
167
+ @network_transaction_reference =
168
+ network_transaction_reference
169
+ end
170
+ @seller_protection = seller_protection unless seller_protection == SKIP
171
+ @final_capture = final_capture unless final_capture == SKIP
172
+ unless seller_receivable_breakdown == SKIP
173
+ @seller_receivable_breakdown =
174
+ seller_receivable_breakdown
175
+ end
176
+ @disbursement_mode = disbursement_mode unless disbursement_mode == SKIP
177
+ @links = links unless links == SKIP
178
+ @processor_response = processor_response unless processor_response == SKIP
179
+ @create_time = create_time unless create_time == SKIP
180
+ @update_time = update_time unless update_time == SKIP
181
+ @supplementary_data = supplementary_data unless supplementary_data == SKIP
182
+ @payee = payee unless payee == SKIP
183
+ end
184
+
185
+ # Creates an instance of the object from a hash.
186
+ def self.from_hash(hash)
187
+ return nil unless hash
188
+
189
+ # Extract variables from the hash.
190
+ status = hash.key?('status') ? hash['status'] : SKIP
191
+ status_details = CaptureStatusDetails.from_hash(hash['status_details']) if
192
+ hash['status_details']
193
+ id = hash.key?('id') ? hash['id'] : SKIP
194
+ amount = Money.from_hash(hash['amount']) if hash['amount']
195
+ invoice_id = hash.key?('invoice_id') ? hash['invoice_id'] : SKIP
196
+ custom_id = hash.key?('custom_id') ? hash['custom_id'] : SKIP
197
+ if hash['network_transaction_reference']
198
+ network_transaction_reference = NetworkTransaction.from_hash(hash['network_transaction_reference'])
199
+ end
200
+ seller_protection = SellerProtection.from_hash(hash['seller_protection']) if
201
+ hash['seller_protection']
202
+ final_capture = hash['final_capture'] ||= false
203
+ if hash['seller_receivable_breakdown']
204
+ seller_receivable_breakdown = SellerReceivableBreakdown.from_hash(hash['seller_receivable_breakdown'])
205
+ end
206
+ disbursement_mode =
207
+ hash['disbursement_mode'] ||= DisbursementMode::INSTANT
208
+ # Parameter is an array, so we need to iterate through it
209
+ links = nil
210
+ unless hash['links'].nil?
211
+ links = []
212
+ hash['links'].each do |structure|
213
+ links << (LinkDescription.from_hash(structure) if structure)
214
+ end
215
+ end
216
+
217
+ links = SKIP unless hash.key?('links')
218
+ processor_response = ProcessorResponse.from_hash(hash['processor_response']) if
219
+ hash['processor_response']
220
+ create_time = hash.key?('create_time') ? hash['create_time'] : SKIP
221
+ update_time = hash.key?('update_time') ? hash['update_time'] : SKIP
222
+ supplementary_data = PaymentSupplementaryData.from_hash(hash['supplementary_data']) if
223
+ hash['supplementary_data']
224
+ payee = PayeeBase.from_hash(hash['payee']) if hash['payee']
225
+
226
+ # Create object from extracted values.
227
+ CapturedPayment.new(status: status,
228
+ status_details: status_details,
229
+ id: id,
230
+ amount: amount,
231
+ invoice_id: invoice_id,
232
+ custom_id: custom_id,
233
+ network_transaction_reference: network_transaction_reference,
234
+ seller_protection: seller_protection,
235
+ final_capture: final_capture,
236
+ seller_receivable_breakdown: seller_receivable_breakdown,
237
+ disbursement_mode: disbursement_mode,
238
+ links: links,
239
+ processor_response: processor_response,
240
+ create_time: create_time,
241
+ update_time: update_time,
242
+ supplementary_data: supplementary_data,
243
+ payee: payee)
244
+ end
245
+
246
+ # Provides a human-readable string representation of the object.
247
+ def to_s
248
+ class_name = self.class.name.split('::').last
249
+ "<#{class_name} status: #{@status}, status_details: #{@status_details}, id: #{@id}, amount:"\
250
+ " #{@amount}, invoice_id: #{@invoice_id}, custom_id: #{@custom_id},"\
251
+ " network_transaction_reference: #{@network_transaction_reference}, seller_protection:"\
252
+ " #{@seller_protection}, final_capture: #{@final_capture}, seller_receivable_breakdown:"\
253
+ " #{@seller_receivable_breakdown}, disbursement_mode: #{@disbursement_mode}, links:"\
254
+ " #{@links}, processor_response: #{@processor_response}, create_time: #{@create_time},"\
255
+ " update_time: #{@update_time}, supplementary_data: #{@supplementary_data}, payee:"\
256
+ " #{@payee}>"
257
+ end
258
+
259
+ # Provides a debugging-friendly string with detailed object information.
260
+ def inspect
261
+ class_name = self.class.name.split('::').last
262
+ "<#{class_name} status: #{@status.inspect}, status_details: #{@status_details.inspect}, id:"\
263
+ " #{@id.inspect}, amount: #{@amount.inspect}, invoice_id: #{@invoice_id.inspect}, custom_id:"\
264
+ " #{@custom_id.inspect}, network_transaction_reference:"\
265
+ " #{@network_transaction_reference.inspect}, seller_protection:"\
266
+ " #{@seller_protection.inspect}, final_capture: #{@final_capture.inspect},"\
267
+ " seller_receivable_breakdown: #{@seller_receivable_breakdown.inspect}, disbursement_mode:"\
268
+ " #{@disbursement_mode.inspect}, links: #{@links.inspect}, processor_response:"\
269
+ " #{@processor_response.inspect}, create_time: #{@create_time.inspect}, update_time:"\
270
+ " #{@update_time.inspect}, supplementary_data: #{@supplementary_data.inspect}, payee:"\
271
+ " #{@payee.inspect}>"
272
+ end
273
+ end
274
+ end