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,225 @@
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 authorization with additional payment details, such as risk assessment
8
+ # and processor response. These details are populated only for certain payment
9
+ # methods.
10
+ class AuthorizationWithAdditionalData < BaseModel
11
+ SKIP = Object.new
12
+ private_constant :SKIP
13
+
14
+ # The status for the authorized payment.
15
+ # @return [AuthorizationStatus]
16
+ attr_accessor :status
17
+
18
+ # The details of the authorized payment status.
19
+ # @return [AuthorizationStatusDetails]
20
+ attr_accessor :status_details
21
+
22
+ # The PayPal-generated ID for the authorized payment.
23
+ # @return [String]
24
+ attr_accessor :id
25
+
26
+ # The currency and amount for a financial transaction, such as a balance or
27
+ # payment due.
28
+ # @return [Money]
29
+ attr_accessor :amount
30
+
31
+ # The API caller-provided external invoice number for this order. Appears in
32
+ # both the payer's transaction history and the emails that the payer
33
+ # receives.
34
+ # @return [String]
35
+ attr_accessor :invoice_id
36
+
37
+ # The API caller-provided external ID. Used to reconcile API
38
+ # caller-initiated transactions with PayPal transactions. Appears in
39
+ # transaction and settlement reports.
40
+ # @return [String]
41
+ attr_accessor :custom_id
42
+
43
+ # Reference values used by the card network to identify a transaction.
44
+ # @return [NetworkTransaction]
45
+ attr_accessor :network_transaction_reference
46
+
47
+ # The level of protection offered as defined by [PayPal Seller Protection
48
+ # for
49
+ # Merchants](https://www.paypal.com/us/webapps/mpp/security/seller-protectio
50
+ # n).
51
+ # @return [SellerProtection]
52
+ attr_accessor :seller_protection
53
+
54
+ # The date and time, in [Internet date and time
55
+ # format](https://tools.ietf.org/html/rfc3339#section-5.6). Seconds are
56
+ # required while fractional seconds are optional. Note: The regular
57
+ # expression provides guidance but does not reject all invalid dates.
58
+ # @return [String]
59
+ attr_accessor :expiration_time
60
+
61
+ # An array of related [HATEOAS
62
+ # links](/docs/api/reference/api-responses/#hateoas-links).
63
+ # @return [Array[LinkDescription]]
64
+ attr_accessor :links
65
+
66
+ # The date and time, in [Internet date and time
67
+ # format](https://tools.ietf.org/html/rfc3339#section-5.6). Seconds are
68
+ # required while fractional seconds are optional. Note: The regular
69
+ # expression provides guidance but does not reject all invalid dates.
70
+ # @return [String]
71
+ attr_accessor :create_time
72
+
73
+ # The date and time, in [Internet date and time
74
+ # format](https://tools.ietf.org/html/rfc3339#section-5.6). Seconds are
75
+ # required while fractional seconds are optional. Note: The regular
76
+ # expression provides guidance but does not reject all invalid dates.
77
+ # @return [String]
78
+ attr_accessor :update_time
79
+
80
+ # The processor response information for payment requests, such as direct
81
+ # credit card transactions.
82
+ # @return [ProcessorResponse]
83
+ attr_accessor :processor_response
84
+
85
+ # A mapping from model property names to API property names.
86
+ def self.names
87
+ @_hash = {} if @_hash.nil?
88
+ @_hash['status'] = 'status'
89
+ @_hash['status_details'] = 'status_details'
90
+ @_hash['id'] = 'id'
91
+ @_hash['amount'] = 'amount'
92
+ @_hash['invoice_id'] = 'invoice_id'
93
+ @_hash['custom_id'] = 'custom_id'
94
+ @_hash['network_transaction_reference'] =
95
+ 'network_transaction_reference'
96
+ @_hash['seller_protection'] = 'seller_protection'
97
+ @_hash['expiration_time'] = 'expiration_time'
98
+ @_hash['links'] = 'links'
99
+ @_hash['create_time'] = 'create_time'
100
+ @_hash['update_time'] = 'update_time'
101
+ @_hash['processor_response'] = 'processor_response'
102
+ @_hash
103
+ end
104
+
105
+ # An array for optional fields
106
+ def self.optionals
107
+ %w[
108
+ status
109
+ status_details
110
+ id
111
+ amount
112
+ invoice_id
113
+ custom_id
114
+ network_transaction_reference
115
+ seller_protection
116
+ expiration_time
117
+ links
118
+ create_time
119
+ update_time
120
+ processor_response
121
+ ]
122
+ end
123
+
124
+ # An array for nullable fields
125
+ def self.nullables
126
+ []
127
+ end
128
+
129
+ def initialize(status: SKIP, status_details: SKIP, id: SKIP, amount: SKIP,
130
+ invoice_id: SKIP, custom_id: SKIP,
131
+ network_transaction_reference: SKIP, seller_protection: SKIP,
132
+ expiration_time: SKIP, links: SKIP, create_time: SKIP,
133
+ update_time: SKIP, processor_response: SKIP)
134
+ @status = status unless status == SKIP
135
+ @status_details = status_details unless status_details == SKIP
136
+ @id = id unless id == SKIP
137
+ @amount = amount unless amount == SKIP
138
+ @invoice_id = invoice_id unless invoice_id == SKIP
139
+ @custom_id = custom_id unless custom_id == SKIP
140
+ unless network_transaction_reference == SKIP
141
+ @network_transaction_reference =
142
+ network_transaction_reference
143
+ end
144
+ @seller_protection = seller_protection unless seller_protection == SKIP
145
+ @expiration_time = expiration_time unless expiration_time == SKIP
146
+ @links = links unless links == SKIP
147
+ @create_time = create_time unless create_time == SKIP
148
+ @update_time = update_time unless update_time == SKIP
149
+ @processor_response = processor_response unless processor_response == SKIP
150
+ end
151
+
152
+ # Creates an instance of the object from a hash.
153
+ def self.from_hash(hash)
154
+ return nil unless hash
155
+
156
+ # Extract variables from the hash.
157
+ status = hash.key?('status') ? hash['status'] : SKIP
158
+ status_details = AuthorizationStatusDetails.from_hash(hash['status_details']) if
159
+ hash['status_details']
160
+ id = hash.key?('id') ? hash['id'] : SKIP
161
+ amount = Money.from_hash(hash['amount']) if hash['amount']
162
+ invoice_id = hash.key?('invoice_id') ? hash['invoice_id'] : SKIP
163
+ custom_id = hash.key?('custom_id') ? hash['custom_id'] : SKIP
164
+ if hash['network_transaction_reference']
165
+ network_transaction_reference = NetworkTransaction.from_hash(hash['network_transaction_reference'])
166
+ end
167
+ seller_protection = SellerProtection.from_hash(hash['seller_protection']) if
168
+ hash['seller_protection']
169
+ expiration_time =
170
+ hash.key?('expiration_time') ? hash['expiration_time'] : SKIP
171
+ # Parameter is an array, so we need to iterate through it
172
+ links = nil
173
+ unless hash['links'].nil?
174
+ links = []
175
+ hash['links'].each do |structure|
176
+ links << (LinkDescription.from_hash(structure) if structure)
177
+ end
178
+ end
179
+
180
+ links = SKIP unless hash.key?('links')
181
+ create_time = hash.key?('create_time') ? hash['create_time'] : SKIP
182
+ update_time = hash.key?('update_time') ? hash['update_time'] : SKIP
183
+ processor_response = ProcessorResponse.from_hash(hash['processor_response']) if
184
+ hash['processor_response']
185
+
186
+ # Create object from extracted values.
187
+ AuthorizationWithAdditionalData.new(status: status,
188
+ status_details: status_details,
189
+ id: id,
190
+ amount: amount,
191
+ invoice_id: invoice_id,
192
+ custom_id: custom_id,
193
+ network_transaction_reference: network_transaction_reference,
194
+ seller_protection: seller_protection,
195
+ expiration_time: expiration_time,
196
+ links: links,
197
+ create_time: create_time,
198
+ update_time: update_time,
199
+ processor_response: processor_response)
200
+ end
201
+
202
+ # Provides a human-readable string representation of the object.
203
+ def to_s
204
+ class_name = self.class.name.split('::').last
205
+ "<#{class_name} status: #{@status}, status_details: #{@status_details}, id: #{@id}, amount:"\
206
+ " #{@amount}, invoice_id: #{@invoice_id}, custom_id: #{@custom_id},"\
207
+ " network_transaction_reference: #{@network_transaction_reference}, seller_protection:"\
208
+ " #{@seller_protection}, expiration_time: #{@expiration_time}, links: #{@links},"\
209
+ " create_time: #{@create_time}, update_time: #{@update_time}, processor_response:"\
210
+ " #{@processor_response}>"
211
+ end
212
+
213
+ # Provides a debugging-friendly string with detailed object information.
214
+ def inspect
215
+ class_name = self.class.name.split('::').last
216
+ "<#{class_name} status: #{@status.inspect}, status_details: #{@status_details.inspect}, id:"\
217
+ " #{@id.inspect}, amount: #{@amount.inspect}, invoice_id: #{@invoice_id.inspect}, custom_id:"\
218
+ " #{@custom_id.inspect}, network_transaction_reference:"\
219
+ " #{@network_transaction_reference.inspect}, seller_protection:"\
220
+ " #{@seller_protection.inspect}, expiration_time: #{@expiration_time.inspect}, links:"\
221
+ " #{@links.inspect}, create_time: #{@create_time.inspect}, update_time:"\
222
+ " #{@update_time.inspect}, processor_response: #{@processor_response.inspect}>"
223
+ end
224
+ end
225
+ end
@@ -0,0 +1,156 @@
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 address verification code for Visa, Discover, Mastercard, or American
8
+ # Express transactions.
9
+ class AvsCode
10
+ AVS_CODE = [
11
+ # For Visa, Mastercard, or Discover transactions, the address matches but
12
+ # the zip code does not match. For American Express transactions, the card
13
+ # holder address is correct.
14
+ AVS_A = 'A'.freeze,
15
+
16
+ # For Visa, Mastercard, or Discover transactions, the address matches.
17
+ # International A.
18
+ AVS_B = 'B'.freeze,
19
+
20
+ # For Visa, Mastercard, or Discover transactions, no values match.
21
+ # International N.
22
+ AVS_C = 'C'.freeze,
23
+
24
+ # For Visa, Mastercard, or Discover transactions, the address and postal
25
+ # code match. International X.
26
+ AVS_D = 'D'.freeze,
27
+
28
+ # For Visa, Mastercard, or Discover transactions, not allowed for Internet
29
+ # or phone transactions. For American Express card holder, the name is
30
+ # incorrect but the address and postal code match.
31
+ AVS_E = 'E'.freeze,
32
+
33
+ # For Visa, Mastercard, or Discover transactions, the address and postal
34
+ # code match. UK-specific X. For American Express card holder, the name is
35
+ # incorrect but the address matches.
36
+ AVS_F = 'F'.freeze,
37
+
38
+ # For Visa, Mastercard, or Discover transactions, global is unavailable.
39
+ # Nothing matches.
40
+ AVS_G = 'G'.freeze,
41
+
42
+ # For Visa, Mastercard, or Discover transactions, international is
43
+ # unavailable. Not applicable.
44
+ AVS_I = 'I'.freeze,
45
+
46
+ # For Visa, Mastercard, or Discover transactions, the address and postal
47
+ # code match. For American Express card holder, the name, address, and
48
+ # postal code match.
49
+ AVS_M = 'M'.freeze,
50
+
51
+ # For Visa, Mastercard, or Discover transactions, nothing matches. For
52
+ # American Express card holder, the address and postal code are both
53
+ # incorrect.
54
+ AVS_N = 'N'.freeze,
55
+
56
+ # For Visa, Mastercard, or Discover transactions, postal international Z.
57
+ # Postal code only.
58
+ AVS_P = 'P'.freeze,
59
+
60
+ # For Visa, Mastercard, or Discover transactions, re-try the request. For
61
+ # American Express, the system is unavailable.
62
+ AVS_R = 'R'.freeze,
63
+
64
+ # For Visa, Mastercard, Discover, or American Express, the service is not
65
+ # supported.
66
+ AVS_S = 'S'.freeze,
67
+
68
+ # For Visa, Mastercard, or Discover transactions, the service is
69
+ # unavailable. For American Express, information is not available. For
70
+ # Maestro, the address is not checked or the acquirer had no response. The
71
+ # service is not available.
72
+ AVS_U = 'U'.freeze,
73
+
74
+ # For Visa, Mastercard, or Discover transactions, whole ZIP code. For
75
+ # American Express, the card holder name, address, and postal code are all
76
+ # incorrect.
77
+ AVS_W = 'W'.freeze,
78
+
79
+ # For Visa, Mastercard, or Discover transactions, exact match of the
80
+ # address and the nine-digit ZIP code. For American Express, the card
81
+ # holder name, address, and postal code are all incorrect.
82
+ AVS_X = 'X'.freeze,
83
+
84
+ # For Visa, Mastercard, or Discover transactions, the address and
85
+ # five-digit ZIP code match. For American Express, the card holder address
86
+ # and postal code are both correct.
87
+ AVS_Y = 'Y'.freeze,
88
+
89
+ # For Visa, Mastercard, or Discover transactions, the five-digit ZIP code
90
+ # matches but no address. For American Express, only the card holder
91
+ # postal code is correct.
92
+ AVS_Z = 'Z'.freeze,
93
+
94
+ # For Maestro, no AVS response was obtained.
95
+ AVS_NULL = 'Null'.freeze,
96
+
97
+ # For Maestro, all address information matches.
98
+ AVS_0 = '0'.freeze,
99
+
100
+ # For Maestro, none of the address information matches.
101
+ AVS_1 = '1'.freeze,
102
+
103
+ # For Maestro, part of the address information matches.
104
+ AVS_2 = '2'.freeze,
105
+
106
+ # For Maestro, the merchant did not provide AVS information. It was not
107
+ # processed.
108
+ AVS_3 = '3'.freeze,
109
+
110
+ # For Maestro, the address was not checked or the acquirer had no
111
+ # response. The service is not available.
112
+ AVS_4 = '4'.freeze
113
+ ].freeze
114
+
115
+ def self.validate(value)
116
+ return false if value.nil?
117
+
118
+ true
119
+ end
120
+
121
+ def self.from_value(value, default_value = AVS_A)
122
+ return default_value if value.nil?
123
+
124
+ str = value.to_s.strip
125
+
126
+ case str.downcase
127
+ when 'avs_a' then AVS_A
128
+ when 'avs_b' then AVS_B
129
+ when 'avs_c' then AVS_C
130
+ when 'avs_d' then AVS_D
131
+ when 'avs_e' then AVS_E
132
+ when 'avs_f' then AVS_F
133
+ when 'avs_g' then AVS_G
134
+ when 'avs_i' then AVS_I
135
+ when 'avs_m' then AVS_M
136
+ when 'avs_n' then AVS_N
137
+ when 'avs_p' then AVS_P
138
+ when 'avs_r' then AVS_R
139
+ when 'avs_s' then AVS_S
140
+ when 'avs_u' then AVS_U
141
+ when 'avs_w' then AVS_W
142
+ when 'avs_x' then AVS_X
143
+ when 'avs_y' then AVS_Y
144
+ when 'avs_z' then AVS_Z
145
+ when 'avs_null' then AVS_NULL
146
+ when 'avs_0' then AVS_0
147
+ when 'avs_1' then AVS_1
148
+ when 'avs_2' then AVS_2
149
+ when 'avs_3' then AVS_3
150
+ when 'avs_4' then AVS_4
151
+ else
152
+ default_value
153
+ end
154
+ end
155
+ end
156
+ end
@@ -0,0 +1,106 @@
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 Balance information.
8
+ class BalanceInformation < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # The [three-character ISO-4217 currency
13
+ # code](/docs/integration/direct/rest/currency-codes/) that identifies the
14
+ # currency.
15
+ # @return [String]
16
+ attr_accessor :currency
17
+
18
+ # Optional field representing if the currency is primary currency or not.
19
+ # @return [TrueClass | FalseClass]
20
+ attr_accessor :primary
21
+
22
+ # The currency and amount for a financial transaction, such as a balance or
23
+ # payment due.
24
+ # @return [Money]
25
+ attr_accessor :total_balance
26
+
27
+ # The currency and amount for a financial transaction, such as a balance or
28
+ # payment due.
29
+ # @return [Money]
30
+ attr_accessor :available_balance
31
+
32
+ # The currency and amount for a financial transaction, such as a balance or
33
+ # payment due.
34
+ # @return [Money]
35
+ attr_accessor :withheld_balance
36
+
37
+ # A mapping from model property names to API property names.
38
+ def self.names
39
+ @_hash = {} if @_hash.nil?
40
+ @_hash['currency'] = 'currency'
41
+ @_hash['primary'] = 'primary'
42
+ @_hash['total_balance'] = 'total_balance'
43
+ @_hash['available_balance'] = 'available_balance'
44
+ @_hash['withheld_balance'] = 'withheld_balance'
45
+ @_hash
46
+ end
47
+
48
+ # An array for optional fields
49
+ def self.optionals
50
+ %w[
51
+ primary
52
+ available_balance
53
+ withheld_balance
54
+ ]
55
+ end
56
+
57
+ # An array for nullable fields
58
+ def self.nullables
59
+ []
60
+ end
61
+
62
+ def initialize(currency:, total_balance:, primary: SKIP,
63
+ available_balance: SKIP, withheld_balance: SKIP)
64
+ @currency = currency
65
+ @primary = primary unless primary == SKIP
66
+ @total_balance = total_balance
67
+ @available_balance = available_balance unless available_balance == SKIP
68
+ @withheld_balance = withheld_balance unless withheld_balance == SKIP
69
+ end
70
+
71
+ # Creates an instance of the object from a hash.
72
+ def self.from_hash(hash)
73
+ return nil unless hash
74
+
75
+ # Extract variables from the hash.
76
+ currency = hash.key?('currency') ? hash['currency'] : nil
77
+ total_balance = Money.from_hash(hash['total_balance']) if hash['total_balance']
78
+ primary = hash.key?('primary') ? hash['primary'] : SKIP
79
+ available_balance = Money.from_hash(hash['available_balance']) if hash['available_balance']
80
+ withheld_balance = Money.from_hash(hash['withheld_balance']) if hash['withheld_balance']
81
+
82
+ # Create object from extracted values.
83
+ BalanceInformation.new(currency: currency,
84
+ total_balance: total_balance,
85
+ primary: primary,
86
+ available_balance: available_balance,
87
+ withheld_balance: withheld_balance)
88
+ end
89
+
90
+ # Provides a human-readable string representation of the object.
91
+ def to_s
92
+ class_name = self.class.name.split('::').last
93
+ "<#{class_name} currency: #{@currency}, primary: #{@primary}, total_balance:"\
94
+ " #{@total_balance}, available_balance: #{@available_balance}, withheld_balance:"\
95
+ " #{@withheld_balance}>"
96
+ end
97
+
98
+ # Provides a debugging-friendly string with detailed object information.
99
+ def inspect
100
+ class_name = self.class.name.split('::').last
101
+ "<#{class_name} currency: #{@currency.inspect}, primary: #{@primary.inspect},"\
102
+ " total_balance: #{@total_balance.inspect}, available_balance:"\
103
+ " #{@available_balance.inspect}, withheld_balance: #{@withheld_balance.inspect}>"
104
+ end
105
+ end
106
+ end
@@ -0,0 +1,111 @@
1
+ # paypal_server_sdk
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0
4
+ # ( https://www.apimatic.io ).
5
+
6
+ module PaypalServerSdk
7
+ # The balances response information.
8
+ class BalancesResponse < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # An array of balance detail objects.
13
+ # @return [Array[BalanceInformation]]
14
+ attr_accessor :balances
15
+
16
+ # The PayPal payer ID, which is a masked version of the PayPal account
17
+ # number intended for use with third parties. The account number is
18
+ # reversibly encrypted and a proprietary variant of Base32 is used to encode
19
+ # the result.
20
+ # @return [String]
21
+ attr_accessor :account_id
22
+
23
+ # The date and time, in [Internet date and time
24
+ # format](https://tools.ietf.org/html/rfc3339#section-5.6). Seconds are
25
+ # required while fractional seconds are optional. Note: The regular
26
+ # expression provides guidance but does not reject all invalid dates.
27
+ # @return [String]
28
+ attr_accessor :as_of_time
29
+
30
+ # The date and time, in [Internet date and time
31
+ # format](https://tools.ietf.org/html/rfc3339#section-5.6). Seconds are
32
+ # required while fractional seconds are optional. Note: The regular
33
+ # expression provides guidance but does not reject all invalid dates.
34
+ # @return [String]
35
+ attr_accessor :last_refresh_time
36
+
37
+ # A mapping from model property names to API property names.
38
+ def self.names
39
+ @_hash = {} if @_hash.nil?
40
+ @_hash['balances'] = 'balances'
41
+ @_hash['account_id'] = 'account_id'
42
+ @_hash['as_of_time'] = 'as_of_time'
43
+ @_hash['last_refresh_time'] = 'last_refresh_time'
44
+ @_hash
45
+ end
46
+
47
+ # An array for optional fields
48
+ def self.optionals
49
+ %w[
50
+ balances
51
+ account_id
52
+ as_of_time
53
+ last_refresh_time
54
+ ]
55
+ end
56
+
57
+ # An array for nullable fields
58
+ def self.nullables
59
+ []
60
+ end
61
+
62
+ def initialize(balances: SKIP, account_id: SKIP, as_of_time: SKIP,
63
+ last_refresh_time: SKIP)
64
+ @balances = balances unless balances == SKIP
65
+ @account_id = account_id unless account_id == SKIP
66
+ @as_of_time = as_of_time unless as_of_time == SKIP
67
+ @last_refresh_time = last_refresh_time unless last_refresh_time == SKIP
68
+ end
69
+
70
+ # Creates an instance of the object from a hash.
71
+ def self.from_hash(hash)
72
+ return nil unless hash
73
+
74
+ # Extract variables from the hash.
75
+ # Parameter is an array, so we need to iterate through it
76
+ balances = nil
77
+ unless hash['balances'].nil?
78
+ balances = []
79
+ hash['balances'].each do |structure|
80
+ balances << (BalanceInformation.from_hash(structure) if structure)
81
+ end
82
+ end
83
+
84
+ balances = SKIP unless hash.key?('balances')
85
+ account_id = hash.key?('account_id') ? hash['account_id'] : SKIP
86
+ as_of_time = hash.key?('as_of_time') ? hash['as_of_time'] : SKIP
87
+ last_refresh_time =
88
+ hash.key?('last_refresh_time') ? hash['last_refresh_time'] : SKIP
89
+
90
+ # Create object from extracted values.
91
+ BalancesResponse.new(balances: balances,
92
+ account_id: account_id,
93
+ as_of_time: as_of_time,
94
+ last_refresh_time: last_refresh_time)
95
+ end
96
+
97
+ # Provides a human-readable string representation of the object.
98
+ def to_s
99
+ class_name = self.class.name.split('::').last
100
+ "<#{class_name} balances: #{@balances}, account_id: #{@account_id}, as_of_time:"\
101
+ " #{@as_of_time}, last_refresh_time: #{@last_refresh_time}>"
102
+ end
103
+
104
+ # Provides a debugging-friendly string with detailed object information.
105
+ def inspect
106
+ class_name = self.class.name.split('::').last
107
+ "<#{class_name} balances: #{@balances.inspect}, account_id: #{@account_id.inspect},"\
108
+ " as_of_time: #{@as_of_time.inspect}, last_refresh_time: #{@last_refresh_time.inspect}>"
109
+ end
110
+ end
111
+ end