paypal-server-sdk 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (275) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +35 -0
  3. data/README.md +112 -0
  4. data/lib/paypal_server_sdk/api_helper.rb +10 -0
  5. data/lib/paypal_server_sdk/client.rb +85 -0
  6. data/lib/paypal_server_sdk/configuration.rb +109 -0
  7. data/lib/paypal_server_sdk/controllers/base_controller.rb +71 -0
  8. data/lib/paypal_server_sdk/controllers/o_auth_authorization_controller.rb +42 -0
  9. data/lib/paypal_server_sdk/controllers/orders_controller.rb +517 -0
  10. data/lib/paypal_server_sdk/controllers/payments_controller.rb +404 -0
  11. data/lib/paypal_server_sdk/controllers/vault_controller.rb +224 -0
  12. data/lib/paypal_server_sdk/exceptions/api_exception.rb +10 -0
  13. data/lib/paypal_server_sdk/exceptions/error_exception.rb +71 -0
  14. data/lib/paypal_server_sdk/exceptions/o_auth_provider_exception.rb +48 -0
  15. data/lib/paypal_server_sdk/http/api_response.rb +21 -0
  16. data/lib/paypal_server_sdk/http/auth/o_auth2.rb +136 -0
  17. data/lib/paypal_server_sdk/http/http_call_back.rb +10 -0
  18. data/lib/paypal_server_sdk/http/http_method_enum.rb +10 -0
  19. data/lib/paypal_server_sdk/http/http_request.rb +10 -0
  20. data/lib/paypal_server_sdk/http/http_response.rb +10 -0
  21. data/lib/paypal_server_sdk/logging/configuration/api_logging_configuration.rb +114 -0
  22. data/lib/paypal_server_sdk/logging/sdk_logger.rb +17 -0
  23. data/lib/paypal_server_sdk/models/activity_timestamps.rb +68 -0
  24. data/lib/paypal_server_sdk/models/address.rb +116 -0
  25. data/lib/paypal_server_sdk/models/address_details.rb +160 -0
  26. data/lib/paypal_server_sdk/models/amount_breakdown.rb +115 -0
  27. data/lib/paypal_server_sdk/models/amount_with_breakdown.rb +80 -0
  28. data/lib/paypal_server_sdk/models/apple_pay_attributes.rb +60 -0
  29. data/lib/paypal_server_sdk/models/apple_pay_attributes_response.rb +50 -0
  30. data/lib/paypal_server_sdk/models/apple_pay_card.rb +94 -0
  31. data/lib/paypal_server_sdk/models/apple_pay_card_response.rb +167 -0
  32. data/lib/paypal_server_sdk/models/apple_pay_decrypted_token_data.rb +95 -0
  33. data/lib/paypal_server_sdk/models/apple_pay_payment_data.rb +83 -0
  34. data/lib/paypal_server_sdk/models/apple_pay_payment_data_type.rb +24 -0
  35. data/lib/paypal_server_sdk/models/apple_pay_payment_object.rb +114 -0
  36. data/lib/paypal_server_sdk/models/apple_pay_payment_token.rb +51 -0
  37. data/lib/paypal_server_sdk/models/apple_pay_request.rb +137 -0
  38. data/lib/paypal_server_sdk/models/apple_pay_tokenized_card.rb +113 -0
  39. data/lib/paypal_server_sdk/models/assurance_details.rb +68 -0
  40. data/lib/paypal_server_sdk/models/authentication_response.rb +61 -0
  41. data/lib/paypal_server_sdk/models/authorization.rb +192 -0
  42. data/lib/paypal_server_sdk/models/authorization_incomplete_reason.rb +23 -0
  43. data/lib/paypal_server_sdk/models/authorization_status.rb +35 -0
  44. data/lib/paypal_server_sdk/models/authorization_status_details.rb +50 -0
  45. data/lib/paypal_server_sdk/models/authorization_status_with_details.rb +60 -0
  46. data/lib/paypal_server_sdk/models/authorization_with_additional_data.rb +205 -0
  47. data/lib/paypal_server_sdk/models/avs_code.rb +90 -0
  48. data/lib/paypal_server_sdk/models/bancontact_payment_object.rb +95 -0
  49. data/lib/paypal_server_sdk/models/bancontact_payment_request.rb +73 -0
  50. data/lib/paypal_server_sdk/models/base_model.rb +62 -0
  51. data/lib/paypal_server_sdk/models/bin_details.rb +88 -0
  52. data/lib/paypal_server_sdk/models/blik_experience_context.rb +122 -0
  53. data/lib/paypal_server_sdk/models/blik_level0_payment_object.rb +48 -0
  54. data/lib/paypal_server_sdk/models/blik_one_click_payment_object.rb +52 -0
  55. data/lib/paypal_server_sdk/models/blik_one_click_payment_request.rb +82 -0
  56. data/lib/paypal_server_sdk/models/blik_payment_object.rb +86 -0
  57. data/lib/paypal_server_sdk/models/blik_payment_request.rb +105 -0
  58. data/lib/paypal_server_sdk/models/capture.rb +228 -0
  59. data/lib/paypal_server_sdk/models/capture_incomplete_reason.rb +55 -0
  60. data/lib/paypal_server_sdk/models/capture_payment_instruction.rb +89 -0
  61. data/lib/paypal_server_sdk/models/capture_request.rb +108 -0
  62. data/lib/paypal_server_sdk/models/capture_status.rb +35 -0
  63. data/lib/paypal_server_sdk/models/capture_status_details.rb +50 -0
  64. data/lib/paypal_server_sdk/models/capture_status_with_details.rb +60 -0
  65. data/lib/paypal_server_sdk/models/captured_payment.rb +248 -0
  66. data/lib/paypal_server_sdk/models/card_attributes.rb +70 -0
  67. data/lib/paypal_server_sdk/models/card_attributes_response.rb +50 -0
  68. data/lib/paypal_server_sdk/models/card_authentication_response.rb +51 -0
  69. data/lib/paypal_server_sdk/models/card_brand.rb +93 -0
  70. data/lib/paypal_server_sdk/models/card_customer_information.rb +85 -0
  71. data/lib/paypal_server_sdk/models/card_experience_context.rb +59 -0
  72. data/lib/paypal_server_sdk/models/card_from_request.rb +60 -0
  73. data/lib/paypal_server_sdk/models/card_payment_token.rb +166 -0
  74. data/lib/paypal_server_sdk/models/card_request.rb +176 -0
  75. data/lib/paypal_server_sdk/models/card_response.rb +139 -0
  76. data/lib/paypal_server_sdk/models/card_response_entity.rb +156 -0
  77. data/lib/paypal_server_sdk/models/card_stored_credential.rb +95 -0
  78. data/lib/paypal_server_sdk/models/card_supplementary_data.rb +71 -0
  79. data/lib/paypal_server_sdk/models/card_type.rb +32 -0
  80. data/lib/paypal_server_sdk/models/card_vault_response.rb +86 -0
  81. data/lib/paypal_server_sdk/models/card_verification.rb +51 -0
  82. data/lib/paypal_server_sdk/models/card_verification_details.rb +111 -0
  83. data/lib/paypal_server_sdk/models/card_verification_method.rb +29 -0
  84. data/lib/paypal_server_sdk/models/card_verification_processor_response.rb +62 -0
  85. data/lib/paypal_server_sdk/models/checkout_payment_intent.rb +24 -0
  86. data/lib/paypal_server_sdk/models/cobranded_card.rb +70 -0
  87. data/lib/paypal_server_sdk/models/confirm_order_request.rb +74 -0
  88. data/lib/paypal_server_sdk/models/customer_information.rb +72 -0
  89. data/lib/paypal_server_sdk/models/customer_request.rb +62 -0
  90. data/lib/paypal_server_sdk/models/customer_vault_payment_tokens_response.rb +105 -0
  91. data/lib/paypal_server_sdk/models/cvv_code.rb +60 -0
  92. data/lib/paypal_server_sdk/models/disbursement_mode.rb +23 -0
  93. data/lib/paypal_server_sdk/models/dispute_category.rb +23 -0
  94. data/lib/paypal_server_sdk/models/eci_flag.rb +39 -0
  95. data/lib/paypal_server_sdk/models/enrollment_status.rb +29 -0
  96. data/lib/paypal_server_sdk/models/eps_payment_object.rb +74 -0
  97. data/lib/paypal_server_sdk/models/eps_payment_request.rb +73 -0
  98. data/lib/paypal_server_sdk/models/error_details.rb +110 -0
  99. data/lib/paypal_server_sdk/models/exchange_rate.rb +75 -0
  100. data/lib/paypal_server_sdk/models/experience_context.rb +98 -0
  101. data/lib/paypal_server_sdk/models/fullfillment_type.rb +31 -0
  102. data/lib/paypal_server_sdk/models/giropay_payment_object.rb +74 -0
  103. data/lib/paypal_server_sdk/models/giropay_payment_request.rb +73 -0
  104. data/lib/paypal_server_sdk/models/google_pay_authentication_method.rb +23 -0
  105. data/lib/paypal_server_sdk/models/google_pay_card_attributes.rb +51 -0
  106. data/lib/paypal_server_sdk/models/google_pay_card_response.rb +104 -0
  107. data/lib/paypal_server_sdk/models/google_pay_decrypted_token_data.rb +105 -0
  108. data/lib/paypal_server_sdk/models/google_pay_payment_method.rb +20 -0
  109. data/lib/paypal_server_sdk/models/google_pay_request.rb +118 -0
  110. data/lib/paypal_server_sdk/models/google_pay_request_card.rb +84 -0
  111. data/lib/paypal_server_sdk/models/google_pay_wallet_response.rb +85 -0
  112. data/lib/paypal_server_sdk/models/ideal_payment_object.rb +85 -0
  113. data/lib/paypal_server_sdk/models/ideal_payment_request.rb +83 -0
  114. data/lib/paypal_server_sdk/models/item.rb +134 -0
  115. data/lib/paypal_server_sdk/models/item_category.rb +26 -0
  116. data/lib/paypal_server_sdk/models/level2_card_processing_data.rb +66 -0
  117. data/lib/paypal_server_sdk/models/level3_card_processing_data.rb +120 -0
  118. data/lib/paypal_server_sdk/models/liability_shift_indicator.rb +26 -0
  119. data/lib/paypal_server_sdk/models/line_item.rb +177 -0
  120. data/lib/paypal_server_sdk/models/link_description.rb +75 -0
  121. data/lib/paypal_server_sdk/models/link_http_method.rb +41 -0
  122. data/lib/paypal_server_sdk/models/money.rb +62 -0
  123. data/lib/paypal_server_sdk/models/my_bank_payment_object.rb +85 -0
  124. data/lib/paypal_server_sdk/models/my_bank_payment_request.rb +73 -0
  125. data/lib/paypal_server_sdk/models/name.rb +61 -0
  126. data/lib/paypal_server_sdk/models/net_amount_breakdown_item.rb +73 -0
  127. data/lib/paypal_server_sdk/models/network_token.rb +95 -0
  128. data/lib/paypal_server_sdk/models/network_transaction_reference.rb +90 -0
  129. data/lib/paypal_server_sdk/models/network_transaction_reference_entity.rb +88 -0
  130. data/lib/paypal_server_sdk/models/o_auth_provider_error.rb +45 -0
  131. data/lib/paypal_server_sdk/models/o_auth_token.rb +106 -0
  132. data/lib/paypal_server_sdk/models/order.rb +178 -0
  133. data/lib/paypal_server_sdk/models/order_application_context.rb +193 -0
  134. data/lib/paypal_server_sdk/models/order_application_context_landing_page.rb +32 -0
  135. data/lib/paypal_server_sdk/models/order_application_context_shipping_preference.rb +34 -0
  136. data/lib/paypal_server_sdk/models/order_application_context_user_action.rb +29 -0
  137. data/lib/paypal_server_sdk/models/order_authorize_request.rb +51 -0
  138. data/lib/paypal_server_sdk/models/order_authorize_request_payment_source.rb +104 -0
  139. data/lib/paypal_server_sdk/models/order_authorize_response.rb +171 -0
  140. data/lib/paypal_server_sdk/models/order_authorize_response_payment_source.rb +88 -0
  141. data/lib/paypal_server_sdk/models/order_capture_request.rb +51 -0
  142. data/lib/paypal_server_sdk/models/order_capture_request_payment_source.rb +104 -0
  143. data/lib/paypal_server_sdk/models/order_confirm_application_context.rb +109 -0
  144. data/lib/paypal_server_sdk/models/order_request.rb +103 -0
  145. data/lib/paypal_server_sdk/models/order_status.rb +35 -0
  146. data/lib/paypal_server_sdk/models/order_tracker_item.rb +99 -0
  147. data/lib/paypal_server_sdk/models/order_tracker_request.rb +116 -0
  148. data/lib/paypal_server_sdk/models/order_tracker_response.rb +122 -0
  149. data/lib/paypal_server_sdk/models/order_tracker_status.rb +23 -0
  150. data/lib/paypal_server_sdk/models/p24_payment_object.rb +108 -0
  151. data/lib/paypal_server_sdk/models/p24_payment_request.rb +85 -0
  152. data/lib/paypal_server_sdk/models/pa_res_status.rb +42 -0
  153. data/lib/paypal_server_sdk/models/patch.rb +83 -0
  154. data/lib/paypal_server_sdk/models/patch_op.rb +35 -0
  155. data/lib/paypal_server_sdk/models/pay_pal_experience_landing_page.rb +26 -0
  156. data/lib/paypal_server_sdk/models/pay_pal_experience_user_action.rb +24 -0
  157. data/lib/paypal_server_sdk/models/pay_pal_payment_token.rb +180 -0
  158. data/lib/paypal_server_sdk/models/pay_pal_payment_token_customer_type.rb +25 -0
  159. data/lib/paypal_server_sdk/models/pay_pal_payment_token_usage_pattern.rb +35 -0
  160. data/lib/paypal_server_sdk/models/pay_pal_payment_token_usage_type.rb +23 -0
  161. data/lib/paypal_server_sdk/models/pay_pal_wallet.rb +158 -0
  162. data/lib/paypal_server_sdk/models/pay_pal_wallet_account_verification_status.rb +24 -0
  163. data/lib/paypal_server_sdk/models/pay_pal_wallet_attributes.rb +59 -0
  164. data/lib/paypal_server_sdk/models/pay_pal_wallet_attributes_response.rb +70 -0
  165. data/lib/paypal_server_sdk/models/pay_pal_wallet_customer.rb +85 -0
  166. data/lib/paypal_server_sdk/models/pay_pal_wallet_customer_request.rb +85 -0
  167. data/lib/paypal_server_sdk/models/pay_pal_wallet_experience_context.rb +140 -0
  168. data/lib/paypal_server_sdk/models/pay_pal_wallet_response.rb +166 -0
  169. data/lib/paypal_server_sdk/models/pay_pal_wallet_vault_instruction.rb +115 -0
  170. data/lib/paypal_server_sdk/models/pay_pal_wallet_vault_response.rb +86 -0
  171. data/lib/paypal_server_sdk/models/pay_pal_wallet_vault_status.rb +26 -0
  172. data/lib/paypal_server_sdk/models/payee.rb +65 -0
  173. data/lib/paypal_server_sdk/models/payee_base.rb +64 -0
  174. data/lib/paypal_server_sdk/models/payee_payment_method_preference.rb +23 -0
  175. data/lib/paypal_server_sdk/models/payer.rb +120 -0
  176. data/lib/paypal_server_sdk/models/payer_base.rb +64 -0
  177. data/lib/paypal_server_sdk/models/payment_advice_code.rb +30 -0
  178. data/lib/paypal_server_sdk/models/payment_authorization.rb +212 -0
  179. data/lib/paypal_server_sdk/models/payment_collection.rb +99 -0
  180. data/lib/paypal_server_sdk/models/payment_initiator.rb +23 -0
  181. data/lib/paypal_server_sdk/models/payment_instruction.rb +105 -0
  182. data/lib/paypal_server_sdk/models/payment_method_preference.rb +72 -0
  183. data/lib/paypal_server_sdk/models/payment_source.rb +187 -0
  184. data/lib/paypal_server_sdk/models/payment_source_response.rb +171 -0
  185. data/lib/paypal_server_sdk/models/payment_supplementary_data.rb +50 -0
  186. data/lib/paypal_server_sdk/models/payment_token_request.rb +60 -0
  187. data/lib/paypal_server_sdk/models/payment_token_request_card.rb +125 -0
  188. data/lib/paypal_server_sdk/models/payment_token_request_payment_source.rb +59 -0
  189. data/lib/paypal_server_sdk/models/payment_token_response.rb +87 -0
  190. data/lib/paypal_server_sdk/models/payment_token_response_payment_source.rb +87 -0
  191. data/lib/paypal_server_sdk/models/phone.rb +77 -0
  192. data/lib/paypal_server_sdk/models/phone_number.rb +54 -0
  193. data/lib/paypal_server_sdk/models/phone_number_with_country_code.rb +66 -0
  194. data/lib/paypal_server_sdk/models/phone_type.rb +32 -0
  195. data/lib/paypal_server_sdk/models/phone_with_type.rb +59 -0
  196. data/lib/paypal_server_sdk/models/platform_fee.rb +63 -0
  197. data/lib/paypal_server_sdk/models/processing_instruction.rb +23 -0
  198. data/lib/paypal_server_sdk/models/processor_response.rb +83 -0
  199. data/lib/paypal_server_sdk/models/processor_response_code.rb +479 -0
  200. data/lib/paypal_server_sdk/models/purchase_unit.rb +227 -0
  201. data/lib/paypal_server_sdk/models/purchase_unit_request.rb +193 -0
  202. data/lib/paypal_server_sdk/models/reauthorize_request.rb +62 -0
  203. data/lib/paypal_server_sdk/models/refund.rb +195 -0
  204. data/lib/paypal_server_sdk/models/refund_incomplete_reason.rb +20 -0
  205. data/lib/paypal_server_sdk/models/refund_payment_instruction.rb +68 -0
  206. data/lib/paypal_server_sdk/models/refund_platform_fee.rb +52 -0
  207. data/lib/paypal_server_sdk/models/refund_request.rb +100 -0
  208. data/lib/paypal_server_sdk/models/refund_status.rb +29 -0
  209. data/lib/paypal_server_sdk/models/refund_status_details.rb +50 -0
  210. data/lib/paypal_server_sdk/models/refund_status_with_details.rb +60 -0
  211. data/lib/paypal_server_sdk/models/related_identifiers.rb +69 -0
  212. data/lib/paypal_server_sdk/models/seller_payable_breakdown.rb +156 -0
  213. data/lib/paypal_server_sdk/models/seller_protection.rb +65 -0
  214. data/lib/paypal_server_sdk/models/seller_protection_status.rb +29 -0
  215. data/lib/paypal_server_sdk/models/seller_receivable_breakdown.rb +129 -0
  216. data/lib/paypal_server_sdk/models/setup_token_card_experience_context.rb +103 -0
  217. data/lib/paypal_server_sdk/models/setup_token_request.rb +60 -0
  218. data/lib/paypal_server_sdk/models/setup_token_request_card.rb +141 -0
  219. data/lib/paypal_server_sdk/models/setup_token_request_payment_source.rb +77 -0
  220. data/lib/paypal_server_sdk/models/setup_token_response.rb +106 -0
  221. data/lib/paypal_server_sdk/models/setup_token_response_card.rb +156 -0
  222. data/lib/paypal_server_sdk/models/setup_token_response_payment_source.rb +68 -0
  223. data/lib/paypal_server_sdk/models/shipment_carrier.rb +3852 -0
  224. data/lib/paypal_server_sdk/models/shipping_details.rb +106 -0
  225. data/lib/paypal_server_sdk/models/shipping_name.rb +50 -0
  226. data/lib/paypal_server_sdk/models/shipping_option.rb +94 -0
  227. data/lib/paypal_server_sdk/models/shipping_preference.rb +26 -0
  228. data/lib/paypal_server_sdk/models/shipping_type.rb +29 -0
  229. data/lib/paypal_server_sdk/models/shipping_with_tracking_details.rb +124 -0
  230. data/lib/paypal_server_sdk/models/sofort_payment_object.rb +85 -0
  231. data/lib/paypal_server_sdk/models/sofort_payment_request.rb +73 -0
  232. data/lib/paypal_server_sdk/models/standard_entry_class_code.rb +36 -0
  233. data/lib/paypal_server_sdk/models/store_in_vault_instruction.rb +20 -0
  234. data/lib/paypal_server_sdk/models/stored_payment_source.rb +95 -0
  235. data/lib/paypal_server_sdk/models/stored_payment_source_payment_type.rb +26 -0
  236. data/lib/paypal_server_sdk/models/stored_payment_source_usage_type.rb +27 -0
  237. data/lib/paypal_server_sdk/models/supplementary_data.rb +58 -0
  238. data/lib/paypal_server_sdk/models/supplementary_purchase_data.rb +63 -0
  239. data/lib/paypal_server_sdk/models/tax_id_type.rb +23 -0
  240. data/lib/paypal_server_sdk/models/tax_info.rb +57 -0
  241. data/lib/paypal_server_sdk/models/three_d_secure_authentication_response.rb +62 -0
  242. data/lib/paypal_server_sdk/models/token.rb +56 -0
  243. data/lib/paypal_server_sdk/models/token_request_type.rb +23 -0
  244. data/lib/paypal_server_sdk/models/token_type.rb +20 -0
  245. data/lib/paypal_server_sdk/models/trustly_payment_object.rb +85 -0
  246. data/lib/paypal_server_sdk/models/trustly_payment_request.rb +73 -0
  247. data/lib/paypal_server_sdk/models/universal_product_code.rb +56 -0
  248. data/lib/paypal_server_sdk/models/upc_type.rb +38 -0
  249. data/lib/paypal_server_sdk/models/vault_customer.rb +50 -0
  250. data/lib/paypal_server_sdk/models/vault_experience_context.rb +112 -0
  251. data/lib/paypal_server_sdk/models/vault_instruction.rb +50 -0
  252. data/lib/paypal_server_sdk/models/vault_instruction_base.rb +52 -0
  253. data/lib/paypal_server_sdk/models/vault_pay_pal_wallet_request.rb +115 -0
  254. data/lib/paypal_server_sdk/models/vault_response.rb +86 -0
  255. data/lib/paypal_server_sdk/models/vault_status.rb +26 -0
  256. data/lib/paypal_server_sdk/models/vault_token_request.rb +56 -0
  257. data/lib/paypal_server_sdk/models/vault_venmo_experience_context.rb +73 -0
  258. data/lib/paypal_server_sdk/models/vault_venmo_request.rb +115 -0
  259. data/lib/paypal_server_sdk/models/vaulted_digital_wallet.rb +106 -0
  260. data/lib/paypal_server_sdk/models/vaulted_digital_wallet_shipping_details.rb +75 -0
  261. data/lib/paypal_server_sdk/models/venmo_payment_token.rb +169 -0
  262. data/lib/paypal_server_sdk/models/venmo_payment_token_customer_type.rb +25 -0
  263. data/lib/paypal_server_sdk/models/venmo_payment_token_usage_pattern.rb +35 -0
  264. data/lib/paypal_server_sdk/models/venmo_payment_token_usage_type.rb +23 -0
  265. data/lib/paypal_server_sdk/models/venmo_wallet_additional_attributes.rb +60 -0
  266. data/lib/paypal_server_sdk/models/venmo_wallet_attributes_response.rb +50 -0
  267. data/lib/paypal_server_sdk/models/venmo_wallet_customer_information.rb +63 -0
  268. data/lib/paypal_server_sdk/models/venmo_wallet_experience_context.rb +65 -0
  269. data/lib/paypal_server_sdk/models/venmo_wallet_request.rb +89 -0
  270. data/lib/paypal_server_sdk/models/venmo_wallet_response.rb +120 -0
  271. data/lib/paypal_server_sdk/models/venmo_wallet_vault_attributes.rb +114 -0
  272. data/lib/paypal_server_sdk/utilities/date_time_helper.rb +11 -0
  273. data/lib/paypal_server_sdk/utilities/file_wrapper.rb +16 -0
  274. data/lib/paypal_server_sdk.rb +306 -0
  275. metadata +357 -0
@@ -0,0 +1,171 @@
1
+ # paypal_server_sdk
2
+ #
3
+ # This file was automatically generated by APIMATIC v2.0
4
+ # ( https://apimatic.io ).
5
+
6
+ module PaypalServerSdk
7
+ # The payment source used to fund the payment.
8
+ class PaymentSourceResponse < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # The payment card to use to fund a payment. Card can be a credit or debit
13
+ # card.
14
+ # @return [CardResponse]
15
+ attr_accessor :card
16
+
17
+ # The PayPal Wallet response.
18
+ # @return [PayPalWalletResponse]
19
+ attr_accessor :paypal
20
+
21
+ # Information used to pay Bancontact.
22
+ # @return [BancontactPaymentObject]
23
+ attr_accessor :bancontact
24
+
25
+ # Information used to pay using BLIK.
26
+ # @return [BLIKPaymentObject]
27
+ attr_accessor :blik
28
+
29
+ # Information used to pay using eps.
30
+ # @return [EPSPaymentObject]
31
+ attr_accessor :eps
32
+
33
+ # Information needed to pay using giropay.
34
+ # @return [GiropayPaymentObject]
35
+ attr_accessor :giropay
36
+
37
+ # Information used to pay using iDEAL.
38
+ # @return [IDEALPaymentObject]
39
+ attr_accessor :ideal
40
+
41
+ # Information used to pay using MyBank.
42
+ # @return [MyBankPaymentObject]
43
+ attr_accessor :mybank
44
+
45
+ # Information used to pay using P24(Przelewy24).
46
+ # @return [P24PaymentObject]
47
+ attr_accessor :p24
48
+
49
+ # Information used to pay using Sofort.
50
+ # @return [SofortPaymentObject]
51
+ attr_accessor :sofort
52
+
53
+ # Information needed to pay using Trustly.
54
+ # @return [TrustlyPaymentObject]
55
+ attr_accessor :trustly
56
+
57
+ # Information needed to pay using ApplePay.
58
+ # @return [ApplePayPaymentObject]
59
+ attr_accessor :apple_pay
60
+
61
+ # Google Pay Wallet payment data.
62
+ # @return [GooglePayWalletResponse]
63
+ attr_accessor :google_pay
64
+
65
+ # Venmo wallet response.
66
+ # @return [VenmoWalletResponse]
67
+ attr_accessor :venmo
68
+
69
+ # A mapping from model property names to API property names.
70
+ def self.names
71
+ @_hash = {} if @_hash.nil?
72
+ @_hash['card'] = 'card'
73
+ @_hash['paypal'] = 'paypal'
74
+ @_hash['bancontact'] = 'bancontact'
75
+ @_hash['blik'] = 'blik'
76
+ @_hash['eps'] = 'eps'
77
+ @_hash['giropay'] = 'giropay'
78
+ @_hash['ideal'] = 'ideal'
79
+ @_hash['mybank'] = 'mybank'
80
+ @_hash['p24'] = 'p24'
81
+ @_hash['sofort'] = 'sofort'
82
+ @_hash['trustly'] = 'trustly'
83
+ @_hash['apple_pay'] = 'apple_pay'
84
+ @_hash['google_pay'] = 'google_pay'
85
+ @_hash['venmo'] = 'venmo'
86
+ @_hash
87
+ end
88
+
89
+ # An array for optional fields
90
+ def self.optionals
91
+ %w[
92
+ card
93
+ paypal
94
+ bancontact
95
+ blik
96
+ eps
97
+ giropay
98
+ ideal
99
+ mybank
100
+ p24
101
+ sofort
102
+ trustly
103
+ apple_pay
104
+ google_pay
105
+ venmo
106
+ ]
107
+ end
108
+
109
+ # An array for nullable fields
110
+ def self.nullables
111
+ []
112
+ end
113
+
114
+ def initialize(card: SKIP, paypal: SKIP, bancontact: SKIP, blik: SKIP,
115
+ eps: SKIP, giropay: SKIP, ideal: SKIP, mybank: SKIP,
116
+ p24: SKIP, sofort: SKIP, trustly: SKIP, apple_pay: SKIP,
117
+ google_pay: SKIP, venmo: SKIP)
118
+ @card = card unless card == SKIP
119
+ @paypal = paypal unless paypal == SKIP
120
+ @bancontact = bancontact unless bancontact == SKIP
121
+ @blik = blik unless blik == SKIP
122
+ @eps = eps unless eps == SKIP
123
+ @giropay = giropay unless giropay == SKIP
124
+ @ideal = ideal unless ideal == SKIP
125
+ @mybank = mybank unless mybank == SKIP
126
+ @p24 = p24 unless p24 == SKIP
127
+ @sofort = sofort unless sofort == SKIP
128
+ @trustly = trustly unless trustly == SKIP
129
+ @apple_pay = apple_pay unless apple_pay == SKIP
130
+ @google_pay = google_pay unless google_pay == SKIP
131
+ @venmo = venmo unless venmo == SKIP
132
+ end
133
+
134
+ # Creates an instance of the object from a hash.
135
+ def self.from_hash(hash)
136
+ return nil unless hash
137
+
138
+ # Extract variables from the hash.
139
+ card = CardResponse.from_hash(hash['card']) if hash['card']
140
+ paypal = PayPalWalletResponse.from_hash(hash['paypal']) if hash['paypal']
141
+ bancontact = BancontactPaymentObject.from_hash(hash['bancontact']) if hash['bancontact']
142
+ blik = BLIKPaymentObject.from_hash(hash['blik']) if hash['blik']
143
+ eps = EPSPaymentObject.from_hash(hash['eps']) if hash['eps']
144
+ giropay = GiropayPaymentObject.from_hash(hash['giropay']) if hash['giropay']
145
+ ideal = IDEALPaymentObject.from_hash(hash['ideal']) if hash['ideal']
146
+ mybank = MyBankPaymentObject.from_hash(hash['mybank']) if hash['mybank']
147
+ p24 = P24PaymentObject.from_hash(hash['p24']) if hash['p24']
148
+ sofort = SofortPaymentObject.from_hash(hash['sofort']) if hash['sofort']
149
+ trustly = TrustlyPaymentObject.from_hash(hash['trustly']) if hash['trustly']
150
+ apple_pay = ApplePayPaymentObject.from_hash(hash['apple_pay']) if hash['apple_pay']
151
+ google_pay = GooglePayWalletResponse.from_hash(hash['google_pay']) if hash['google_pay']
152
+ venmo = VenmoWalletResponse.from_hash(hash['venmo']) if hash['venmo']
153
+
154
+ # Create object from extracted values.
155
+ PaymentSourceResponse.new(card: card,
156
+ paypal: paypal,
157
+ bancontact: bancontact,
158
+ blik: blik,
159
+ eps: eps,
160
+ giropay: giropay,
161
+ ideal: ideal,
162
+ mybank: mybank,
163
+ p24: p24,
164
+ sofort: sofort,
165
+ trustly: trustly,
166
+ apple_pay: apple_pay,
167
+ google_pay: google_pay,
168
+ venmo: venmo)
169
+ end
170
+ end
171
+ end
@@ -0,0 +1,50 @@
1
+ # paypal_server_sdk
2
+ #
3
+ # This file was automatically generated by APIMATIC v2.0
4
+ # ( https://apimatic.io ).
5
+
6
+ module PaypalServerSdk
7
+ # The supplementary data.
8
+ class PaymentSupplementaryData < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # Identifiers related to a specific resource.
13
+ # @return [RelatedIdentifiers]
14
+ attr_accessor :related_ids
15
+
16
+ # A mapping from model property names to API property names.
17
+ def self.names
18
+ @_hash = {} if @_hash.nil?
19
+ @_hash['related_ids'] = 'related_ids'
20
+ @_hash
21
+ end
22
+
23
+ # An array for optional fields
24
+ def self.optionals
25
+ %w[
26
+ related_ids
27
+ ]
28
+ end
29
+
30
+ # An array for nullable fields
31
+ def self.nullables
32
+ []
33
+ end
34
+
35
+ def initialize(related_ids: SKIP)
36
+ @related_ids = related_ids unless related_ids == SKIP
37
+ end
38
+
39
+ # Creates an instance of the object from a hash.
40
+ def self.from_hash(hash)
41
+ return nil unless hash
42
+
43
+ # Extract variables from the hash.
44
+ related_ids = RelatedIdentifiers.from_hash(hash['related_ids']) if hash['related_ids']
45
+
46
+ # Create object from extracted values.
47
+ PaymentSupplementaryData.new(related_ids: related_ids)
48
+ end
49
+ end
50
+ end
@@ -0,0 +1,60 @@
1
+ # paypal_server_sdk
2
+ #
3
+ # This file was automatically generated by APIMATIC v2.0
4
+ # ( https://apimatic.io ).
5
+
6
+ module PaypalServerSdk
7
+ # Payment Token Request where the `source` defines the type of instrument to
8
+ # be stored.
9
+ class PaymentTokenRequest < BaseModel
10
+ SKIP = Object.new
11
+ private_constant :SKIP
12
+
13
+ # Customer in merchant's or partner's system of records.
14
+ # @return [CustomerRequest]
15
+ attr_accessor :customer
16
+
17
+ # The payment method to vault with the instrument details.
18
+ # @return [PaymentTokenRequestPaymentSource]
19
+ attr_accessor :payment_source
20
+
21
+ # A mapping from model property names to API property names.
22
+ def self.names
23
+ @_hash = {} if @_hash.nil?
24
+ @_hash['customer'] = 'customer'
25
+ @_hash['payment_source'] = 'payment_source'
26
+ @_hash
27
+ end
28
+
29
+ # An array for optional fields
30
+ def self.optionals
31
+ %w[
32
+ customer
33
+ ]
34
+ end
35
+
36
+ # An array for nullable fields
37
+ def self.nullables
38
+ []
39
+ end
40
+
41
+ def initialize(payment_source:, customer: SKIP)
42
+ @customer = customer unless customer == SKIP
43
+ @payment_source = payment_source
44
+ end
45
+
46
+ # Creates an instance of the object from a hash.
47
+ def self.from_hash(hash)
48
+ return nil unless hash
49
+
50
+ # Extract variables from the hash.
51
+ payment_source = PaymentTokenRequestPaymentSource.from_hash(hash['payment_source']) if
52
+ hash['payment_source']
53
+ customer = CustomerRequest.from_hash(hash['customer']) if hash['customer']
54
+
55
+ # Create object from extracted values.
56
+ PaymentTokenRequest.new(payment_source: payment_source,
57
+ customer: customer)
58
+ end
59
+ end
60
+ end
@@ -0,0 +1,125 @@
1
+ # paypal_server_sdk
2
+ #
3
+ # This file was automatically generated by APIMATIC v2.0
4
+ # ( https://apimatic.io ).
5
+
6
+ module PaypalServerSdk
7
+ # A Resource representing a request to vault a Card.
8
+ class PaymentTokenRequestCard < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # The card holder's name as it appears on the card.
13
+ # @return [String]
14
+ attr_accessor :name
15
+
16
+ # The primary account number (PAN) for the payment card.
17
+ # @return [String]
18
+ attr_accessor :number
19
+
20
+ # The year and month, in ISO-8601 `YYYY-MM` date format. See [Internet date
21
+ # and time format](https://tools.ietf.org/html/rfc3339#section-5.6).
22
+ # @return [String]
23
+ attr_accessor :expiry
24
+
25
+ # The three- or four-digit security code of the card. Also known as the CVV,
26
+ # CVC, CVN, CVE, or CID. This parameter cannot be present in the request
27
+ # when `payment_initiator=MERCHANT`.
28
+ # @return [String]
29
+ attr_accessor :security_code
30
+
31
+ # The card network or brand. Applies to credit, debit, gift, and payment
32
+ # cards.
33
+ # @return [CardBrand]
34
+ attr_accessor :brand
35
+
36
+ # The portable international postal address. Maps to
37
+ # [AddressValidationMetadata](https://github.com/googlei18n/libaddressinput/
38
+ # wiki/AddressValidationMetadata) and HTML 5.1 [Autofilling form controls:
39
+ # the autocomplete
40
+ # attribute](https://www.w3.org/TR/html51/sec-forms.html#autofilling-form-co
41
+ # ntrols-the-autocomplete-attribute).
42
+ # @return [Address]
43
+ attr_accessor :billing_address
44
+
45
+ # The portable international postal address. Maps to
46
+ # [AddressValidationMetadata](https://github.com/googlei18n/libaddressinput/
47
+ # wiki/AddressValidationMetadata) and HTML 5.1 [Autofilling form controls:
48
+ # the autocomplete
49
+ # attribute](https://www.w3.org/TR/html51/sec-forms.html#autofilling-form-co
50
+ # ntrols-the-autocomplete-attribute).
51
+ # @return [Object]
52
+ attr_accessor :network_transaction_reference
53
+
54
+ # A mapping from model property names to API property names.
55
+ def self.names
56
+ @_hash = {} if @_hash.nil?
57
+ @_hash['name'] = 'name'
58
+ @_hash['number'] = 'number'
59
+ @_hash['expiry'] = 'expiry'
60
+ @_hash['security_code'] = 'security_code'
61
+ @_hash['brand'] = 'brand'
62
+ @_hash['billing_address'] = 'billing_address'
63
+ @_hash['network_transaction_reference'] =
64
+ 'network_transaction_reference'
65
+ @_hash
66
+ end
67
+
68
+ # An array for optional fields
69
+ def self.optionals
70
+ %w[
71
+ name
72
+ number
73
+ expiry
74
+ security_code
75
+ brand
76
+ billing_address
77
+ network_transaction_reference
78
+ ]
79
+ end
80
+
81
+ # An array for nullable fields
82
+ def self.nullables
83
+ []
84
+ end
85
+
86
+ def initialize(name: SKIP, number: SKIP, expiry: SKIP, security_code: SKIP,
87
+ brand: SKIP, billing_address: SKIP,
88
+ network_transaction_reference: SKIP)
89
+ @name = name unless name == SKIP
90
+ @number = number unless number == SKIP
91
+ @expiry = expiry unless expiry == SKIP
92
+ @security_code = security_code unless security_code == SKIP
93
+ @brand = brand unless brand == SKIP
94
+ @billing_address = billing_address unless billing_address == SKIP
95
+ unless network_transaction_reference == SKIP
96
+ @network_transaction_reference =
97
+ network_transaction_reference
98
+ end
99
+ end
100
+
101
+ # Creates an instance of the object from a hash.
102
+ def self.from_hash(hash)
103
+ return nil unless hash
104
+
105
+ # Extract variables from the hash.
106
+ name = hash.key?('name') ? hash['name'] : SKIP
107
+ number = hash.key?('number') ? hash['number'] : SKIP
108
+ expiry = hash.key?('expiry') ? hash['expiry'] : SKIP
109
+ security_code = hash.key?('security_code') ? hash['security_code'] : SKIP
110
+ brand = hash.key?('brand') ? hash['brand'] : SKIP
111
+ billing_address = Address.from_hash(hash['billing_address']) if hash['billing_address']
112
+ network_transaction_reference =
113
+ hash.key?('network_transaction_reference') ? hash['network_transaction_reference'] : SKIP
114
+
115
+ # Create object from extracted values.
116
+ PaymentTokenRequestCard.new(name: name,
117
+ number: number,
118
+ expiry: expiry,
119
+ security_code: security_code,
120
+ brand: brand,
121
+ billing_address: billing_address,
122
+ network_transaction_reference: network_transaction_reference)
123
+ end
124
+ end
125
+ end
@@ -0,0 +1,59 @@
1
+ # paypal_server_sdk
2
+ #
3
+ # This file was automatically generated by APIMATIC v2.0
4
+ # ( https://apimatic.io ).
5
+
6
+ module PaypalServerSdk
7
+ # The payment method to vault with the instrument details.
8
+ class PaymentTokenRequestPaymentSource < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # A Resource representing a request to vault a Card.
13
+ # @return [PaymentTokenRequestCard]
14
+ attr_accessor :card
15
+
16
+ # The Tokenized Payment Source representing a Request to Vault a Token.
17
+ # @return [VaultTokenRequest]
18
+ attr_accessor :token
19
+
20
+ # A mapping from model property names to API property names.
21
+ def self.names
22
+ @_hash = {} if @_hash.nil?
23
+ @_hash['card'] = 'card'
24
+ @_hash['token'] = 'token'
25
+ @_hash
26
+ end
27
+
28
+ # An array for optional fields
29
+ def self.optionals
30
+ %w[
31
+ card
32
+ token
33
+ ]
34
+ end
35
+
36
+ # An array for nullable fields
37
+ def self.nullables
38
+ []
39
+ end
40
+
41
+ def initialize(card: SKIP, token: SKIP)
42
+ @card = card unless card == SKIP
43
+ @token = token unless token == SKIP
44
+ end
45
+
46
+ # Creates an instance of the object from a hash.
47
+ def self.from_hash(hash)
48
+ return nil unless hash
49
+
50
+ # Extract variables from the hash.
51
+ card = PaymentTokenRequestCard.from_hash(hash['card']) if hash['card']
52
+ token = VaultTokenRequest.from_hash(hash['token']) if hash['token']
53
+
54
+ # Create object from extracted values.
55
+ PaymentTokenRequestPaymentSource.new(card: card,
56
+ token: token)
57
+ end
58
+ end
59
+ end
@@ -0,0 +1,87 @@
1
+ # paypal_server_sdk
2
+ #
3
+ # This file was automatically generated by APIMATIC v2.0
4
+ # ( https://apimatic.io ).
5
+
6
+ module PaypalServerSdk
7
+ # Full representation of a saved payment token.
8
+ class PaymentTokenResponse < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # The PayPal-generated ID for the vault token.
13
+ # @return [String]
14
+ attr_accessor :id
15
+
16
+ # Customer in merchant's or partner's system of records.
17
+ # @return [CustomerRequest]
18
+ attr_accessor :customer
19
+
20
+ # The vaulted payment method details.
21
+ # @return [PaymentTokenResponsePaymentSource]
22
+ attr_accessor :payment_source
23
+
24
+ # An array of related [HATEOAS links](/api/rest/responses/#hateoas).
25
+ # @return [Array[LinkDescription]]
26
+ attr_accessor :links
27
+
28
+ # A mapping from model property names to API property names.
29
+ def self.names
30
+ @_hash = {} if @_hash.nil?
31
+ @_hash['id'] = 'id'
32
+ @_hash['customer'] = 'customer'
33
+ @_hash['payment_source'] = 'payment_source'
34
+ @_hash['links'] = 'links'
35
+ @_hash
36
+ end
37
+
38
+ # An array for optional fields
39
+ def self.optionals
40
+ %w[
41
+ id
42
+ customer
43
+ payment_source
44
+ links
45
+ ]
46
+ end
47
+
48
+ # An array for nullable fields
49
+ def self.nullables
50
+ []
51
+ end
52
+
53
+ def initialize(id: SKIP, customer: SKIP, payment_source: SKIP, links: SKIP)
54
+ @id = id unless id == SKIP
55
+ @customer = customer unless customer == SKIP
56
+ @payment_source = payment_source unless payment_source == SKIP
57
+ @links = links unless links == SKIP
58
+ end
59
+
60
+ # Creates an instance of the object from a hash.
61
+ def self.from_hash(hash)
62
+ return nil unless hash
63
+
64
+ # Extract variables from the hash.
65
+ id = hash.key?('id') ? hash['id'] : SKIP
66
+ customer = CustomerRequest.from_hash(hash['customer']) if hash['customer']
67
+ payment_source = PaymentTokenResponsePaymentSource.from_hash(hash['payment_source']) if
68
+ hash['payment_source']
69
+ # Parameter is an array, so we need to iterate through it
70
+ links = nil
71
+ unless hash['links'].nil?
72
+ links = []
73
+ hash['links'].each do |structure|
74
+ links << (LinkDescription.from_hash(structure) if structure)
75
+ end
76
+ end
77
+
78
+ links = SKIP unless hash.key?('links')
79
+
80
+ # Create object from extracted values.
81
+ PaymentTokenResponse.new(id: id,
82
+ customer: customer,
83
+ payment_source: payment_source,
84
+ links: links)
85
+ end
86
+ end
87
+ end
@@ -0,0 +1,87 @@
1
+ # paypal_server_sdk
2
+ #
3
+ # This file was automatically generated by APIMATIC v2.0
4
+ # ( https://apimatic.io ).
5
+
6
+ module PaypalServerSdk
7
+ # The vaulted payment method details.
8
+ class PaymentTokenResponsePaymentSource < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # Full representation of a Card Payment Token including network token.
13
+ # @return [CardPaymentToken]
14
+ attr_accessor :card
15
+
16
+ # Full representation of a Card Payment Token including network token.
17
+ # @return [PayPalPaymentToken]
18
+ attr_accessor :paypal
19
+
20
+ # Full representation of a Card Payment Token including network token.
21
+ # @return [VenmoPaymentToken]
22
+ attr_accessor :venmo
23
+
24
+ # A resource representing a response for Apple Pay.
25
+ # @return [ApplePayPaymentToken]
26
+ attr_accessor :apple_pay
27
+
28
+ # Full representation of a Bank Payment Token.
29
+ # @return [Hash]
30
+ attr_accessor :bank
31
+
32
+ # A mapping from model property names to API property names.
33
+ def self.names
34
+ @_hash = {} if @_hash.nil?
35
+ @_hash['card'] = 'card'
36
+ @_hash['paypal'] = 'paypal'
37
+ @_hash['venmo'] = 'venmo'
38
+ @_hash['apple_pay'] = 'apple_pay'
39
+ @_hash['bank'] = 'bank'
40
+ @_hash
41
+ end
42
+
43
+ # An array for optional fields
44
+ def self.optionals
45
+ %w[
46
+ card
47
+ paypal
48
+ venmo
49
+ apple_pay
50
+ bank
51
+ ]
52
+ end
53
+
54
+ # An array for nullable fields
55
+ def self.nullables
56
+ []
57
+ end
58
+
59
+ def initialize(card: SKIP, paypal: SKIP, venmo: SKIP, apple_pay: SKIP,
60
+ bank: SKIP)
61
+ @card = card unless card == SKIP
62
+ @paypal = paypal unless paypal == SKIP
63
+ @venmo = venmo unless venmo == SKIP
64
+ @apple_pay = apple_pay unless apple_pay == SKIP
65
+ @bank = bank unless bank == SKIP
66
+ end
67
+
68
+ # Creates an instance of the object from a hash.
69
+ def self.from_hash(hash)
70
+ return nil unless hash
71
+
72
+ # Extract variables from the hash.
73
+ card = CardPaymentToken.from_hash(hash['card']) if hash['card']
74
+ paypal = PayPalPaymentToken.from_hash(hash['paypal']) if hash['paypal']
75
+ venmo = VenmoPaymentToken.from_hash(hash['venmo']) if hash['venmo']
76
+ apple_pay = ApplePayPaymentToken.from_hash(hash['apple_pay']) if hash['apple_pay']
77
+ bank = hash.key?('bank') ? hash['bank'] : SKIP
78
+
79
+ # Create object from extracted values.
80
+ PaymentTokenResponsePaymentSource.new(card: card,
81
+ paypal: paypal,
82
+ venmo: venmo,
83
+ apple_pay: apple_pay,
84
+ bank: bank)
85
+ end
86
+ end
87
+ end