paypal-server-sdk 0.6.1 → 0.7.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 (291) hide show
  1. checksums.yaml +4 -4
  2. data/LICENSE +34 -34
  3. data/README.md +19 -30
  4. data/lib/paypal_server_sdk/controllers/base_controller.rb +1 -1
  5. data/lib/paypal_server_sdk/controllers/orders_controller.rb +103 -148
  6. data/lib/paypal_server_sdk/controllers/payments_controller.rb +94 -73
  7. data/lib/paypal_server_sdk/controllers/vault_controller.rb +12 -12
  8. data/lib/paypal_server_sdk/exceptions/api_exception.rb +11 -0
  9. data/lib/paypal_server_sdk/exceptions/error_exception.rb +14 -0
  10. data/lib/paypal_server_sdk/exceptions/o_auth_provider_exception.rb +14 -0
  11. data/lib/paypal_server_sdk/models/activity_timestamps.rb +17 -6
  12. data/lib/paypal_server_sdk/models/address.rb +24 -9
  13. data/lib/paypal_server_sdk/models/amount_breakdown.rb +17 -0
  14. data/lib/paypal_server_sdk/models/amount_with_breakdown.rb +22 -9
  15. data/lib/paypal_server_sdk/models/apple_pay_attributes.rb +12 -0
  16. data/lib/paypal_server_sdk/models/apple_pay_attributes_response.rb +12 -0
  17. data/lib/paypal_server_sdk/models/apple_pay_card.rb +14 -0
  18. data/lib/paypal_server_sdk/models/apple_pay_card_response.rb +48 -6
  19. data/lib/paypal_server_sdk/models/apple_pay_decrypted_token_data.rb +16 -0
  20. data/lib/paypal_server_sdk/models/apple_pay_payment_data.rb +14 -0
  21. data/lib/paypal_server_sdk/models/apple_pay_payment_data_type.rb +6 -2
  22. data/lib/paypal_server_sdk/models/apple_pay_payment_object.rb +43 -7
  23. data/lib/paypal_server_sdk/models/apple_pay_payment_token.rb +12 -0
  24. data/lib/paypal_server_sdk/models/apple_pay_request.rb +27 -13
  25. data/lib/paypal_server_sdk/models/apple_pay_tokenized_card.rb +15 -0
  26. data/lib/paypal_server_sdk/models/assurance_details.rb +14 -0
  27. data/lib/paypal_server_sdk/models/authentication_response.rb +13 -0
  28. data/lib/paypal_server_sdk/models/authorization.rb +28 -9
  29. data/lib/paypal_server_sdk/models/authorization_incomplete_reason.rb +2 -2
  30. data/lib/paypal_server_sdk/models/authorization_status.rb +12 -6
  31. data/lib/paypal_server_sdk/models/authorization_status_details.rb +12 -0
  32. data/lib/paypal_server_sdk/models/authorization_status_with_details.rb +12 -0
  33. data/lib/paypal_server_sdk/models/authorization_with_additional_data.rb +29 -9
  34. data/lib/paypal_server_sdk/models/avs_code.rb +102 -71
  35. data/lib/paypal_server_sdk/models/bancontact_payment_object.rb +19 -5
  36. data/lib/paypal_server_sdk/models/bancontact_payment_request.rb +18 -5
  37. data/lib/paypal_server_sdk/models/base_model.rb +76 -28
  38. data/lib/paypal_server_sdk/models/billing_cycle.rb +129 -0
  39. data/lib/paypal_server_sdk/models/bin_details.rb +18 -5
  40. data/lib/paypal_server_sdk/models/blik_experience_context.rb +17 -0
  41. data/lib/paypal_server_sdk/models/blik_level0_payment_object.rb +12 -0
  42. data/lib/paypal_server_sdk/models/blik_one_click_payment_object.rb +12 -0
  43. data/lib/paypal_server_sdk/models/blik_one_click_payment_request.rb +15 -0
  44. data/lib/paypal_server_sdk/models/blik_payment_object.rb +22 -10
  45. data/lib/paypal_server_sdk/models/blik_payment_request.rb +24 -10
  46. data/lib/paypal_server_sdk/models/callback_configuration.rb +75 -0
  47. data/lib/paypal_server_sdk/models/callback_events.rb +27 -0
  48. data/lib/paypal_server_sdk/models/capture_incomplete_reason.rb +22 -14
  49. data/lib/paypal_server_sdk/models/capture_payment_instruction.rb +15 -0
  50. data/lib/paypal_server_sdk/models/capture_request.rb +17 -0
  51. data/lib/paypal_server_sdk/models/capture_status.rb +10 -6
  52. data/lib/paypal_server_sdk/models/capture_status_details.rb +12 -0
  53. data/lib/paypal_server_sdk/models/capture_status_with_details.rb +12 -0
  54. data/lib/paypal_server_sdk/models/captured_payment.rb +36 -10
  55. data/lib/paypal_server_sdk/models/card_attributes.rb +13 -0
  56. data/lib/paypal_server_sdk/models/card_attributes_response.rb +12 -0
  57. data/lib/paypal_server_sdk/models/card_authentication_response.rb +14 -2
  58. data/lib/paypal_server_sdk/models/card_brand.rb +29 -25
  59. data/lib/paypal_server_sdk/models/card_customer_information.rb +18 -5
  60. data/lib/paypal_server_sdk/models/card_experience_context.rb +12 -0
  61. data/lib/paypal_server_sdk/models/card_from_request.rb +12 -0
  62. data/lib/paypal_server_sdk/models/{card_response_entity.rb → card_payment_token_entity.rb} +37 -15
  63. data/lib/paypal_server_sdk/models/card_request.rb +32 -17
  64. data/lib/paypal_server_sdk/models/card_response.rb +43 -2
  65. data/lib/paypal_server_sdk/models/{portable_postal_address_medium_grained.rb → card_response_address.rb} +43 -23
  66. data/lib/paypal_server_sdk/models/card_stored_credential.rb +23 -7
  67. data/lib/paypal_server_sdk/models/card_supplementary_data.rb +13 -5
  68. data/lib/paypal_server_sdk/models/card_type.rb +5 -5
  69. data/lib/paypal_server_sdk/models/card_vault_response.rb +13 -0
  70. data/lib/paypal_server_sdk/models/card_verification.rb +16 -3
  71. data/lib/paypal_server_sdk/models/card_verification_details.rb +27 -11
  72. data/lib/paypal_server_sdk/models/card_verification_processor_response.rb +12 -0
  73. data/lib/paypal_server_sdk/models/card_verification_status.rb +23 -0
  74. data/lib/paypal_server_sdk/models/checkout_payment_intent.rb +10 -2
  75. data/lib/paypal_server_sdk/models/cobranded_card.rb +13 -0
  76. data/lib/paypal_server_sdk/models/confirm_order_request.rb +15 -12
  77. data/lib/paypal_server_sdk/models/{customer_request.rb → customer.rb} +18 -4
  78. data/lib/paypal_server_sdk/models/customer_information.rb +17 -5
  79. data/lib/paypal_server_sdk/models/customer_response.rb +76 -0
  80. data/lib/paypal_server_sdk/models/customer_vault_payment_tokens_response.rb +21 -4
  81. data/lib/paypal_server_sdk/models/cvv_code.rb +35 -27
  82. data/lib/paypal_server_sdk/models/disbursement_mode.rb +5 -2
  83. data/lib/paypal_server_sdk/models/dispute_category.rb +2 -2
  84. data/lib/paypal_server_sdk/models/eci_flag.rb +6 -8
  85. data/lib/paypal_server_sdk/models/enrollment_status.rb +11 -8
  86. data/lib/paypal_server_sdk/models/eps_payment_object.rb +17 -5
  87. data/lib/paypal_server_sdk/models/eps_payment_request.rb +18 -5
  88. data/lib/paypal_server_sdk/models/error_details.rb +15 -0
  89. data/lib/paypal_server_sdk/models/exchange_rate.rb +14 -0
  90. data/lib/paypal_server_sdk/models/experience_context.rb +15 -0
  91. data/lib/paypal_server_sdk/models/fulfillment_type.rb +9 -4
  92. data/lib/paypal_server_sdk/models/giropay_payment_object.rb +17 -5
  93. data/lib/paypal_server_sdk/models/giropay_payment_request.rb +18 -5
  94. data/lib/paypal_server_sdk/models/google_pay_authentication_method.rb +8 -2
  95. data/lib/paypal_server_sdk/models/google_pay_card.rb +17 -3
  96. data/lib/paypal_server_sdk/models/google_pay_card_response.rb +16 -0
  97. data/lib/paypal_server_sdk/models/google_pay_decrypted_token_data.rb +17 -0
  98. data/lib/paypal_server_sdk/models/google_pay_payment_method.rb +1 -1
  99. data/lib/paypal_server_sdk/models/google_pay_request.rb +22 -17
  100. data/lib/paypal_server_sdk/models/google_pay_request_card.rb +14 -0
  101. data/lib/paypal_server_sdk/models/google_pay_wallet_response.rb +18 -5
  102. data/lib/paypal_server_sdk/models/ideal_payment_object.rb +18 -5
  103. data/lib/paypal_server_sdk/models/ideal_payment_request.rb +18 -5
  104. data/lib/paypal_server_sdk/models/item.rb +17 -0
  105. data/lib/paypal_server_sdk/models/item_category.rb +6 -3
  106. data/lib/paypal_server_sdk/models/level2_card_processing_data.rb +12 -0
  107. data/lib/paypal_server_sdk/models/level3_card_processing_data.rb +17 -0
  108. data/lib/paypal_server_sdk/models/liability_shift_indicator.rb +3 -3
  109. data/lib/paypal_server_sdk/models/line_item.rb +21 -0
  110. data/lib/paypal_server_sdk/models/link_description.rb +12 -0
  111. data/lib/paypal_server_sdk/models/money.rb +16 -4
  112. data/lib/paypal_server_sdk/models/mybank_payment_object.rb +18 -5
  113. data/lib/paypal_server_sdk/models/mybank_payment_request.rb +18 -5
  114. data/lib/paypal_server_sdk/models/name.rb +12 -0
  115. data/lib/paypal_server_sdk/models/net_amount_breakdown_item.rb +14 -0
  116. data/lib/paypal_server_sdk/models/network_token.rb +15 -0
  117. data/lib/paypal_server_sdk/models/network_transaction_reference.rb +14 -0
  118. data/lib/paypal_server_sdk/models/network_transaction_reference_entity.rb +15 -3
  119. data/lib/paypal_server_sdk/models/one_time_charge.rb +118 -0
  120. data/lib/paypal_server_sdk/models/order.rb +22 -19
  121. data/lib/paypal_server_sdk/models/order_application_context.rb +40 -25
  122. data/lib/paypal_server_sdk/models/order_application_context_landing_page.rb +10 -3
  123. data/lib/paypal_server_sdk/models/order_application_context_shipping_preference.rb +14 -10
  124. data/lib/paypal_server_sdk/models/order_application_context_user_action.rb +11 -6
  125. data/lib/paypal_server_sdk/models/order_authorize_request.rb +12 -0
  126. data/lib/paypal_server_sdk/models/order_authorize_request_payment_source.rb +20 -9
  127. data/lib/paypal_server_sdk/models/order_authorize_response.rb +22 -19
  128. data/lib/paypal_server_sdk/models/order_authorize_response_payment_source.rb +14 -0
  129. data/lib/paypal_server_sdk/models/order_capture_request.rb +12 -0
  130. data/lib/paypal_server_sdk/models/order_capture_request_payment_source.rb +20 -9
  131. data/lib/paypal_server_sdk/models/order_confirm_application_context.rb +21 -8
  132. data/lib/paypal_server_sdk/models/order_request.rb +18 -4
  133. data/lib/paypal_server_sdk/models/order_status.rb +19 -6
  134. data/lib/paypal_server_sdk/models/order_tracker_item.rb +15 -0
  135. data/lib/paypal_server_sdk/models/order_tracker_request.rb +22 -5
  136. data/lib/paypal_server_sdk/models/order_tracker_response.rb +19 -6
  137. data/lib/paypal_server_sdk/models/order_tracker_status.rb +5 -2
  138. data/lib/paypal_server_sdk/models/order_update_callback_error_response.rb +89 -0
  139. data/lib/paypal_server_sdk/models/order_update_callback_error_response_details.rb +81 -0
  140. data/lib/paypal_server_sdk/models/order_update_callback_request.rb +111 -0
  141. data/lib/paypal_server_sdk/models/order_update_callback_response.rb +72 -0
  142. data/lib/paypal_server_sdk/models/order_update_callback_shipping_address.rb +107 -0
  143. data/lib/paypal_server_sdk/models/order_update_callback_shipping_option.rb +93 -0
  144. data/lib/paypal_server_sdk/models/{capture.rb → orders_capture.rb} +46 -22
  145. data/lib/paypal_server_sdk/models/orders_card_verification_method.rb +51 -0
  146. data/lib/paypal_server_sdk/models/p24_payment_object.rb +24 -10
  147. data/lib/paypal_server_sdk/models/p24_payment_request.rb +22 -10
  148. data/lib/paypal_server_sdk/models/pa_res_status.rb +16 -16
  149. data/lib/paypal_server_sdk/models/participant_metadata.rb +64 -0
  150. data/lib/paypal_server_sdk/models/patch.rb +20 -10
  151. data/lib/paypal_server_sdk/models/patch_op.rb +43 -6
  152. data/lib/paypal_server_sdk/models/payee_base.rb +17 -5
  153. data/lib/paypal_server_sdk/models/payee_payment_method_preference.rb +4 -2
  154. data/lib/paypal_server_sdk/models/payer.rb +20 -5
  155. data/lib/paypal_server_sdk/models/payer_base.rb +16 -5
  156. data/lib/paypal_server_sdk/models/payment_advice_code.rb +53 -8
  157. data/lib/paypal_server_sdk/models/payment_authorization.rb +32 -11
  158. data/lib/paypal_server_sdk/models/payment_collection.rb +16 -2
  159. data/lib/paypal_server_sdk/models/payment_initiator.rb +5 -2
  160. data/lib/paypal_server_sdk/models/payment_instruction.rb +16 -0
  161. data/lib/paypal_server_sdk/models/payment_method_preference.rb +14 -0
  162. data/lib/paypal_server_sdk/models/payment_source.rb +25 -9
  163. data/lib/paypal_server_sdk/models/payment_source_response.rb +19 -0
  164. data/lib/paypal_server_sdk/models/payment_supplementary_data.rb +12 -0
  165. data/lib/paypal_server_sdk/models/payment_token_request.rb +17 -3
  166. data/lib/paypal_server_sdk/models/payment_token_request_card.rb +17 -22
  167. data/lib/paypal_server_sdk/models/payment_token_request_payment_source.rb +12 -0
  168. data/lib/paypal_server_sdk/models/payment_token_response.rb +18 -3
  169. data/lib/paypal_server_sdk/models/payment_token_response_payment_source.rb +18 -14
  170. data/lib/paypal_server_sdk/models/payment_token_status.rb +36 -0
  171. data/lib/paypal_server_sdk/models/payments_capture.rb +252 -0
  172. data/lib/paypal_server_sdk/models/payments_payment_advice_code.rb +42 -0
  173. data/lib/paypal_server_sdk/models/payments_processor_response.rb +98 -0
  174. data/lib/paypal_server_sdk/models/paypal_experience_landing_page.rb +11 -3
  175. data/lib/paypal_server_sdk/models/paypal_experience_user_action.rb +9 -4
  176. data/lib/paypal_server_sdk/models/paypal_payment_token.rb +38 -8
  177. data/lib/paypal_server_sdk/models/paypal_payment_token_customer_type.rb +7 -3
  178. data/lib/paypal_server_sdk/models/paypal_payment_token_usage_type.rb +7 -3
  179. data/lib/paypal_server_sdk/models/paypal_wallet.rb +41 -11
  180. data/lib/paypal_server_sdk/models/paypal_wallet_account_verification_status.rb +6 -2
  181. data/lib/paypal_server_sdk/models/paypal_wallet_attributes.rb +12 -0
  182. data/lib/paypal_server_sdk/models/paypal_wallet_attributes_response.rb +12 -0
  183. data/lib/paypal_server_sdk/models/paypal_wallet_context_shipping_preference.rb +31 -0
  184. data/lib/paypal_server_sdk/models/paypal_wallet_customer.rb +18 -5
  185. data/lib/paypal_server_sdk/models/paypal_wallet_customer_request.rb +18 -5
  186. data/lib/paypal_server_sdk/models/paypal_wallet_experience_context.rb +45 -12
  187. data/lib/paypal_server_sdk/models/paypal_wallet_response.rb +39 -7
  188. data/lib/paypal_server_sdk/models/paypal_wallet_stored_credential.rb +98 -0
  189. data/lib/paypal_server_sdk/models/paypal_wallet_vault_instruction.rb +18 -1
  190. data/lib/paypal_server_sdk/models/paypal_wallet_vault_response.rb +13 -0
  191. data/lib/paypal_server_sdk/models/paypal_wallet_vault_status.rb +8 -3
  192. data/lib/paypal_server_sdk/models/phone.rb +14 -0
  193. data/lib/paypal_server_sdk/models/phone_number.rb +12 -0
  194. data/lib/paypal_server_sdk/models/phone_number_with_country_code.rb +15 -0
  195. data/lib/paypal_server_sdk/models/phone_with_type.rb +13 -0
  196. data/lib/paypal_server_sdk/models/plan.rb +102 -0
  197. data/lib/paypal_server_sdk/models/platform_fee.rb +12 -0
  198. data/lib/paypal_server_sdk/models/pricing_model.rb +28 -0
  199. data/lib/paypal_server_sdk/models/pricing_scheme.rb +84 -0
  200. data/lib/paypal_server_sdk/models/processor_response.rb +15 -0
  201. data/lib/paypal_server_sdk/models/processor_response_code.rb +312 -308
  202. data/lib/paypal_server_sdk/models/purchase_unit.rb +43 -25
  203. data/lib/paypal_server_sdk/models/purchase_unit_request.rb +36 -20
  204. data/lib/paypal_server_sdk/models/reauthorize_request.rb +19 -8
  205. data/lib/paypal_server_sdk/models/refund.rb +25 -6
  206. data/lib/paypal_server_sdk/models/refund_incomplete_reason.rb +2 -1
  207. data/lib/paypal_server_sdk/models/refund_payment_instruction.rb +12 -0
  208. data/lib/paypal_server_sdk/models/refund_platform_fee.rb +12 -0
  209. data/lib/paypal_server_sdk/models/refund_request.rb +17 -2
  210. data/lib/paypal_server_sdk/models/refund_status.rb +4 -4
  211. data/lib/paypal_server_sdk/models/refund_status_details.rb +12 -0
  212. data/lib/paypal_server_sdk/models/refund_status_with_details.rb +12 -0
  213. data/lib/paypal_server_sdk/models/related_identifiers.rb +14 -0
  214. data/lib/paypal_server_sdk/models/risk_supplementary_data.rb +63 -0
  215. data/lib/paypal_server_sdk/models/seller_payable_breakdown.rb +21 -0
  216. data/lib/paypal_server_sdk/models/seller_protection.rb +13 -0
  217. data/lib/paypal_server_sdk/models/seller_protection_status.rb +6 -3
  218. data/lib/paypal_server_sdk/models/seller_receivable_breakdown.rb +18 -0
  219. data/lib/paypal_server_sdk/models/setup_token_card_experience_context.rb +21 -5
  220. data/lib/paypal_server_sdk/models/setup_token_request.rb +17 -3
  221. data/lib/paypal_server_sdk/models/setup_token_request_card.rb +20 -18
  222. data/lib/paypal_server_sdk/models/setup_token_request_payment_source.rb +13 -0
  223. data/lib/paypal_server_sdk/models/setup_token_response.rb +23 -16
  224. data/lib/paypal_server_sdk/models/setup_token_response_card.rb +25 -3
  225. data/lib/paypal_server_sdk/models/setup_token_response_payment_source.rb +13 -0
  226. data/lib/paypal_server_sdk/models/shipment_carrier.rb +1377 -1402
  227. data/lib/paypal_server_sdk/models/shipping_details.rb +29 -2
  228. data/lib/paypal_server_sdk/models/shipping_name.rb +12 -0
  229. data/lib/paypal_server_sdk/models/shipping_option.rb +14 -0
  230. data/lib/paypal_server_sdk/models/shipping_options_purchase_unit.rb +102 -0
  231. data/lib/paypal_server_sdk/models/shipping_preference.rb +6 -3
  232. data/lib/paypal_server_sdk/models/shipping_type.rb +12 -4
  233. data/lib/paypal_server_sdk/models/shipping_with_tracking_details.rb +30 -2
  234. data/lib/paypal_server_sdk/models/sofort_payment_object.rb +18 -5
  235. data/lib/paypal_server_sdk/models/sofort_payment_request.rb +18 -5
  236. data/lib/paypal_server_sdk/models/standard_entry_class_code.rb +12 -4
  237. data/lib/paypal_server_sdk/models/store_in_vault_instruction.rb +2 -1
  238. data/lib/paypal_server_sdk/models/stored_payment_source.rb +23 -7
  239. data/lib/paypal_server_sdk/models/stored_payment_source_payment_type.rb +6 -3
  240. data/lib/paypal_server_sdk/models/stored_payment_source_usage_type.rb +6 -3
  241. data/lib/paypal_server_sdk/models/supplementary_data.rb +25 -7
  242. data/lib/paypal_server_sdk/models/supplementary_purchase_data.rb +13 -0
  243. data/lib/paypal_server_sdk/models/tax_id_type.rb +2 -2
  244. data/lib/paypal_server_sdk/models/tax_info.rb +12 -0
  245. data/lib/paypal_server_sdk/models/tenure_type.rb +28 -0
  246. data/lib/paypal_server_sdk/models/three_d_secure_authentication_response.rb +14 -0
  247. data/lib/paypal_server_sdk/models/three_d_secure_card_authentication_response.rb +89 -0
  248. data/lib/paypal_server_sdk/models/token.rb +12 -0
  249. data/lib/paypal_server_sdk/models/token_type.rb +2 -1
  250. data/lib/paypal_server_sdk/models/trustly_payment_object.rb +31 -6
  251. data/lib/paypal_server_sdk/models/trustly_payment_request.rb +30 -6
  252. data/lib/paypal_server_sdk/models/universal_product_code.rb +12 -0
  253. data/lib/paypal_server_sdk/models/upc_type.rb +14 -14
  254. data/lib/paypal_server_sdk/models/usage_pattern.rb +72 -0
  255. data/lib/paypal_server_sdk/models/vault_card_verification_method.rb +39 -0
  256. data/lib/paypal_server_sdk/models/vault_customer.rb +12 -0
  257. data/lib/paypal_server_sdk/models/vault_experience_context.rb +26 -7
  258. data/lib/paypal_server_sdk/models/vault_instruction.rb +12 -0
  259. data/lib/paypal_server_sdk/models/vault_instruction_action.rb +26 -0
  260. data/lib/paypal_server_sdk/models/vault_instruction_base.rb +12 -0
  261. data/lib/paypal_server_sdk/models/vault_paypal_wallet_request.rb +43 -4
  262. data/lib/paypal_server_sdk/models/vault_response.rb +13 -0
  263. data/lib/paypal_server_sdk/models/vault_response_customer.rb +86 -0
  264. data/lib/paypal_server_sdk/models/vault_status.rb +8 -3
  265. data/lib/paypal_server_sdk/models/vault_token_request.rb +13 -1
  266. data/lib/paypal_server_sdk/models/vault_token_request_type.rb +20 -0
  267. data/lib/paypal_server_sdk/models/vault_venmo_experience_context.rb +24 -6
  268. data/lib/paypal_server_sdk/models/vault_venmo_request.rb +31 -3
  269. data/lib/paypal_server_sdk/models/vaulted_digital_wallet.rb +29 -3
  270. data/lib/paypal_server_sdk/models/vaulted_digital_wallet_shipping_details.rb +26 -1
  271. data/lib/paypal_server_sdk/models/venmo_payment_token.rb +37 -8
  272. data/lib/paypal_server_sdk/models/venmo_payment_token_customer_type.rb +4 -2
  273. data/lib/paypal_server_sdk/models/venmo_payment_token_usage_pattern.rb +12 -6
  274. data/lib/paypal_server_sdk/models/venmo_payment_token_usage_type.rb +5 -2
  275. data/lib/paypal_server_sdk/models/venmo_wallet_additional_attributes.rb +12 -0
  276. data/lib/paypal_server_sdk/models/venmo_wallet_attributes_response.rb +12 -0
  277. data/lib/paypal_server_sdk/models/venmo_wallet_customer_information.rb +16 -5
  278. data/lib/paypal_server_sdk/models/venmo_wallet_experience_context.rb +34 -5
  279. data/lib/paypal_server_sdk/models/venmo_wallet_request.rb +21 -8
  280. data/lib/paypal_server_sdk/models/venmo_wallet_response.rb +21 -5
  281. data/lib/paypal_server_sdk/models/venmo_wallet_vault_attributes.rb +17 -0
  282. data/lib/paypal_server_sdk/utilities/file_wrapper.rb +14 -2
  283. data/lib/paypal_server_sdk.rb +43 -14
  284. metadata +40 -15
  285. data/lib/paypal_server_sdk/models/address_details.rb +0 -160
  286. data/lib/paypal_server_sdk/models/card_payment_token.rb +0 -166
  287. data/lib/paypal_server_sdk/models/card_verification_method.rb +0 -29
  288. data/lib/paypal_server_sdk/models/google_pay_card_attributes.rb +0 -51
  289. data/lib/paypal_server_sdk/models/payee.rb +0 -65
  290. data/lib/paypal_server_sdk/models/paypal_payment_token_usage_pattern.rb +0 -35
  291. data/lib/paypal_server_sdk/models/token_request_type.rb +0 -23
@@ -13,26 +13,24 @@ module PaypalServerSdk
13
13
  # The API caller-provided external ID for the purchase unit. Required for
14
14
  # multiple purchase units when you must update the order through `PATCH`. If
15
15
  # you omit this value and the order contains only one purchase unit, PayPal
16
- # sets this value to `default`. <blockquote><strong>Note:</strong> If there
17
- # are multiple purchase units, <code>reference_id</code> is required for
18
- # each purchase unit.</blockquote>
16
+ # sets this value to `default`. Note: If there are multiple purchase units,
17
+ # reference_id is required for each purchase unit.
19
18
  # @return [String]
20
19
  attr_accessor :reference_id
21
20
 
22
21
  # The total order amount with an optional breakdown that provides details,
23
22
  # such as the total item amount, total tax amount, shipping, handling,
24
- # insurance, and discounts, if any.<br/>If you specify `amount.breakdown`,
25
- # the amount equals `item_total` plus `tax_total` plus `shipping` plus
26
- # `handling` plus `insurance` minus `shipping_discount` minus
27
- # discount.<br/>The amount must be a positive number. For listed of
28
- # supported currencies and decimal precision, see the PayPal REST APIs <a
29
- # href="/docs/integration/direct/rest/currency-codes/">Currency Codes</a>.
23
+ # insurance, and discounts, if any. If you specify `amount.breakdown`, the
24
+ # amount equals `item_total` plus `tax_total` plus `shipping` plus
25
+ # `handling` plus `insurance` minus `shipping_discount` minus discount. The
26
+ # amount must be a positive number. For listed of supported currencies and
27
+ # decimal precision, see the PayPal REST APIs Currency Codes.
30
28
  # @return [AmountWithBreakdown]
31
29
  attr_accessor :amount
32
30
 
33
31
  # The merchant who receives the funds and fulfills the order. The merchant
34
32
  # is also known as the payee.
35
- # @return [Payee]
33
+ # @return [PayeeBase]
36
34
  attr_accessor :payee
37
35
 
38
36
  # Any additional payment instructions to be consider during payment
@@ -60,26 +58,23 @@ module PaypalServerSdk
60
58
  # addition, this ID is available in transaction and settlement reports that
61
59
  # merchants and API callers can use to reconcile transactions. This ID is
62
60
  # only available when an order is saved by calling
63
- # <code>v2/checkout/orders/id/save</code>.
61
+ # v2/checkout/orders/id/save.
64
62
  # @return [String]
65
63
  attr_accessor :id
66
64
 
67
65
  # The payment descriptor on account transactions on the customer's credit
68
66
  # card statement, that PayPal sends to processors. The maximum length of the
69
67
  # soft descriptor information that you can pass in the API field is 22
70
- # characters, in the following format:<code>22 - len(PAYPAL * (8)) -
71
- # len(<var>Descriptor in Payment Receiving Preferences of Merchant
72
- # account</var> + 1)</code>The PAYPAL prefix uses 8 characters.<br/><br/>The
73
- # soft descriptor supports the following ASCII
74
- # characters:<ul><li>Alphanumeric
75
- # characters</li><li>Dashes</li><li>Asterisks</li><li>Periods
76
- # (.)</li><li>Spaces</li></ul>For Wallet payments marketplace
77
- # integrations:<ul><li>The merchant descriptor in the Payment Receiving
78
- # Preferences must be the marketplace name.</li><li>You can't use the
79
- # remaining space to show the customer service number.</li><li>The remaining
80
- # spaces can be a combination of seller name and country.</li></ul><br/>For
81
- # unbranded payments (Direct Card) marketplace integrations, use a
82
- # combination of the seller name and phone number.
68
+ # characters, in the following format:22 - len(PAYPAL * (8)) -
69
+ # len(Descriptor in Payment Receiving Preferences of Merchant account +
70
+ # 1)The PAYPAL prefix uses 8 characters. The soft descriptor supports the
71
+ # following ASCII characters: Alphanumeric characters Dashes Asterisks
72
+ # Periods (.) Spaces For Wallet payments marketplace integrations: The
73
+ # merchant descriptor in the Payment Receiving Preferences must be the
74
+ # marketplace name. You can't use the remaining space to show the customer
75
+ # service number. The remaining spaces can be a combination of seller name
76
+ # and country. For unbranded payments (Direct Card) marketplace
77
+ # integrations, use a combination of the seller name and phone number.
83
78
  # @return [String]
84
79
  attr_accessor :soft_descriptor
85
80
 
@@ -181,7 +176,7 @@ module PaypalServerSdk
181
176
  # Extract variables from the hash.
182
177
  reference_id = hash.key?('reference_id') ? hash['reference_id'] : SKIP
183
178
  amount = AmountWithBreakdown.from_hash(hash['amount']) if hash['amount']
184
- payee = Payee.from_hash(hash['payee']) if hash['payee']
179
+ payee = PayeeBase.from_hash(hash['payee']) if hash['payee']
185
180
  payment_instruction = PaymentInstruction.from_hash(hash['payment_instruction']) if
186
181
  hash['payment_instruction']
187
182
  description = hash.key?('description') ? hash['description'] : SKIP
@@ -223,5 +218,28 @@ module PaypalServerSdk
223
218
  payments: payments,
224
219
  most_recent_errors: most_recent_errors)
225
220
  end
221
+
222
+ # Provides a human-readable string representation of the object.
223
+ def to_s
224
+ class_name = self.class.name.split('::').last
225
+ "<#{class_name} reference_id: #{@reference_id}, amount: #{@amount}, payee: #{@payee},"\
226
+ " payment_instruction: #{@payment_instruction}, description: #{@description}, custom_id:"\
227
+ " #{@custom_id}, invoice_id: #{@invoice_id}, id: #{@id}, soft_descriptor:"\
228
+ " #{@soft_descriptor}, items: #{@items}, shipping: #{@shipping}, supplementary_data:"\
229
+ " #{@supplementary_data}, payments: #{@payments}, most_recent_errors:"\
230
+ " #{@most_recent_errors}>"
231
+ end
232
+
233
+ # Provides a debugging-friendly string with detailed object information.
234
+ def inspect
235
+ class_name = self.class.name.split('::').last
236
+ "<#{class_name} reference_id: #{@reference_id.inspect}, amount: #{@amount.inspect}, payee:"\
237
+ " #{@payee.inspect}, payment_instruction: #{@payment_instruction.inspect}, description:"\
238
+ " #{@description.inspect}, custom_id: #{@custom_id.inspect}, invoice_id:"\
239
+ " #{@invoice_id.inspect}, id: #{@id.inspect}, soft_descriptor: #{@soft_descriptor.inspect},"\
240
+ " items: #{@items.inspect}, shipping: #{@shipping.inspect}, supplementary_data:"\
241
+ " #{@supplementary_data.inspect}, payments: #{@payments.inspect}, most_recent_errors:"\
242
+ " #{@most_recent_errors.inspect}>"
243
+ end
226
244
  end
227
245
  end
@@ -19,18 +19,17 @@ module PaypalServerSdk
19
19
 
20
20
  # The total order amount with an optional breakdown that provides details,
21
21
  # such as the total item amount, total tax amount, shipping, handling,
22
- # insurance, and discounts, if any.<br/>If you specify `amount.breakdown`,
23
- # the amount equals `item_total` plus `tax_total` plus `shipping` plus
24
- # `handling` plus `insurance` minus `shipping_discount` minus
25
- # discount.<br/>The amount must be a positive number. For listed of
26
- # supported currencies and decimal precision, see the PayPal REST APIs <a
27
- # href="/docs/integration/direct/rest/currency-codes/">Currency Codes</a>.
22
+ # insurance, and discounts, if any. If you specify `amount.breakdown`, the
23
+ # amount equals `item_total` plus `tax_total` plus `shipping` plus
24
+ # `handling` plus `insurance` minus `shipping_discount` minus discount. The
25
+ # amount must be a positive number. For listed of supported currencies and
26
+ # decimal precision, see the PayPal REST APIs Currency Codes.
28
27
  # @return [AmountWithBreakdown]
29
28
  attr_accessor :amount
30
29
 
31
30
  # The merchant who receives the funds and fulfills the order. The merchant
32
31
  # is also known as the payee.
33
- # @return [Payee]
32
+ # @return [PayeeBase]
34
33
  attr_accessor :payee
35
34
 
36
35
  # Any additional payment instructions to be consider during payment
@@ -60,21 +59,18 @@ module PaypalServerSdk
60
59
  attr_accessor :invoice_id
61
60
 
62
61
  # The soft descriptor is the dynamic text used to construct the statement
63
- # descriptor that appears on a payer's card statement.<br><br>If an Order is
64
- # paid using the "PayPal Wallet", the statement descriptor will appear in
62
+ # descriptor that appears on a payer's card statement. If an Order is paid
63
+ # using the "PayPal Wallet", the statement descriptor will appear in
65
64
  # following format on the payer's card statement:
66
- # <code><var>PAYPAL_prefix</var>+(space)+<var>merchant_descriptor</var>+(spa
67
- # ce)+ <var>soft_descriptor</var></code><blockquote><strong>Note:</strong>
65
+ # PAYPAL_prefix+(space)+merchant_descriptor+(space)+ soft_descriptor Note:
68
66
  # The merchant descriptor is the descriptor of the merchant’s payment
69
67
  # receiving preferences which can be seen by logging into the merchant
70
- # account
71
- # https://www.sandbox.paypal.com/businessprofile/settings/info/edit</blockqu
72
- # ote>The <code>PAYPAL</code> prefix uses 8 characters. Only the first 22
73
- # characters will be displayed in the statement. <br>For example,
74
- # if:<ul><li>The PayPal prefix toggle is <code>PAYPAL *</code>.</li><li>The
75
- # merchant descriptor in the profile is <code>Janes Gift</code>.</li><li>The
76
- # soft descriptor is <code>800-123-1234</code>.</li></ul>Then, the statement
77
- # descriptor on the card is <code>PAYPAL * Janes Gift 80</code>.
68
+ # account https://www.sandbox.paypal.com/businessprofile/settings/info/edit
69
+ # The PAYPAL prefix uses 8 characters. Only the first 22 characters will be
70
+ # displayed in the statement. For example, if: The PayPal prefix toggle is
71
+ # PAYPAL *. The merchant descriptor in the profile is Janes Gift. The soft
72
+ # descriptor is 800-123-1234. Then, the statement descriptor on the card is
73
+ # PAYPAL * Janes Gift 80.
78
74
  # @return [String]
79
75
  attr_accessor :soft_descriptor
80
76
 
@@ -154,7 +150,7 @@ module PaypalServerSdk
154
150
  # Extract variables from the hash.
155
151
  amount = AmountWithBreakdown.from_hash(hash['amount']) if hash['amount']
156
152
  reference_id = hash.key?('reference_id') ? hash['reference_id'] : SKIP
157
- payee = Payee.from_hash(hash['payee']) if hash['payee']
153
+ payee = PayeeBase.from_hash(hash['payee']) if hash['payee']
158
154
  payment_instruction = PaymentInstruction.from_hash(hash['payment_instruction']) if
159
155
  hash['payment_instruction']
160
156
  description = hash.key?('description') ? hash['description'] : SKIP
@@ -189,5 +185,25 @@ module PaypalServerSdk
189
185
  shipping: shipping,
190
186
  supplementary_data: supplementary_data)
191
187
  end
188
+
189
+ # Provides a human-readable string representation of the object.
190
+ def to_s
191
+ class_name = self.class.name.split('::').last
192
+ "<#{class_name} reference_id: #{@reference_id}, amount: #{@amount}, payee: #{@payee},"\
193
+ " payment_instruction: #{@payment_instruction}, description: #{@description}, custom_id:"\
194
+ " #{@custom_id}, invoice_id: #{@invoice_id}, soft_descriptor: #{@soft_descriptor}, items:"\
195
+ " #{@items}, shipping: #{@shipping}, supplementary_data: #{@supplementary_data}>"
196
+ end
197
+
198
+ # Provides a debugging-friendly string with detailed object information.
199
+ def inspect
200
+ class_name = self.class.name.split('::').last
201
+ "<#{class_name} reference_id: #{@reference_id.inspect}, amount: #{@amount.inspect}, payee:"\
202
+ " #{@payee.inspect}, payment_instruction: #{@payment_instruction.inspect}, description:"\
203
+ " #{@description.inspect}, custom_id: #{@custom_id.inspect}, invoice_id:"\
204
+ " #{@invoice_id.inspect}, soft_descriptor: #{@soft_descriptor.inspect}, items:"\
205
+ " #{@items.inspect}, shipping: #{@shipping.inspect}, supplementary_data:"\
206
+ " #{@supplementary_data.inspect}>"
207
+ end
192
208
  end
193
209
  end
@@ -7,15 +7,14 @@ module PaypalServerSdk
7
7
  # Reauthorizes an authorized PayPal account payment, by ID. To ensure that
8
8
  # funds are still available, reauthorize a payment after its initial three-day
9
9
  # honor period expires. You can reauthorize a payment only once from days four
10
- # to 29.<br/><br/>If 30 days have transpired since the date of the original
10
+ # to 29. If 30 days have transpired since the date of the original
11
11
  # authorization, you must create an authorized payment instead of
12
- # reauthorizing the original authorized payment.<br/><br/>A reauthorized
13
- # payment itself has a new honor period of three days.<br/><br/>You can
14
- # reauthorize an authorized payment once. The allowed amount depends on
15
- # context and geography, for example in US it is up to 115% of the original
16
- # authorized amount, not to exceed an increase of $75 USD.<br/><br/>Supports
17
- # only the `amount` request parameter.<blockquote><strong>Note:</strong> This
18
- # request is currently not supported for Partner use cases.</blockquote>
12
+ # reauthorizing the original authorized payment. A reauthorized payment itself
13
+ # has a new honor period of three days. You can reauthorize an authorized
14
+ # payment once. The allowed amount depends on context and geography, for
15
+ # example in US it is up to 115% of the original authorized amount, not to
16
+ # exceed an increase of $75 USD. Supports only the `amount` request parameter.
17
+ # Note: This request is currently not supported for Partner use cases.
19
18
  class ReauthorizeRequest < BaseModel
20
19
  SKIP = Object.new
21
20
  private_constant :SKIP
@@ -58,5 +57,17 @@ module PaypalServerSdk
58
57
  # Create object from extracted values.
59
58
  ReauthorizeRequest.new(amount: amount)
60
59
  end
60
+
61
+ # Provides a human-readable string representation of the object.
62
+ def to_s
63
+ class_name = self.class.name.split('::').last
64
+ "<#{class_name} amount: #{@amount}>"
65
+ end
66
+
67
+ # Provides a debugging-friendly string with detailed object information.
68
+ def inspect
69
+ class_name = self.class.name.split('::').last
70
+ "<#{class_name} amount: #{@amount.inspect}>"
71
+ end
61
72
  end
62
73
  end
@@ -64,17 +64,15 @@ module PaypalServerSdk
64
64
 
65
65
  # The date and time, in [Internet date and time
66
66
  # format](https://tools.ietf.org/html/rfc3339#section-5.6). Seconds are
67
- # required while fractional seconds are
68
- # optional.<blockquote><strong>Note:</strong> The regular expression
69
- # provides guidance but does not reject all invalid dates.</blockquote>
67
+ # required while fractional seconds are optional. Note: The regular
68
+ # expression provides guidance but does not reject all invalid dates.
70
69
  # @return [String]
71
70
  attr_accessor :create_time
72
71
 
73
72
  # The date and time, in [Internet date and time
74
73
  # format](https://tools.ietf.org/html/rfc3339#section-5.6). Seconds are
75
- # required while fractional seconds are
76
- # optional.<blockquote><strong>Note:</strong> The regular expression
77
- # provides guidance but does not reject all invalid dates.</blockquote>
74
+ # required while fractional seconds are optional. Note: The regular
75
+ # expression provides guidance but does not reject all invalid dates.
78
76
  # @return [String]
79
77
  attr_accessor :update_time
80
78
 
@@ -191,5 +189,26 @@ module PaypalServerSdk
191
189
  create_time: create_time,
192
190
  update_time: update_time)
193
191
  end
192
+
193
+ # Provides a human-readable string representation of the object.
194
+ def to_s
195
+ class_name = self.class.name.split('::').last
196
+ "<#{class_name} status: #{@status}, status_details: #{@status_details}, id: #{@id}, amount:"\
197
+ " #{@amount}, invoice_id: #{@invoice_id}, custom_id: #{@custom_id},"\
198
+ " acquirer_reference_number: #{@acquirer_reference_number}, note_to_payer:"\
199
+ " #{@note_to_payer}, seller_payable_breakdown: #{@seller_payable_breakdown}, payer:"\
200
+ " #{@payer}, links: #{@links}, create_time: #{@create_time}, update_time: #{@update_time}>"
201
+ end
202
+
203
+ # Provides a debugging-friendly string with detailed object information.
204
+ def inspect
205
+ class_name = self.class.name.split('::').last
206
+ "<#{class_name} status: #{@status.inspect}, status_details: #{@status_details.inspect}, id:"\
207
+ " #{@id.inspect}, amount: #{@amount.inspect}, invoice_id: #{@invoice_id.inspect}, custom_id:"\
208
+ " #{@custom_id.inspect}, acquirer_reference_number: #{@acquirer_reference_number.inspect},"\
209
+ " note_to_payer: #{@note_to_payer.inspect}, seller_payable_breakdown:"\
210
+ " #{@seller_payable_breakdown.inspect}, payer: #{@payer.inspect}, links: #{@links.inspect},"\
211
+ " create_time: #{@create_time.inspect}, update_time: #{@update_time.inspect}>"
212
+ end
194
213
  end
195
214
  end
@@ -7,7 +7,8 @@ module PaypalServerSdk
7
7
  # The reason why the refund has the `PENDING` or `FAILED` status.
8
8
  class RefundIncompleteReason
9
9
  REFUND_INCOMPLETE_REASON = [
10
- # TODO: Write general description for ECHECK
10
+ # The customer's account is funded through an eCheck, which has not yet
11
+ # cleared.
11
12
  ECHECK = 'ECHECK'.freeze
12
13
  ].freeze
13
14
 
@@ -64,5 +64,17 @@ module PaypalServerSdk
64
64
  # Create object from extracted values.
65
65
  RefundPaymentInstruction.new(platform_fees: platform_fees)
66
66
  end
67
+
68
+ # Provides a human-readable string representation of the object.
69
+ def to_s
70
+ class_name = self.class.name.split('::').last
71
+ "<#{class_name} platform_fees: #{@platform_fees}>"
72
+ end
73
+
74
+ # Provides a debugging-friendly string with detailed object information.
75
+ def inspect
76
+ class_name = self.class.name.split('::').last
77
+ "<#{class_name} platform_fees: #{@platform_fees.inspect}>"
78
+ end
67
79
  end
68
80
  end
@@ -48,5 +48,17 @@ module PaypalServerSdk
48
48
  # Create object from extracted values.
49
49
  RefundPlatformFee.new(amount: amount)
50
50
  end
51
+
52
+ # Provides a human-readable string representation of the object.
53
+ def to_s
54
+ class_name = self.class.name.split('::').last
55
+ "<#{class_name} amount: #{@amount}>"
56
+ end
57
+
58
+ # Provides a debugging-friendly string with detailed object information.
59
+ def inspect
60
+ class_name = self.class.name.split('::').last
61
+ "<#{class_name} amount: #{@amount.inspect}>"
62
+ end
51
63
  end
52
64
  end
@@ -5,8 +5,8 @@
5
5
 
6
6
  module PaypalServerSdk
7
7
  # Refunds a captured payment, by ID. For a full refund, include an empty
8
- # request body. For a partial refund, include an <code>amount</code> object in
9
- # the request body.
8
+ # request body. For a partial refund, include an amount object in the request
9
+ # body.
10
10
  class RefundRequest < BaseModel
11
11
  SKIP = Object.new
12
12
  private_constant :SKIP
@@ -96,5 +96,20 @@ module PaypalServerSdk
96
96
  note_to_payer: note_to_payer,
97
97
  payment_instruction: payment_instruction)
98
98
  end
99
+
100
+ # Provides a human-readable string representation of the object.
101
+ def to_s
102
+ class_name = self.class.name.split('::').last
103
+ "<#{class_name} amount: #{@amount}, custom_id: #{@custom_id}, invoice_id: #{@invoice_id},"\
104
+ " note_to_payer: #{@note_to_payer}, payment_instruction: #{@payment_instruction}>"
105
+ end
106
+
107
+ # Provides a debugging-friendly string with detailed object information.
108
+ def inspect
109
+ class_name = self.class.name.split('::').last
110
+ "<#{class_name} amount: #{@amount.inspect}, custom_id: #{@custom_id.inspect}, invoice_id:"\
111
+ " #{@invoice_id.inspect}, note_to_payer: #{@note_to_payer.inspect}, payment_instruction:"\
112
+ " #{@payment_instruction.inspect}>"
113
+ end
99
114
  end
100
115
  end
@@ -7,16 +7,16 @@ module PaypalServerSdk
7
7
  # The status of the refund.
8
8
  class RefundStatus
9
9
  REFUND_STATUS = [
10
- # TODO: Write general description for CANCELLED
10
+ # The refund was cancelled.
11
11
  CANCELLED = 'CANCELLED'.freeze,
12
12
 
13
- # TODO: Write general description for FAILED
13
+ # The refund could not be processed.
14
14
  FAILED = 'FAILED'.freeze,
15
15
 
16
- # TODO: Write general description for PENDING
16
+ # The refund is pending. For more information, see status_details.reason.
17
17
  PENDING = 'PENDING'.freeze,
18
18
 
19
- # TODO: Write general description for COMPLETED
19
+ # The funds for this transaction were debited to the customer's account.
20
20
  COMPLETED = 'COMPLETED'.freeze
21
21
  ].freeze
22
22
 
@@ -46,5 +46,17 @@ module PaypalServerSdk
46
46
  # Create object from extracted values.
47
47
  RefundStatusDetails.new(reason: reason)
48
48
  end
49
+
50
+ # Provides a human-readable string representation of the object.
51
+ def to_s
52
+ class_name = self.class.name.split('::').last
53
+ "<#{class_name} reason: #{@reason}>"
54
+ end
55
+
56
+ # Provides a debugging-friendly string with detailed object information.
57
+ def inspect
58
+ class_name = self.class.name.split('::').last
59
+ "<#{class_name} reason: #{@reason.inspect}>"
60
+ end
49
61
  end
50
62
  end
@@ -56,5 +56,17 @@ module PaypalServerSdk
56
56
  RefundStatusWithDetails.new(status: status,
57
57
  status_details: status_details)
58
58
  end
59
+
60
+ # Provides a human-readable string representation of the object.
61
+ def to_s
62
+ class_name = self.class.name.split('::').last
63
+ "<#{class_name} status: #{@status}, status_details: #{@status_details}>"
64
+ end
65
+
66
+ # Provides a debugging-friendly string with detailed object information.
67
+ def inspect
68
+ class_name = self.class.name.split('::').last
69
+ "<#{class_name} status: #{@status.inspect}, status_details: #{@status_details.inspect}>"
70
+ end
59
71
  end
60
72
  end
@@ -65,5 +65,19 @@ module PaypalServerSdk
65
65
  authorization_id: authorization_id,
66
66
  capture_id: capture_id)
67
67
  end
68
+
69
+ # Provides a human-readable string representation of the object.
70
+ def to_s
71
+ class_name = self.class.name.split('::').last
72
+ "<#{class_name} order_id: #{@order_id}, authorization_id: #{@authorization_id}, capture_id:"\
73
+ " #{@capture_id}>"
74
+ end
75
+
76
+ # Provides a debugging-friendly string with detailed object information.
77
+ def inspect
78
+ class_name = self.class.name.split('::').last
79
+ "<#{class_name} order_id: #{@order_id.inspect}, authorization_id:"\
80
+ " #{@authorization_id.inspect}, capture_id: #{@capture_id.inspect}>"
81
+ end
68
82
  end
69
83
  end
@@ -0,0 +1,63 @@
1
+ # paypal_server_sdk
2
+ #
3
+ # This file was automatically generated by APIMATIC v2.0
4
+ # ( https://apimatic.io ).
5
+
6
+ module PaypalServerSdk
7
+ # Additional information necessary to evaluate the risk profile of a
8
+ # transaction.
9
+ class RiskSupplementaryData < BaseModel
10
+ SKIP = Object.new
11
+ private_constant :SKIP
12
+
13
+ # Profile information of the sender or receiver.
14
+ # @return [ParticipantMetadata]
15
+ attr_accessor :customer
16
+
17
+ # A mapping from model property names to API property names.
18
+ def self.names
19
+ @_hash = {} if @_hash.nil?
20
+ @_hash['customer'] = 'customer'
21
+ @_hash
22
+ end
23
+
24
+ # An array for optional fields
25
+ def self.optionals
26
+ %w[
27
+ customer
28
+ ]
29
+ end
30
+
31
+ # An array for nullable fields
32
+ def self.nullables
33
+ []
34
+ end
35
+
36
+ def initialize(customer: SKIP)
37
+ @customer = customer unless customer == SKIP
38
+ end
39
+
40
+ # Creates an instance of the object from a hash.
41
+ def self.from_hash(hash)
42
+ return nil unless hash
43
+
44
+ # Extract variables from the hash.
45
+ customer = ParticipantMetadata.from_hash(hash['customer']) if hash['customer']
46
+
47
+ # Create object from extracted values.
48
+ RiskSupplementaryData.new(customer: customer)
49
+ end
50
+
51
+ # Provides a human-readable string representation of the object.
52
+ def to_s
53
+ class_name = self.class.name.split('::').last
54
+ "<#{class_name} customer: #{@customer}>"
55
+ end
56
+
57
+ # Provides a debugging-friendly string with detailed object information.
58
+ def inspect
59
+ class_name = self.class.name.split('::').last
60
+ "<#{class_name} customer: #{@customer.inspect}>"
61
+ end
62
+ end
63
+ end
@@ -152,5 +152,26 @@ module PaypalServerSdk
152
152
  net_amount_breakdown: net_amount_breakdown,
153
153
  total_refunded_amount: total_refunded_amount)
154
154
  end
155
+
156
+ # Provides a human-readable string representation of the object.
157
+ def to_s
158
+ class_name = self.class.name.split('::').last
159
+ "<#{class_name} gross_amount: #{@gross_amount}, paypal_fee: #{@paypal_fee},"\
160
+ " paypal_fee_in_receivable_currency: #{@paypal_fee_in_receivable_currency}, net_amount:"\
161
+ " #{@net_amount}, net_amount_in_receivable_currency: #{@net_amount_in_receivable_currency},"\
162
+ " platform_fees: #{@platform_fees}, net_amount_breakdown: #{@net_amount_breakdown},"\
163
+ " total_refunded_amount: #{@total_refunded_amount}>"
164
+ end
165
+
166
+ # Provides a debugging-friendly string with detailed object information.
167
+ def inspect
168
+ class_name = self.class.name.split('::').last
169
+ "<#{class_name} gross_amount: #{@gross_amount.inspect}, paypal_fee: #{@paypal_fee.inspect},"\
170
+ " paypal_fee_in_receivable_currency: #{@paypal_fee_in_receivable_currency.inspect},"\
171
+ " net_amount: #{@net_amount.inspect}, net_amount_in_receivable_currency:"\
172
+ " #{@net_amount_in_receivable_currency.inspect}, platform_fees: #{@platform_fees.inspect},"\
173
+ " net_amount_breakdown: #{@net_amount_breakdown.inspect}, total_refunded_amount:"\
174
+ " #{@total_refunded_amount.inspect}>"
175
+ end
155
176
  end
156
177
  end
@@ -61,5 +61,18 @@ module PaypalServerSdk
61
61
  SellerProtection.new(status: status,
62
62
  dispute_categories: dispute_categories)
63
63
  end
64
+
65
+ # Provides a human-readable string representation of the object.
66
+ def to_s
67
+ class_name = self.class.name.split('::').last
68
+ "<#{class_name} status: #{@status}, dispute_categories: #{@dispute_categories}>"
69
+ end
70
+
71
+ # Provides a debugging-friendly string with detailed object information.
72
+ def inspect
73
+ class_name = self.class.name.split('::').last
74
+ "<#{class_name} status: #{@status.inspect}, dispute_categories:"\
75
+ " #{@dispute_categories.inspect}>"
76
+ end
64
77
  end
65
78
  end
@@ -10,13 +10,16 @@ module PaypalServerSdk
10
10
  # .
11
11
  class SellerProtectionStatus
12
12
  SELLER_PROTECTION_STATUS = [
13
- # TODO: Write general description for ELIGIBLE
13
+ # Your PayPal balance remains intact if the customer claims that they did
14
+ # not receive an item or the account holder claims that they did not
15
+ # authorize the payment.
14
16
  ELIGIBLE = 'ELIGIBLE'.freeze,
15
17
 
16
- # TODO: Write general description for PARTIALLY_ELIGIBLE
18
+ # Your PayPal balance remains intact if the customer claims that they did
19
+ # not receive an item.
17
20
  PARTIALLY_ELIGIBLE = 'PARTIALLY_ELIGIBLE'.freeze,
18
21
 
19
- # TODO: Write general description for NOT_ELIGIBLE
22
+ # This transaction is not eligible for seller protection.
20
23
  NOT_ELIGIBLE = 'NOT_ELIGIBLE'.freeze
21
24
  ].freeze
22
25
 
@@ -125,5 +125,23 @@ module PaypalServerSdk
125
125
  exchange_rate: exchange_rate,
126
126
  platform_fees: platform_fees)
127
127
  end
128
+
129
+ # Provides a human-readable string representation of the object.
130
+ def to_s
131
+ class_name = self.class.name.split('::').last
132
+ "<#{class_name} gross_amount: #{@gross_amount}, paypal_fee: #{@paypal_fee},"\
133
+ " paypal_fee_in_receivable_currency: #{@paypal_fee_in_receivable_currency}, net_amount:"\
134
+ " #{@net_amount}, receivable_amount: #{@receivable_amount}, exchange_rate:"\
135
+ " #{@exchange_rate}, platform_fees: #{@platform_fees}>"
136
+ end
137
+
138
+ # Provides a debugging-friendly string with detailed object information.
139
+ def inspect
140
+ class_name = self.class.name.split('::').last
141
+ "<#{class_name} gross_amount: #{@gross_amount.inspect}, paypal_fee: #{@paypal_fee.inspect},"\
142
+ " paypal_fee_in_receivable_currency: #{@paypal_fee_in_receivable_currency.inspect},"\
143
+ " net_amount: #{@net_amount.inspect}, receivable_amount: #{@receivable_amount.inspect},"\
144
+ " exchange_rate: #{@exchange_rate.inspect}, platform_fees: #{@platform_fees.inspect}>"
145
+ end
128
146
  end
129
147
  end