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,146 @@
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 payer information.
8
+ class PayerInformation < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # The PayPal` customer account ID.
13
+ # @return [String]
14
+ attr_accessor :account_id
15
+
16
+ # The internationalized email address. Note: Up to 64 characters are allowed
17
+ # before and 255 characters are allowed after the @ sign. However, the
18
+ # generally accepted maximum length for an email address is 254 characters.
19
+ # The pattern verifies that an unquoted @ sign exists.
20
+ # @return [String]
21
+ attr_accessor :email_address
22
+
23
+ # The phone number, in its canonical international [E.164 numbering plan
24
+ # format](https://www.itu.int/rec/T-REC-E.164/en).
25
+ # @return [Phone]
26
+ attr_accessor :phone_number
27
+
28
+ # The address status of the payer. Value is either: Y. Verified. N. Not
29
+ # verified.
30
+ # @return [String]
31
+ attr_accessor :address_status
32
+
33
+ # The status of the payer. Value is `Y` or `N`.
34
+ # @return [String]
35
+ attr_accessor :payer_status
36
+
37
+ # The name of the party.
38
+ # @return [PayerName]
39
+ attr_accessor :payer_name
40
+
41
+ # The [two-character ISO 3166-1
42
+ # code](/docs/integration/direct/rest/country-codes/) that identifies the
43
+ # country or region. Note: The country code for Great Britain is GB and not
44
+ # UK as used in the top-level domain names for that country. Use the `C2`
45
+ # country code for China worldwide for comparable uncontrolled price (CUP)
46
+ # method, bank card, and cross-border transactions.
47
+ # @return [String]
48
+ attr_accessor :country_code
49
+
50
+ # A simple postal address with coarse-grained fields. Do not use for an
51
+ # international address. Use for backward compatibility only. Does not
52
+ # contain phone.
53
+ # @return [SimplePostalAddressCoarseGrained]
54
+ attr_accessor :address
55
+
56
+ # A mapping from model property names to API property names.
57
+ def self.names
58
+ @_hash = {} if @_hash.nil?
59
+ @_hash['account_id'] = 'account_id'
60
+ @_hash['email_address'] = 'email_address'
61
+ @_hash['phone_number'] = 'phone_number'
62
+ @_hash['address_status'] = 'address_status'
63
+ @_hash['payer_status'] = 'payer_status'
64
+ @_hash['payer_name'] = 'payer_name'
65
+ @_hash['country_code'] = 'country_code'
66
+ @_hash['address'] = 'address'
67
+ @_hash
68
+ end
69
+
70
+ # An array for optional fields
71
+ def self.optionals
72
+ %w[
73
+ account_id
74
+ email_address
75
+ phone_number
76
+ address_status
77
+ payer_status
78
+ payer_name
79
+ country_code
80
+ address
81
+ ]
82
+ end
83
+
84
+ # An array for nullable fields
85
+ def self.nullables
86
+ []
87
+ end
88
+
89
+ def initialize(account_id: SKIP, email_address: SKIP, phone_number: SKIP,
90
+ address_status: SKIP, payer_status: SKIP, payer_name: SKIP,
91
+ country_code: SKIP, address: SKIP)
92
+ @account_id = account_id unless account_id == SKIP
93
+ @email_address = email_address unless email_address == SKIP
94
+ @phone_number = phone_number unless phone_number == SKIP
95
+ @address_status = address_status unless address_status == SKIP
96
+ @payer_status = payer_status unless payer_status == SKIP
97
+ @payer_name = payer_name unless payer_name == SKIP
98
+ @country_code = country_code unless country_code == SKIP
99
+ @address = address unless address == SKIP
100
+ end
101
+
102
+ # Creates an instance of the object from a hash.
103
+ def self.from_hash(hash)
104
+ return nil unless hash
105
+
106
+ # Extract variables from the hash.
107
+ account_id = hash.key?('account_id') ? hash['account_id'] : SKIP
108
+ email_address = hash.key?('email_address') ? hash['email_address'] : SKIP
109
+ phone_number = Phone.from_hash(hash['phone_number']) if hash['phone_number']
110
+ address_status =
111
+ hash.key?('address_status') ? hash['address_status'] : SKIP
112
+ payer_status = hash.key?('payer_status') ? hash['payer_status'] : SKIP
113
+ payer_name = PayerName.from_hash(hash['payer_name']) if hash['payer_name']
114
+ country_code = hash.key?('country_code') ? hash['country_code'] : SKIP
115
+ address = SimplePostalAddressCoarseGrained.from_hash(hash['address']) if hash['address']
116
+
117
+ # Create object from extracted values.
118
+ PayerInformation.new(account_id: account_id,
119
+ email_address: email_address,
120
+ phone_number: phone_number,
121
+ address_status: address_status,
122
+ payer_status: payer_status,
123
+ payer_name: payer_name,
124
+ country_code: country_code,
125
+ address: address)
126
+ end
127
+
128
+ # Provides a human-readable string representation of the object.
129
+ def to_s
130
+ class_name = self.class.name.split('::').last
131
+ "<#{class_name} account_id: #{@account_id}, email_address: #{@email_address}, phone_number:"\
132
+ " #{@phone_number}, address_status: #{@address_status}, payer_status: #{@payer_status},"\
133
+ " payer_name: #{@payer_name}, country_code: #{@country_code}, address: #{@address}>"
134
+ end
135
+
136
+ # Provides a debugging-friendly string with detailed object information.
137
+ def inspect
138
+ class_name = self.class.name.split('::').last
139
+ "<#{class_name} account_id: #{@account_id.inspect}, email_address:"\
140
+ " #{@email_address.inspect}, phone_number: #{@phone_number.inspect}, address_status:"\
141
+ " #{@address_status.inspect}, payer_status: #{@payer_status.inspect}, payer_name:"\
142
+ " #{@payer_name.inspect}, country_code: #{@country_code.inspect}, address:"\
143
+ " #{@address.inspect}>"
144
+ end
145
+ end
146
+ end
@@ -0,0 +1,128 @@
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 name of the party.
8
+ class PayerName < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # The prefix, or title, to the party's name.
13
+ # @return [String]
14
+ attr_accessor :prefix
15
+
16
+ # When the party is a person, the party's given, or first, name.
17
+ # @return [String]
18
+ attr_accessor :given_name
19
+
20
+ # When the party is a person, the party's surname or family name. Also known
21
+ # as the last name. Required when the party is a person. Use also to store
22
+ # multiple surnames including the matronymic, or mother's, surname.
23
+ # @return [String]
24
+ attr_accessor :surname
25
+
26
+ # When the party is a person, the party's middle name. Use also to store
27
+ # multiple middle names including the patronymic, or father's, middle name.
28
+ # @return [String]
29
+ attr_accessor :middle_name
30
+
31
+ # The suffix for the party's name.
32
+ # @return [String]
33
+ attr_accessor :suffix
34
+
35
+ # DEPRECATED. The party's alternate name. Can be a business name, nickname,
36
+ # or any other name that cannot be split into first, last name. Required
37
+ # when the party is a business.
38
+ # @return [String]
39
+ attr_accessor :alternate_full_name
40
+
41
+ # When the party is a person, the party's full name.
42
+ # @return [String]
43
+ attr_accessor :full_name
44
+
45
+ # A mapping from model property names to API property names.
46
+ def self.names
47
+ @_hash = {} if @_hash.nil?
48
+ @_hash['prefix'] = 'prefix'
49
+ @_hash['given_name'] = 'given_name'
50
+ @_hash['surname'] = 'surname'
51
+ @_hash['middle_name'] = 'middle_name'
52
+ @_hash['suffix'] = 'suffix'
53
+ @_hash['alternate_full_name'] = 'alternate_full_name'
54
+ @_hash['full_name'] = 'full_name'
55
+ @_hash
56
+ end
57
+
58
+ # An array for optional fields
59
+ def self.optionals
60
+ %w[
61
+ prefix
62
+ given_name
63
+ surname
64
+ middle_name
65
+ suffix
66
+ alternate_full_name
67
+ full_name
68
+ ]
69
+ end
70
+
71
+ # An array for nullable fields
72
+ def self.nullables
73
+ []
74
+ end
75
+
76
+ def initialize(prefix: SKIP, given_name: SKIP, surname: SKIP,
77
+ middle_name: SKIP, suffix: SKIP, alternate_full_name: SKIP,
78
+ full_name: SKIP)
79
+ @prefix = prefix unless prefix == SKIP
80
+ @given_name = given_name unless given_name == SKIP
81
+ @surname = surname unless surname == SKIP
82
+ @middle_name = middle_name unless middle_name == SKIP
83
+ @suffix = suffix unless suffix == SKIP
84
+ @alternate_full_name = alternate_full_name unless alternate_full_name == SKIP
85
+ @full_name = full_name unless full_name == SKIP
86
+ end
87
+
88
+ # Creates an instance of the object from a hash.
89
+ def self.from_hash(hash)
90
+ return nil unless hash
91
+
92
+ # Extract variables from the hash.
93
+ prefix = hash.key?('prefix') ? hash['prefix'] : SKIP
94
+ given_name = hash.key?('given_name') ? hash['given_name'] : SKIP
95
+ surname = hash.key?('surname') ? hash['surname'] : SKIP
96
+ middle_name = hash.key?('middle_name') ? hash['middle_name'] : SKIP
97
+ suffix = hash.key?('suffix') ? hash['suffix'] : SKIP
98
+ alternate_full_name =
99
+ hash.key?('alternate_full_name') ? hash['alternate_full_name'] : SKIP
100
+ full_name = hash.key?('full_name') ? hash['full_name'] : SKIP
101
+
102
+ # Create object from extracted values.
103
+ PayerName.new(prefix: prefix,
104
+ given_name: given_name,
105
+ surname: surname,
106
+ middle_name: middle_name,
107
+ suffix: suffix,
108
+ alternate_full_name: alternate_full_name,
109
+ full_name: full_name)
110
+ end
111
+
112
+ # Provides a human-readable string representation of the object.
113
+ def to_s
114
+ class_name = self.class.name.split('::').last
115
+ "<#{class_name} prefix: #{@prefix}, given_name: #{@given_name}, surname: #{@surname},"\
116
+ " middle_name: #{@middle_name}, suffix: #{@suffix}, alternate_full_name:"\
117
+ " #{@alternate_full_name}, full_name: #{@full_name}>"
118
+ end
119
+
120
+ # Provides a debugging-friendly string with detailed object information.
121
+ def inspect
122
+ class_name = self.class.name.split('::').last
123
+ "<#{class_name} prefix: #{@prefix.inspect}, given_name: #{@given_name.inspect}, surname:"\
124
+ " #{@surname.inspect}, middle_name: #{@middle_name.inspect}, suffix: #{@suffix.inspect},"\
125
+ " alternate_full_name: #{@alternate_full_name.inspect}, full_name: #{@full_name.inspect}>"
126
+ end
127
+ end
128
+ end
@@ -0,0 +1,101 @@
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 declined payment transactions might have payment advice codes. The card
8
+ # networks, like Visa and Mastercard, return payment advice codes.
9
+ class PaymentAdviceCode
10
+ PAYMENT_ADVICE_CODE = [
11
+ # For Mastercard, expired card account upgrade or portfolio sale
12
+ # conversion. Obtain new account information before next billing cycle.
13
+ PAYMENTADVICE_01 = '01'.freeze,
14
+
15
+ # For Mastercard, over credit limit or insufficient funds. Retry the
16
+ # transaction 72 hours later. For Visa, the card holder wants to stop only
17
+ # one specific payment in the recurring payment relationship. The merchant
18
+ # must NOT resubmit the same transaction. The merchant can continue the
19
+ # billing process in the subsequent billing period.
20
+ PAYMENTADVICE_02 = '02'.freeze,
21
+
22
+ # For Mastercard, account closed as fraudulent. Obtain another type of
23
+ # payment from customer due to account being closed or fraud. Possible
24
+ # reason: Account closed as fraudulent. For Visa, the card holder wants to
25
+ # stop all recurring payment transactions for a specific merchant. Stop
26
+ # recurring payment requests.
27
+ PAYMENTADVICE_03 = '03'.freeze,
28
+
29
+ # For Mastercard, token requirements not fulfilled for this token type.
30
+ PAYMENTADVICE_04 = '04'.freeze,
31
+
32
+ # For Mastercard, the card holder has been unsuccessful at canceling
33
+ # recurring payment through merchant. Stop recurring payment requests. For
34
+ # Visa, all recurring payments were canceled for the card number
35
+ # requested. Stop recurring payment requests.
36
+ PAYMENTADVICE_21 = '21'.freeze,
37
+
38
+ # For Mastercard, merchant does not qualify for product code.
39
+ PAYMENTADVICE_22 = '22'.freeze,
40
+
41
+ # For Mastercard, retry after 1 hour.
42
+ PAYMENTADVICE_24 = '24'.freeze,
43
+
44
+ # For Mastercard, retry after 24 hours.
45
+ PAYMENTADVICE_25 = '25'.freeze,
46
+
47
+ # For Mastercard, retry after 2 days.
48
+ PAYMENTADVICE_26 = '26'.freeze,
49
+
50
+ # For Mastercard, retry after 4 days.
51
+ PAYMENTADVICE_27 = '27'.freeze,
52
+
53
+ # For Mastercard, retry after 6 days.
54
+ PAYMENTADVICE_28 = '28'.freeze,
55
+
56
+ # For Mastercard, retry after 8 days.
57
+ PAYMENTADVICE_29 = '29'.freeze,
58
+
59
+ # For Mastercard, retry after 10 days .
60
+ PAYMENTADVICE_30 = '30'.freeze,
61
+
62
+ # For Mastercard, consumer non-reloadable prepaid card.
63
+ PAYMENTADVICE_40 = '40'.freeze,
64
+
65
+ # For Mastercard, consumer multi-use virtual card number.
66
+ PAYMENTADVICE_43 = '43'.freeze
67
+ ].freeze
68
+
69
+ def self.validate(value)
70
+ return false if value.nil?
71
+
72
+ true
73
+ end
74
+
75
+ def self.from_value(value, default_value = PAYMENTADVICE_01)
76
+ return default_value if value.nil?
77
+
78
+ str = value.to_s.strip
79
+
80
+ case str.downcase
81
+ when 'paymentadvice_01' then PAYMENTADVICE_01
82
+ when 'paymentadvice_02' then PAYMENTADVICE_02
83
+ when 'paymentadvice_03' then PAYMENTADVICE_03
84
+ when 'paymentadvice_04' then PAYMENTADVICE_04
85
+ when 'paymentadvice_21' then PAYMENTADVICE_21
86
+ when 'paymentadvice_22' then PAYMENTADVICE_22
87
+ when 'paymentadvice_24' then PAYMENTADVICE_24
88
+ when 'paymentadvice_25' then PAYMENTADVICE_25
89
+ when 'paymentadvice_26' then PAYMENTADVICE_26
90
+ when 'paymentadvice_27' then PAYMENTADVICE_27
91
+ when 'paymentadvice_28' then PAYMENTADVICE_28
92
+ when 'paymentadvice_29' then PAYMENTADVICE_29
93
+ when 'paymentadvice_30' then PAYMENTADVICE_30
94
+ when 'paymentadvice_40' then PAYMENTADVICE_40
95
+ when 'paymentadvice_43' then PAYMENTADVICE_43
96
+ else
97
+ default_value
98
+ end
99
+ end
100
+ end
101
+ end
@@ -0,0 +1,233 @@
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 authorized payment transaction.
8
+ class PaymentAuthorization < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # The status for the authorized payment.
13
+ # @return [AuthorizationStatus]
14
+ attr_accessor :status
15
+
16
+ # The details of the authorized payment status.
17
+ # @return [AuthorizationStatusDetails]
18
+ attr_accessor :status_details
19
+
20
+ # The PayPal-generated ID for the authorized 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
+ # The date and time, in [Internet date and time
53
+ # format](https://tools.ietf.org/html/rfc3339#section-5.6). Seconds are
54
+ # required while fractional seconds are optional. Note: The regular
55
+ # expression provides guidance but does not reject all invalid dates.
56
+ # @return [String]
57
+ attr_accessor :expiration_time
58
+
59
+ # An array of related [HATEOAS
60
+ # links](/docs/api/reference/api-responses/#hateoas-links).
61
+ # @return [Array[LinkDescription]]
62
+ attr_accessor :links
63
+
64
+ # The date and time, in [Internet date and time
65
+ # format](https://tools.ietf.org/html/rfc3339#section-5.6). Seconds are
66
+ # required while fractional seconds are optional. Note: The regular
67
+ # expression provides guidance but does not reject all invalid dates.
68
+ # @return [String]
69
+ attr_accessor :create_time
70
+
71
+ # The date and time, in [Internet date and time
72
+ # format](https://tools.ietf.org/html/rfc3339#section-5.6). Seconds are
73
+ # required while fractional seconds are optional. Note: The regular
74
+ # expression provides guidance but does not reject all invalid dates.
75
+ # @return [String]
76
+ attr_accessor :update_time
77
+
78
+ # The supplementary data.
79
+ # @return [PaymentSupplementaryData]
80
+ attr_accessor :supplementary_data
81
+
82
+ # The details for the merchant who receives the funds and fulfills the
83
+ # order. The merchant is also known as the payee.
84
+ # @return [PayeeBase]
85
+ attr_accessor :payee
86
+
87
+ # A mapping from model property names to API property names.
88
+ def self.names
89
+ @_hash = {} if @_hash.nil?
90
+ @_hash['status'] = 'status'
91
+ @_hash['status_details'] = 'status_details'
92
+ @_hash['id'] = 'id'
93
+ @_hash['amount'] = 'amount'
94
+ @_hash['invoice_id'] = 'invoice_id'
95
+ @_hash['custom_id'] = 'custom_id'
96
+ @_hash['network_transaction_reference'] =
97
+ 'network_transaction_reference'
98
+ @_hash['seller_protection'] = 'seller_protection'
99
+ @_hash['expiration_time'] = 'expiration_time'
100
+ @_hash['links'] = 'links'
101
+ @_hash['create_time'] = 'create_time'
102
+ @_hash['update_time'] = 'update_time'
103
+ @_hash['supplementary_data'] = 'supplementary_data'
104
+ @_hash['payee'] = 'payee'
105
+ @_hash
106
+ end
107
+
108
+ # An array for optional fields
109
+ def self.optionals
110
+ %w[
111
+ status
112
+ status_details
113
+ id
114
+ amount
115
+ invoice_id
116
+ custom_id
117
+ network_transaction_reference
118
+ seller_protection
119
+ expiration_time
120
+ links
121
+ create_time
122
+ update_time
123
+ supplementary_data
124
+ payee
125
+ ]
126
+ end
127
+
128
+ # An array for nullable fields
129
+ def self.nullables
130
+ []
131
+ end
132
+
133
+ def initialize(status: SKIP, status_details: SKIP, id: SKIP, amount: SKIP,
134
+ invoice_id: SKIP, custom_id: SKIP,
135
+ network_transaction_reference: SKIP, seller_protection: SKIP,
136
+ expiration_time: SKIP, links: SKIP, create_time: SKIP,
137
+ update_time: SKIP, supplementary_data: SKIP, payee: SKIP)
138
+ @status = status unless status == SKIP
139
+ @status_details = status_details unless status_details == SKIP
140
+ @id = id unless id == SKIP
141
+ @amount = amount unless amount == SKIP
142
+ @invoice_id = invoice_id unless invoice_id == SKIP
143
+ @custom_id = custom_id unless custom_id == SKIP
144
+ unless network_transaction_reference == SKIP
145
+ @network_transaction_reference =
146
+ network_transaction_reference
147
+ end
148
+ @seller_protection = seller_protection unless seller_protection == SKIP
149
+ @expiration_time = expiration_time unless expiration_time == SKIP
150
+ @links = links unless links == SKIP
151
+ @create_time = create_time unless create_time == SKIP
152
+ @update_time = update_time unless update_time == SKIP
153
+ @supplementary_data = supplementary_data unless supplementary_data == SKIP
154
+ @payee = payee unless payee == SKIP
155
+ end
156
+
157
+ # Creates an instance of the object from a hash.
158
+ def self.from_hash(hash)
159
+ return nil unless hash
160
+
161
+ # Extract variables from the hash.
162
+ status = hash.key?('status') ? hash['status'] : SKIP
163
+ status_details = AuthorizationStatusDetails.from_hash(hash['status_details']) if
164
+ hash['status_details']
165
+ id = hash.key?('id') ? hash['id'] : SKIP
166
+ amount = Money.from_hash(hash['amount']) if hash['amount']
167
+ invoice_id = hash.key?('invoice_id') ? hash['invoice_id'] : SKIP
168
+ custom_id = hash.key?('custom_id') ? hash['custom_id'] : SKIP
169
+ if hash['network_transaction_reference']
170
+ network_transaction_reference = NetworkTransaction.from_hash(hash['network_transaction_reference'])
171
+ end
172
+ seller_protection = SellerProtection.from_hash(hash['seller_protection']) if
173
+ hash['seller_protection']
174
+ expiration_time =
175
+ hash.key?('expiration_time') ? hash['expiration_time'] : SKIP
176
+ # Parameter is an array, so we need to iterate through it
177
+ links = nil
178
+ unless hash['links'].nil?
179
+ links = []
180
+ hash['links'].each do |structure|
181
+ links << (LinkDescription.from_hash(structure) if structure)
182
+ end
183
+ end
184
+
185
+ links = SKIP unless hash.key?('links')
186
+ create_time = hash.key?('create_time') ? hash['create_time'] : SKIP
187
+ update_time = hash.key?('update_time') ? hash['update_time'] : SKIP
188
+ supplementary_data = PaymentSupplementaryData.from_hash(hash['supplementary_data']) if
189
+ hash['supplementary_data']
190
+ payee = PayeeBase.from_hash(hash['payee']) if hash['payee']
191
+
192
+ # Create object from extracted values.
193
+ PaymentAuthorization.new(status: status,
194
+ status_details: status_details,
195
+ id: id,
196
+ amount: amount,
197
+ invoice_id: invoice_id,
198
+ custom_id: custom_id,
199
+ network_transaction_reference: network_transaction_reference,
200
+ seller_protection: seller_protection,
201
+ expiration_time: expiration_time,
202
+ links: links,
203
+ create_time: create_time,
204
+ update_time: update_time,
205
+ supplementary_data: supplementary_data,
206
+ payee: payee)
207
+ end
208
+
209
+ # Provides a human-readable string representation of the object.
210
+ def to_s
211
+ class_name = self.class.name.split('::').last
212
+ "<#{class_name} status: #{@status}, status_details: #{@status_details}, id: #{@id}, amount:"\
213
+ " #{@amount}, invoice_id: #{@invoice_id}, custom_id: #{@custom_id},"\
214
+ " network_transaction_reference: #{@network_transaction_reference}, seller_protection:"\
215
+ " #{@seller_protection}, expiration_time: #{@expiration_time}, links: #{@links},"\
216
+ " create_time: #{@create_time}, update_time: #{@update_time}, supplementary_data:"\
217
+ " #{@supplementary_data}, payee: #{@payee}>"
218
+ end
219
+
220
+ # Provides a debugging-friendly string with detailed object information.
221
+ def inspect
222
+ class_name = self.class.name.split('::').last
223
+ "<#{class_name} status: #{@status.inspect}, status_details: #{@status_details.inspect}, id:"\
224
+ " #{@id.inspect}, amount: #{@amount.inspect}, invoice_id: #{@invoice_id.inspect}, custom_id:"\
225
+ " #{@custom_id.inspect}, network_transaction_reference:"\
226
+ " #{@network_transaction_reference.inspect}, seller_protection:"\
227
+ " #{@seller_protection.inspect}, expiration_time: #{@expiration_time.inspect}, links:"\
228
+ " #{@links.inspect}, create_time: #{@create_time.inspect}, update_time:"\
229
+ " #{@update_time.inspect}, supplementary_data: #{@supplementary_data.inspect}, payee:"\
230
+ " #{@payee.inspect}>"
231
+ end
232
+ end
233
+ end