subfi_pay 0.1.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 (261) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +11 -0
  3. data/Gemfile.lock +101 -0
  4. data/README.md +188 -0
  5. data/Rakefile +10 -0
  6. data/bin/console +11 -0
  7. data/docs/AccessKey.md +32 -0
  8. data/docs/AccessKeysApi.md +228 -0
  9. data/docs/AccountAttributes.md +20 -0
  10. data/docs/AccountAttributesAccount.md +20 -0
  11. data/docs/AccountCreateRequest.md +18 -0
  12. data/docs/AccountResponse.md +26 -0
  13. data/docs/AccountsApi.md +227 -0
  14. data/docs/BalanceTransactionAttributes.md +30 -0
  15. data/docs/BalanceTransactionResponse.md +38 -0
  16. data/docs/BalanceTransactionsApi.md +87 -0
  17. data/docs/BankAccountProfile.md +28 -0
  18. data/docs/BillingAddress.md +36 -0
  19. data/docs/CardProfile.md +42 -0
  20. data/docs/ChargeAttributes.md +26 -0
  21. data/docs/ChargeResponse.md +42 -0
  22. data/docs/ChargesApi.md +167 -0
  23. data/docs/ConnectedAccountAttributes.md +20 -0
  24. data/docs/ConnectedAccountResponse.md +26 -0
  25. data/docs/CreateAccountRequest.md +18 -0
  26. data/docs/CreateAccountRequestAccount.md +20 -0
  27. data/docs/CreateCustomerRequest.md +24 -0
  28. data/docs/CreateWebhookEndpointRequest.md +18 -0
  29. data/docs/CreateWebhookEndpointRequestWebhookEndpoint.md +28 -0
  30. data/docs/Customer.md +26 -0
  31. data/docs/CustomerAttributes.md +24 -0
  32. data/docs/CustomerAttributesCustomer.md +24 -0
  33. data/docs/CustomerCreateRequest.md +18 -0
  34. data/docs/CustomerUpdateAttributes.md +20 -0
  35. data/docs/CustomerUpdateAttributesCustomer.md +20 -0
  36. data/docs/CustomerUpdateRequest.md +18 -0
  37. data/docs/CustomersApi.md +307 -0
  38. data/docs/Event.md +30 -0
  39. data/docs/EventsApi.md +159 -0
  40. data/docs/ListAccessKeysResponse.md +20 -0
  41. data/docs/ListAccountsResponse.md +20 -0
  42. data/docs/ListBalanceTransactionsResponse.md +20 -0
  43. data/docs/ListChargesResponse.md +20 -0
  44. data/docs/ListCustomersResponse.md +20 -0
  45. data/docs/ListEventsResponse.md +20 -0
  46. data/docs/ListPaymentIntentsResponse.md +20 -0
  47. data/docs/ListPaymentMethodsResponse.md +20 -0
  48. data/docs/ListRefundsResponse.md +20 -0
  49. data/docs/ListWebhookEndpointsResponse.md +20 -0
  50. data/docs/ListWebhookRequestsResponse.md +20 -0
  51. data/docs/Meta.md +28 -0
  52. data/docs/PaymentIntentAttributes.md +26 -0
  53. data/docs/PaymentIntentAttributesPaymentIntent.md +26 -0
  54. data/docs/PaymentIntentCreateRequest.md +18 -0
  55. data/docs/PaymentIntentResponse.md +30 -0
  56. data/docs/PaymentIntentUpdateAttributes.md +18 -0
  57. data/docs/PaymentIntentUpdateAttributesPaymentIntent.md +18 -0
  58. data/docs/PaymentIntentsApi.md +533 -0
  59. data/docs/PaymentMethodAttributes.md +24 -0
  60. data/docs/PaymentMethodResponse.md +36 -0
  61. data/docs/PaymentMethodsApi.md +239 -0
  62. data/docs/RefundAttributes.md +20 -0
  63. data/docs/RefundResponse.md +30 -0
  64. data/docs/RefundsApi.md +311 -0
  65. data/docs/RollAccessKeyAttributes.md +18 -0
  66. data/docs/RollAccessKeyAttributesAccessKey.md +18 -0
  67. data/docs/RollAccessKeyRequest.md +18 -0
  68. data/docs/RollAccessKeyRequestAccessKey.md +18 -0
  69. data/docs/SubscriptionAttributes.md +30 -0
  70. data/docs/SubscriptionAttributesSubscription.md +30 -0
  71. data/docs/SubscriptionCreateRequest.md +18 -0
  72. data/docs/SubscriptionCreateRequestSubscription.md +30 -0
  73. data/docs/SubscriptionResponse.md +36 -0
  74. data/docs/SubscriptionsApi.md +155 -0
  75. data/docs/WebhookEndpoint.md +34 -0
  76. data/docs/WebhookEndpointsApi.md +380 -0
  77. data/docs/WebhookRequest.md +38 -0
  78. data/docs/WebhookRequestsApi.md +85 -0
  79. data/git_push.sh +57 -0
  80. data/lib/subfi_pay/api/access_keys_api.rb +235 -0
  81. data/lib/subfi_pay/api/accounts_api.rb +231 -0
  82. data/lib/subfi_pay/api/balance_transactions_api.rb +100 -0
  83. data/lib/subfi_pay/api/charges_api.rb +181 -0
  84. data/lib/subfi_pay/api/customers_api.rb +331 -0
  85. data/lib/subfi_pay/api/events_api.rb +172 -0
  86. data/lib/subfi_pay/api/payment_intents_api.rb +566 -0
  87. data/lib/subfi_pay/api/payment_methods_api.rb +262 -0
  88. data/lib/subfi_pay/api/refunds_api.rb +334 -0
  89. data/lib/subfi_pay/api/subscriptions_api.rb +177 -0
  90. data/lib/subfi_pay/api/webhook_endpoints_api.rb +404 -0
  91. data/lib/subfi_pay/api/webhook_requests_api.rb +97 -0
  92. data/lib/subfi_pay/api_client.rb +394 -0
  93. data/lib/subfi_pay/api_error.rb +58 -0
  94. data/lib/subfi_pay/configuration.rb +305 -0
  95. data/lib/subfi_pay/models/access_key.rb +275 -0
  96. data/lib/subfi_pay/models/account_attributes.rb +221 -0
  97. data/lib/subfi_pay/models/account_attributes_account.rb +221 -0
  98. data/lib/subfi_pay/models/account_create_request.rb +212 -0
  99. data/lib/subfi_pay/models/account_response.rb +248 -0
  100. data/lib/subfi_pay/models/balance_transaction_attributes.rb +266 -0
  101. data/lib/subfi_pay/models/balance_transaction_response.rb +303 -0
  102. data/lib/subfi_pay/models/bank_account_profile.rb +257 -0
  103. data/lib/subfi_pay/models/billing_address.rb +294 -0
  104. data/lib/subfi_pay/models/card_profile.rb +324 -0
  105. data/lib/subfi_pay/models/charge_attributes.rb +265 -0
  106. data/lib/subfi_pay/models/charge_response.rb +326 -0
  107. data/lib/subfi_pay/models/connected_account_attributes.rb +235 -0
  108. data/lib/subfi_pay/models/connected_account_response.rb +248 -0
  109. data/lib/subfi_pay/models/create_account_request.rb +219 -0
  110. data/lib/subfi_pay/models/create_account_request_account.rb +221 -0
  111. data/lib/subfi_pay/models/create_customer_request.rb +239 -0
  112. data/lib/subfi_pay/models/create_webhook_endpoint_request.rb +212 -0
  113. data/lib/subfi_pay/models/create_webhook_endpoint_request_webhook_endpoint.rb +257 -0
  114. data/lib/subfi_pay/models/customer.rb +248 -0
  115. data/lib/subfi_pay/models/customer_attributes.rb +239 -0
  116. data/lib/subfi_pay/models/customer_attributes_customer.rb +239 -0
  117. data/lib/subfi_pay/models/customer_create_request.rb +212 -0
  118. data/lib/subfi_pay/models/customer_update_attributes.rb +221 -0
  119. data/lib/subfi_pay/models/customer_update_attributes_customer.rb +221 -0
  120. data/lib/subfi_pay/models/customer_update_request.rb +212 -0
  121. data/lib/subfi_pay/models/event.rb +266 -0
  122. data/lib/subfi_pay/models/list_access_keys_response.rb +223 -0
  123. data/lib/subfi_pay/models/list_accounts_response.rb +223 -0
  124. data/lib/subfi_pay/models/list_balance_transactions_response.rb +223 -0
  125. data/lib/subfi_pay/models/list_charges_response.rb +223 -0
  126. data/lib/subfi_pay/models/list_customers_response.rb +223 -0
  127. data/lib/subfi_pay/models/list_events_response.rb +223 -0
  128. data/lib/subfi_pay/models/list_payment_intents_response.rb +223 -0
  129. data/lib/subfi_pay/models/list_payment_methods_response.rb +223 -0
  130. data/lib/subfi_pay/models/list_refunds_response.rb +223 -0
  131. data/lib/subfi_pay/models/list_webhook_endpoints_response.rb +223 -0
  132. data/lib/subfi_pay/models/list_webhook_requests_response.rb +223 -0
  133. data/lib/subfi_pay/models/meta.rb +259 -0
  134. data/lib/subfi_pay/models/payment_intent_attributes.rb +257 -0
  135. data/lib/subfi_pay/models/payment_intent_attributes_payment_intent.rb +257 -0
  136. data/lib/subfi_pay/models/payment_intent_create_request.rb +212 -0
  137. data/lib/subfi_pay/models/payment_intent_response.rb +268 -0
  138. data/lib/subfi_pay/models/payment_intent_update_attributes.rb +212 -0
  139. data/lib/subfi_pay/models/payment_intent_update_attributes_payment_intent.rb +214 -0
  140. data/lib/subfi_pay/models/payment_method_attributes.rb +246 -0
  141. data/lib/subfi_pay/models/payment_method_response.rb +296 -0
  142. data/lib/subfi_pay/models/refund_attributes.rb +228 -0
  143. data/lib/subfi_pay/models/refund_response.rb +268 -0
  144. data/lib/subfi_pay/models/roll_access_key_attributes.rb +212 -0
  145. data/lib/subfi_pay/models/roll_access_key_attributes_access_key.rb +219 -0
  146. data/lib/subfi_pay/models/roll_access_key_request.rb +212 -0
  147. data/lib/subfi_pay/models/roll_access_key_request_access_key.rb +219 -0
  148. data/lib/subfi_pay/models/subscription_attributes.rb +266 -0
  149. data/lib/subfi_pay/models/subscription_attributes_subscription.rb +266 -0
  150. data/lib/subfi_pay/models/subscription_create_request.rb +212 -0
  151. data/lib/subfi_pay/models/subscription_create_request_subscription.rb +266 -0
  152. data/lib/subfi_pay/models/subscription_response.rb +293 -0
  153. data/lib/subfi_pay/models/webhook_endpoint.rb +284 -0
  154. data/lib/subfi_pay/models/webhook_request.rb +302 -0
  155. data/lib/subfi_pay/version.rb +15 -0
  156. data/lib/subfi_pay.rb +99 -0
  157. data/run_fix_gemfile.sh +11 -0
  158. data/spec/api/access_keys_api_spec.rb +138 -0
  159. data/spec/api/accounts_api_spec.rb +145 -0
  160. data/spec/api/balance_transactions_api_spec.rb +86 -0
  161. data/spec/api/charges_api_spec.rb +121 -0
  162. data/spec/api/customers_api_spec.rb +134 -0
  163. data/spec/api/events_api_spec.rb +105 -0
  164. data/spec/api/payment_intents_api_spec.rb +250 -0
  165. data/spec/api/payment_methods_api_spec.rb +226 -0
  166. data/spec/api/refunds_api_spec.rb +158 -0
  167. data/spec/api/subscriptions_api_spec.rb +113 -0
  168. data/spec/api/webhook_endpoints_api_spec.rb +198 -0
  169. data/spec/api/webhook_requests_api_spec.rb +79 -0
  170. data/spec/configuration_spec.rb +23 -0
  171. data/spec/fixtures/access_keys/list_200.json +1 -0
  172. data/spec/fixtures/access_keys/roll_200.json +1 -0
  173. data/spec/fixtures/accounts/create_201.json +1 -0
  174. data/spec/fixtures/accounts/list_200.json +1 -0
  175. data/spec/fixtures/accounts/show_200.json +1 -0
  176. data/spec/fixtures/balance_transactions/list_200.json +69 -0
  177. data/spec/fixtures/charges/create_201.json +39 -0
  178. data/spec/fixtures/charges/list_200.json +1 -0
  179. data/spec/fixtures/charges/retrieve_200.json +1 -0
  180. data/spec/fixtures/customers/create_201.json +1 -0
  181. data/spec/fixtures/customers/list_200.json +1 -0
  182. data/spec/fixtures/customers/show_200.json +1 -0
  183. data/spec/fixtures/events/list_200.json +1 -0
  184. data/spec/fixtures/events/show_200.json +1 -0
  185. data/spec/fixtures/payment_intents/cancel_200.json +1 -0
  186. data/spec/fixtures/payment_intents/capture_200.json +1 -0
  187. data/spec/fixtures/payment_intents/confirm_200.json +1 -0
  188. data/spec/fixtures/payment_intents/create_201.json +1 -0
  189. data/spec/fixtures/payment_intents/fetch_200.json +1 -0
  190. data/spec/fixtures/payment_intents/list_200.json +1 -0
  191. data/spec/fixtures/payment_intents/update_200.json +1 -0
  192. data/spec/fixtures/payment_methods/create_bank_account_201.json +1 -0
  193. data/spec/fixtures/payment_methods/create_card_201.json +1 -0
  194. data/spec/fixtures/payment_methods/get_bank_account_200.json +29 -0
  195. data/spec/fixtures/payment_methods/get_card_200.json +1 -0
  196. data/spec/fixtures/payment_methods/list_200.json +1 -0
  197. data/spec/fixtures/refunds/create_201.json +1 -0
  198. data/spec/fixtures/refunds/list_200.json +1 -0
  199. data/spec/fixtures/refunds/show_200.json +1 -0
  200. data/spec/fixtures/subscriptions/create_201.json +1 -0
  201. data/spec/fixtures/subscriptions/show_200.json +1 -0
  202. data/spec/fixtures/webhook_endpoints/create_201.json +11 -0
  203. data/spec/fixtures/webhook_endpoints/list_200.json +1 -0
  204. data/spec/fixtures/webhook_endpoints/show_200.json +1 -0
  205. data/spec/fixtures/webhook_endpoints/update_200.json +13 -0
  206. data/spec/fixtures/webhook_requests/list_200.json +1 -0
  207. data/spec/models/access_key_spec.rb +39 -0
  208. data/spec/models/account_attributes_spec.rb +40 -0
  209. data/spec/models/account_create_request_spec.rb +38 -0
  210. data/spec/models/account_response_spec.rb +39 -0
  211. data/spec/models/balance_transaction_response_spec.rb +38 -0
  212. data/spec/models/bank_account_profile_spec.rb +38 -0
  213. data/spec/models/billing_address_spec.rb +38 -0
  214. data/spec/models/card_profile_spec.rb +38 -0
  215. data/spec/models/charge_attributes_spec.rb +45 -0
  216. data/spec/models/charge_response_spec.rb +45 -0
  217. data/spec/models/connected_account_attributes_spec.rb +38 -0
  218. data/spec/models/connected_account_response_spec.rb +39 -0
  219. data/spec/models/create_account_request_account_spec.rb +39 -0
  220. data/spec/models/create_account_request_spec.rb +39 -0
  221. data/spec/models/create_webhook_endpoint_request_spec.rb +38 -0
  222. data/spec/models/create_webhook_endpoint_request_webhook_endpoint_spec.rb +38 -0
  223. data/spec/models/customer_attributes_spec.rb +40 -0
  224. data/spec/models/customer_create_request_spec.rb +38 -0
  225. data/spec/models/customer_spec.rb +39 -0
  226. data/spec/models/customer_update_attributes_spec.rb +39 -0
  227. data/spec/models/customer_update_request_spec.rb +39 -0
  228. data/spec/models/event_spec.rb +39 -0
  229. data/spec/models/list_access_keys_response_spec.rb +38 -0
  230. data/spec/models/list_accounts_response_spec.rb +38 -0
  231. data/spec/models/list_balance_transactions_response_spec.rb +38 -0
  232. data/spec/models/list_charges_response_spec.rb +38 -0
  233. data/spec/models/list_customers_response_spec.rb +39 -0
  234. data/spec/models/list_events_response_spec.rb +38 -0
  235. data/spec/models/list_payment_intents_response_spec.rb +45 -0
  236. data/spec/models/list_payment_methods_response_spec.rb +39 -0
  237. data/spec/models/list_refunds_response_spec.rb +38 -0
  238. data/spec/models/list_webhook_endpoints_response_spec.rb +38 -0
  239. data/spec/models/list_webhook_requests_response_spec.rb +39 -0
  240. data/spec/models/meta_spec.rb +38 -0
  241. data/spec/models/payment_intent_attributes_spec.rb +44 -0
  242. data/spec/models/payment_intent_create_request_spec.rb +38 -0
  243. data/spec/models/payment_intent_response_spec.rb +45 -0
  244. data/spec/models/payment_intent_update_attributes_payment_intent_spec.rb +38 -0
  245. data/spec/models/payment_intent_update_attributes_spec.rb +37 -0
  246. data/spec/models/payment_method_attributes_spec.rb +38 -0
  247. data/spec/models/payment_method_response_spec.rb +38 -0
  248. data/spec/models/refund_attributes_spec.rb +39 -0
  249. data/spec/models/refund_response_spec.rb +38 -0
  250. data/spec/models/roll_access_key_attributes_access_key_spec.rb +39 -0
  251. data/spec/models/roll_access_key_attributes_spec.rb +40 -0
  252. data/spec/models/roll_access_key_request_access_key_spec.rb +38 -0
  253. data/spec/models/roll_access_key_request_spec.rb +37 -0
  254. data/spec/models/subscription_attributes_spec.rb +38 -0
  255. data/spec/models/subscription_create_request_spec.rb +40 -0
  256. data/spec/models/subscription_response_spec.rb +38 -0
  257. data/spec/models/webhook_endpoint_spec.rb +40 -0
  258. data/spec/models/webhook_request_spec.rb +40 -0
  259. data/spec/spec_helper.rb +123 -0
  260. data/subfi_pay.gemspec +39 -0
  261. metadata +444 -0
@@ -0,0 +1,262 @@
1
+ =begin
2
+ #SubFi Pay API
3
+
4
+ #API for SubFi Pay services
5
+
6
+ The version of the OpenAPI document: 0.1.0
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.7.0
10
+
11
+ =end
12
+
13
+ require 'cgi'
14
+
15
+ module SubFiPay
16
+ class PaymentMethodsApi
17
+ attr_accessor :api_client
18
+
19
+ def initialize(api_client = ApiClient.default)
20
+ @api_client = api_client
21
+ end
22
+ # Create a payment method
23
+ # @param x_api_version [String]
24
+ # @param x_account_id [String]
25
+ # @param payment_method_attributes [PaymentMethodAttributes]
26
+ # @param [Hash] opts the optional parameters
27
+ # @option opts [String] :x_idempotency_key
28
+ # @return [PaymentMethodResponse]
29
+ def create_payment_method(x_api_version, x_account_id, payment_method_attributes, opts = {})
30
+ data, _status_code, _headers = create_payment_method_with_http_info(x_api_version, x_account_id, payment_method_attributes, opts)
31
+ data
32
+ end
33
+
34
+ # Create a payment method
35
+ # @param x_api_version [String]
36
+ # @param x_account_id [String]
37
+ # @param payment_method_attributes [PaymentMethodAttributes]
38
+ # @param [Hash] opts the optional parameters
39
+ # @option opts [String] :x_idempotency_key
40
+ # @return [Array<(PaymentMethodResponse, Integer, Hash)>] PaymentMethodResponse data, response status code and response headers
41
+ def create_payment_method_with_http_info(x_api_version, x_account_id, payment_method_attributes, opts = {})
42
+ if @api_client.config.debugging
43
+ @api_client.config.logger.debug 'Calling API: PaymentMethodsApi.create_payment_method ...'
44
+ end
45
+ # verify the required parameter 'x_api_version' is set
46
+ if @api_client.config.client_side_validation && x_api_version.nil?
47
+ fail ArgumentError, "Missing the required parameter 'x_api_version' when calling PaymentMethodsApi.create_payment_method"
48
+ end
49
+ # verify the required parameter 'x_account_id' is set
50
+ if @api_client.config.client_side_validation && x_account_id.nil?
51
+ fail ArgumentError, "Missing the required parameter 'x_account_id' when calling PaymentMethodsApi.create_payment_method"
52
+ end
53
+ # verify the required parameter 'payment_method_attributes' is set
54
+ if @api_client.config.client_side_validation && payment_method_attributes.nil?
55
+ fail ArgumentError, "Missing the required parameter 'payment_method_attributes' when calling PaymentMethodsApi.create_payment_method"
56
+ end
57
+ # resource path
58
+ local_var_path = '/payment_methods'
59
+
60
+ # query parameters
61
+ query_params = opts[:query_params] || {}
62
+
63
+ # header parameters
64
+ header_params = opts[:header_params] || {}
65
+ # HTTP header 'Accept' (if needed)
66
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
67
+ # HTTP header 'Content-Type'
68
+ content_type = @api_client.select_header_content_type(['application/json'])
69
+ if !content_type.nil?
70
+ header_params['Content-Type'] = content_type
71
+ end
72
+ header_params[:'X-Api-Version'] = x_api_version
73
+ header_params[:'X-Account-Id'] = x_account_id
74
+ header_params[:'X-Idempotency-Key'] = opts[:'x_idempotency_key'] if !opts[:'x_idempotency_key'].nil?
75
+
76
+ # form parameters
77
+ form_params = opts[:form_params] || {}
78
+
79
+ # http body (model)
80
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(payment_method_attributes)
81
+
82
+ # return_type
83
+ return_type = opts[:debug_return_type] || 'PaymentMethodResponse'
84
+
85
+ # auth_names
86
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth']
87
+
88
+ new_options = opts.merge(
89
+ :operation => :"PaymentMethodsApi.create_payment_method",
90
+ :header_params => header_params,
91
+ :query_params => query_params,
92
+ :form_params => form_params,
93
+ :body => post_body,
94
+ :auth_names => auth_names,
95
+ :return_type => return_type
96
+ )
97
+
98
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
99
+ if @api_client.config.debugging
100
+ @api_client.config.logger.debug "API called: PaymentMethodsApi#create_payment_method\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
101
+ end
102
+ return data, status_code, headers
103
+ end
104
+
105
+ # Retrieve a payment method
106
+ # @param x_api_version [String]
107
+ # @param x_account_id [String]
108
+ # @param id [String]
109
+ # @param [Hash] opts the optional parameters
110
+ # @return [PaymentMethodResponse]
111
+ def get_payment_method(x_api_version, x_account_id, id, opts = {})
112
+ data, _status_code, _headers = get_payment_method_with_http_info(x_api_version, x_account_id, id, opts)
113
+ data
114
+ end
115
+
116
+ # Retrieve a payment method
117
+ # @param x_api_version [String]
118
+ # @param x_account_id [String]
119
+ # @param id [String]
120
+ # @param [Hash] opts the optional parameters
121
+ # @return [Array<(PaymentMethodResponse, Integer, Hash)>] PaymentMethodResponse data, response status code and response headers
122
+ def get_payment_method_with_http_info(x_api_version, x_account_id, id, opts = {})
123
+ if @api_client.config.debugging
124
+ @api_client.config.logger.debug 'Calling API: PaymentMethodsApi.get_payment_method ...'
125
+ end
126
+ # verify the required parameter 'x_api_version' is set
127
+ if @api_client.config.client_side_validation && x_api_version.nil?
128
+ fail ArgumentError, "Missing the required parameter 'x_api_version' when calling PaymentMethodsApi.get_payment_method"
129
+ end
130
+ # verify the required parameter 'x_account_id' is set
131
+ if @api_client.config.client_side_validation && x_account_id.nil?
132
+ fail ArgumentError, "Missing the required parameter 'x_account_id' when calling PaymentMethodsApi.get_payment_method"
133
+ end
134
+ # verify the required parameter 'id' is set
135
+ if @api_client.config.client_side_validation && id.nil?
136
+ fail ArgumentError, "Missing the required parameter 'id' when calling PaymentMethodsApi.get_payment_method"
137
+ end
138
+ # resource path
139
+ local_var_path = '/payment_methods/{id}'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
140
+
141
+ # query parameters
142
+ query_params = opts[:query_params] || {}
143
+
144
+ # header parameters
145
+ header_params = opts[:header_params] || {}
146
+ # HTTP header 'Accept' (if needed)
147
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
148
+ header_params[:'X-Api-Version'] = x_api_version
149
+ header_params[:'X-Account-Id'] = x_account_id
150
+
151
+ # form parameters
152
+ form_params = opts[:form_params] || {}
153
+
154
+ # http body (model)
155
+ post_body = opts[:debug_body]
156
+
157
+ # return_type
158
+ return_type = opts[:debug_return_type] || 'PaymentMethodResponse'
159
+
160
+ # auth_names
161
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth']
162
+
163
+ new_options = opts.merge(
164
+ :operation => :"PaymentMethodsApi.get_payment_method",
165
+ :header_params => header_params,
166
+ :query_params => query_params,
167
+ :form_params => form_params,
168
+ :body => post_body,
169
+ :auth_names => auth_names,
170
+ :return_type => return_type
171
+ )
172
+
173
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
174
+ if @api_client.config.debugging
175
+ @api_client.config.logger.debug "API called: PaymentMethodsApi#get_payment_method\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
176
+ end
177
+ return data, status_code, headers
178
+ end
179
+
180
+ # List all payment methods
181
+ # @param x_api_version [String]
182
+ # @param x_account_id [String]
183
+ # @param customer_id [String] The ID of the customer to filter payment methods by.
184
+ # @param [Hash] opts the optional parameters
185
+ # @option opts [Integer] :page The page of results to retrieve.
186
+ # @option opts [Integer] :per_page Number of results per page.
187
+ # @return [ListPaymentMethodsResponse]
188
+ def list_payment_methods(x_api_version, x_account_id, customer_id, opts = {})
189
+ data, _status_code, _headers = list_payment_methods_with_http_info(x_api_version, x_account_id, customer_id, opts)
190
+ data
191
+ end
192
+
193
+ # List all payment methods
194
+ # @param x_api_version [String]
195
+ # @param x_account_id [String]
196
+ # @param customer_id [String] The ID of the customer to filter payment methods by.
197
+ # @param [Hash] opts the optional parameters
198
+ # @option opts [Integer] :page The page of results to retrieve.
199
+ # @option opts [Integer] :per_page Number of results per page.
200
+ # @return [Array<(ListPaymentMethodsResponse, Integer, Hash)>] ListPaymentMethodsResponse data, response status code and response headers
201
+ def list_payment_methods_with_http_info(x_api_version, x_account_id, customer_id, opts = {})
202
+ if @api_client.config.debugging
203
+ @api_client.config.logger.debug 'Calling API: PaymentMethodsApi.list_payment_methods ...'
204
+ end
205
+ # verify the required parameter 'x_api_version' is set
206
+ if @api_client.config.client_side_validation && x_api_version.nil?
207
+ fail ArgumentError, "Missing the required parameter 'x_api_version' when calling PaymentMethodsApi.list_payment_methods"
208
+ end
209
+ # verify the required parameter 'x_account_id' is set
210
+ if @api_client.config.client_side_validation && x_account_id.nil?
211
+ fail ArgumentError, "Missing the required parameter 'x_account_id' when calling PaymentMethodsApi.list_payment_methods"
212
+ end
213
+ # verify the required parameter 'customer_id' is set
214
+ if @api_client.config.client_side_validation && customer_id.nil?
215
+ fail ArgumentError, "Missing the required parameter 'customer_id' when calling PaymentMethodsApi.list_payment_methods"
216
+ end
217
+ # resource path
218
+ local_var_path = '/payment_methods'
219
+
220
+ # query parameters
221
+ query_params = opts[:query_params] || {}
222
+ query_params[:'customer_id'] = customer_id
223
+ query_params[:'page'] = opts[:'page'] if !opts[:'page'].nil?
224
+ query_params[:'per_page'] = opts[:'per_page'] if !opts[:'per_page'].nil?
225
+
226
+ # header parameters
227
+ header_params = opts[:header_params] || {}
228
+ # HTTP header 'Accept' (if needed)
229
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
230
+ header_params[:'X-Api-Version'] = x_api_version
231
+ header_params[:'X-Account-Id'] = x_account_id
232
+
233
+ # form parameters
234
+ form_params = opts[:form_params] || {}
235
+
236
+ # http body (model)
237
+ post_body = opts[:debug_body]
238
+
239
+ # return_type
240
+ return_type = opts[:debug_return_type] || 'ListPaymentMethodsResponse'
241
+
242
+ # auth_names
243
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth']
244
+
245
+ new_options = opts.merge(
246
+ :operation => :"PaymentMethodsApi.list_payment_methods",
247
+ :header_params => header_params,
248
+ :query_params => query_params,
249
+ :form_params => form_params,
250
+ :body => post_body,
251
+ :auth_names => auth_names,
252
+ :return_type => return_type
253
+ )
254
+
255
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
256
+ if @api_client.config.debugging
257
+ @api_client.config.logger.debug "API called: PaymentMethodsApi#list_payment_methods\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
258
+ end
259
+ return data, status_code, headers
260
+ end
261
+ end
262
+ end
@@ -0,0 +1,334 @@
1
+ =begin
2
+ #SubFi Pay API
3
+
4
+ #API for SubFi Pay services
5
+
6
+ The version of the OpenAPI document: 0.1.0
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.7.0
10
+
11
+ =end
12
+
13
+ require 'cgi'
14
+
15
+ module SubFiPay
16
+ class RefundsApi
17
+ attr_accessor :api_client
18
+
19
+ def initialize(api_client = ApiClient.default)
20
+ @api_client = api_client
21
+ end
22
+ # Cancel a refund
23
+ # @param x_api_version [String]
24
+ # @param x_account_id [String]
25
+ # @param id [String] The ID of the refund to cancel.
26
+ # @param [Hash] opts the optional parameters
27
+ # @return [RefundResponse]
28
+ def cancel_refund(x_api_version, x_account_id, id, opts = {})
29
+ data, _status_code, _headers = cancel_refund_with_http_info(x_api_version, x_account_id, id, opts)
30
+ data
31
+ end
32
+
33
+ # Cancel a refund
34
+ # @param x_api_version [String]
35
+ # @param x_account_id [String]
36
+ # @param id [String] The ID of the refund to cancel.
37
+ # @param [Hash] opts the optional parameters
38
+ # @return [Array<(RefundResponse, Integer, Hash)>] RefundResponse data, response status code and response headers
39
+ def cancel_refund_with_http_info(x_api_version, x_account_id, id, opts = {})
40
+ if @api_client.config.debugging
41
+ @api_client.config.logger.debug 'Calling API: RefundsApi.cancel_refund ...'
42
+ end
43
+ # verify the required parameter 'x_api_version' is set
44
+ if @api_client.config.client_side_validation && x_api_version.nil?
45
+ fail ArgumentError, "Missing the required parameter 'x_api_version' when calling RefundsApi.cancel_refund"
46
+ end
47
+ # verify the required parameter 'x_account_id' is set
48
+ if @api_client.config.client_side_validation && x_account_id.nil?
49
+ fail ArgumentError, "Missing the required parameter 'x_account_id' when calling RefundsApi.cancel_refund"
50
+ end
51
+ # verify the required parameter 'id' is set
52
+ if @api_client.config.client_side_validation && id.nil?
53
+ fail ArgumentError, "Missing the required parameter 'id' when calling RefundsApi.cancel_refund"
54
+ end
55
+ # resource path
56
+ local_var_path = '/refunds/{id}/cancel'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
57
+
58
+ # query parameters
59
+ query_params = opts[:query_params] || {}
60
+
61
+ # header parameters
62
+ header_params = opts[:header_params] || {}
63
+ # HTTP header 'Accept' (if needed)
64
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
65
+ header_params[:'X-Api-Version'] = x_api_version
66
+ header_params[:'X-Account-Id'] = x_account_id
67
+
68
+ # form parameters
69
+ form_params = opts[:form_params] || {}
70
+
71
+ # http body (model)
72
+ post_body = opts[:debug_body]
73
+
74
+ # return_type
75
+ return_type = opts[:debug_return_type] || 'RefundResponse'
76
+
77
+ # auth_names
78
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth']
79
+
80
+ new_options = opts.merge(
81
+ :operation => :"RefundsApi.cancel_refund",
82
+ :header_params => header_params,
83
+ :query_params => query_params,
84
+ :form_params => form_params,
85
+ :body => post_body,
86
+ :auth_names => auth_names,
87
+ :return_type => return_type
88
+ )
89
+
90
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options)
91
+ if @api_client.config.debugging
92
+ @api_client.config.logger.debug "API called: RefundsApi#cancel_refund\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
93
+ end
94
+ return data, status_code, headers
95
+ end
96
+
97
+ # Create a refund
98
+ # @param x_api_version [String]
99
+ # @param x_account_id [String]
100
+ # @param refund_attributes [RefundAttributes]
101
+ # @param [Hash] opts the optional parameters
102
+ # @option opts [String] :x_idempotency_key
103
+ # @return [RefundResponse]
104
+ def create_refund(x_api_version, x_account_id, refund_attributes, opts = {})
105
+ data, _status_code, _headers = create_refund_with_http_info(x_api_version, x_account_id, refund_attributes, opts)
106
+ data
107
+ end
108
+
109
+ # Create a refund
110
+ # @param x_api_version [String]
111
+ # @param x_account_id [String]
112
+ # @param refund_attributes [RefundAttributes]
113
+ # @param [Hash] opts the optional parameters
114
+ # @option opts [String] :x_idempotency_key
115
+ # @return [Array<(RefundResponse, Integer, Hash)>] RefundResponse data, response status code and response headers
116
+ def create_refund_with_http_info(x_api_version, x_account_id, refund_attributes, opts = {})
117
+ if @api_client.config.debugging
118
+ @api_client.config.logger.debug 'Calling API: RefundsApi.create_refund ...'
119
+ end
120
+ # verify the required parameter 'x_api_version' is set
121
+ if @api_client.config.client_side_validation && x_api_version.nil?
122
+ fail ArgumentError, "Missing the required parameter 'x_api_version' when calling RefundsApi.create_refund"
123
+ end
124
+ # verify the required parameter 'x_account_id' is set
125
+ if @api_client.config.client_side_validation && x_account_id.nil?
126
+ fail ArgumentError, "Missing the required parameter 'x_account_id' when calling RefundsApi.create_refund"
127
+ end
128
+ # verify the required parameter 'refund_attributes' is set
129
+ if @api_client.config.client_side_validation && refund_attributes.nil?
130
+ fail ArgumentError, "Missing the required parameter 'refund_attributes' when calling RefundsApi.create_refund"
131
+ end
132
+ # resource path
133
+ local_var_path = '/refunds'
134
+
135
+ # query parameters
136
+ query_params = opts[:query_params] || {}
137
+
138
+ # header parameters
139
+ header_params = opts[:header_params] || {}
140
+ # HTTP header 'Accept' (if needed)
141
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
142
+ # HTTP header 'Content-Type'
143
+ content_type = @api_client.select_header_content_type(['application/json'])
144
+ if !content_type.nil?
145
+ header_params['Content-Type'] = content_type
146
+ end
147
+ header_params[:'X-Api-Version'] = x_api_version
148
+ header_params[:'X-Account-Id'] = x_account_id
149
+ header_params[:'X-Idempotency-Key'] = opts[:'x_idempotency_key'] if !opts[:'x_idempotency_key'].nil?
150
+
151
+ # form parameters
152
+ form_params = opts[:form_params] || {}
153
+
154
+ # http body (model)
155
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(refund_attributes)
156
+
157
+ # return_type
158
+ return_type = opts[:debug_return_type] || 'RefundResponse'
159
+
160
+ # auth_names
161
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth']
162
+
163
+ new_options = opts.merge(
164
+ :operation => :"RefundsApi.create_refund",
165
+ :header_params => header_params,
166
+ :query_params => query_params,
167
+ :form_params => form_params,
168
+ :body => post_body,
169
+ :auth_names => auth_names,
170
+ :return_type => return_type
171
+ )
172
+
173
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
174
+ if @api_client.config.debugging
175
+ @api_client.config.logger.debug "API called: RefundsApi#create_refund\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
176
+ end
177
+ return data, status_code, headers
178
+ end
179
+
180
+ # Get a refund by ID
181
+ # @param x_api_version [String]
182
+ # @param x_account_id [String]
183
+ # @param id [String] The ID of the refund to retrieve.
184
+ # @param [Hash] opts the optional parameters
185
+ # @option opts [String] :connected_account_id Filter results by sub_merchant ID.
186
+ # @return [RefundResponse]
187
+ def get_refund(x_api_version, x_account_id, id, opts = {})
188
+ data, _status_code, _headers = get_refund_with_http_info(x_api_version, x_account_id, id, opts)
189
+ data
190
+ end
191
+
192
+ # Get a refund by ID
193
+ # @param x_api_version [String]
194
+ # @param x_account_id [String]
195
+ # @param id [String] The ID of the refund to retrieve.
196
+ # @param [Hash] opts the optional parameters
197
+ # @option opts [String] :connected_account_id Filter results by sub_merchant ID.
198
+ # @return [Array<(RefundResponse, Integer, Hash)>] RefundResponse data, response status code and response headers
199
+ def get_refund_with_http_info(x_api_version, x_account_id, id, opts = {})
200
+ if @api_client.config.debugging
201
+ @api_client.config.logger.debug 'Calling API: RefundsApi.get_refund ...'
202
+ end
203
+ # verify the required parameter 'x_api_version' is set
204
+ if @api_client.config.client_side_validation && x_api_version.nil?
205
+ fail ArgumentError, "Missing the required parameter 'x_api_version' when calling RefundsApi.get_refund"
206
+ end
207
+ # verify the required parameter 'x_account_id' is set
208
+ if @api_client.config.client_side_validation && x_account_id.nil?
209
+ fail ArgumentError, "Missing the required parameter 'x_account_id' when calling RefundsApi.get_refund"
210
+ end
211
+ # verify the required parameter 'id' is set
212
+ if @api_client.config.client_side_validation && id.nil?
213
+ fail ArgumentError, "Missing the required parameter 'id' when calling RefundsApi.get_refund"
214
+ end
215
+ # resource path
216
+ local_var_path = '/refunds/{id}'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
217
+
218
+ # query parameters
219
+ query_params = opts[:query_params] || {}
220
+ query_params[:'connected_account_id'] = opts[:'connected_account_id'] if !opts[:'connected_account_id'].nil?
221
+
222
+ # header parameters
223
+ header_params = opts[:header_params] || {}
224
+ # HTTP header 'Accept' (if needed)
225
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
226
+ header_params[:'X-Api-Version'] = x_api_version
227
+ header_params[:'X-Account-Id'] = x_account_id
228
+
229
+ # form parameters
230
+ form_params = opts[:form_params] || {}
231
+
232
+ # http body (model)
233
+ post_body = opts[:debug_body]
234
+
235
+ # return_type
236
+ return_type = opts[:debug_return_type] || 'RefundResponse'
237
+
238
+ # auth_names
239
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth']
240
+
241
+ new_options = opts.merge(
242
+ :operation => :"RefundsApi.get_refund",
243
+ :header_params => header_params,
244
+ :query_params => query_params,
245
+ :form_params => form_params,
246
+ :body => post_body,
247
+ :auth_names => auth_names,
248
+ :return_type => return_type
249
+ )
250
+
251
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
252
+ if @api_client.config.debugging
253
+ @api_client.config.logger.debug "API called: RefundsApi#get_refund\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
254
+ end
255
+ return data, status_code, headers
256
+ end
257
+
258
+ # List refunds for a Charge
259
+ # @param x_api_version [String]
260
+ # @param x_account_id [String]
261
+ # @param charge_id [String] The ID of the charge to which this refund belongs.
262
+ # @param [Hash] opts the optional parameters
263
+ # @return [ListRefundsResponse]
264
+ def list_refunds(x_api_version, x_account_id, charge_id, opts = {})
265
+ data, _status_code, _headers = list_refunds_with_http_info(x_api_version, x_account_id, charge_id, opts)
266
+ data
267
+ end
268
+
269
+ # List refunds for a Charge
270
+ # @param x_api_version [String]
271
+ # @param x_account_id [String]
272
+ # @param charge_id [String] The ID of the charge to which this refund belongs.
273
+ # @param [Hash] opts the optional parameters
274
+ # @return [Array<(ListRefundsResponse, Integer, Hash)>] ListRefundsResponse data, response status code and response headers
275
+ def list_refunds_with_http_info(x_api_version, x_account_id, charge_id, opts = {})
276
+ if @api_client.config.debugging
277
+ @api_client.config.logger.debug 'Calling API: RefundsApi.list_refunds ...'
278
+ end
279
+ # verify the required parameter 'x_api_version' is set
280
+ if @api_client.config.client_side_validation && x_api_version.nil?
281
+ fail ArgumentError, "Missing the required parameter 'x_api_version' when calling RefundsApi.list_refunds"
282
+ end
283
+ # verify the required parameter 'x_account_id' is set
284
+ if @api_client.config.client_side_validation && x_account_id.nil?
285
+ fail ArgumentError, "Missing the required parameter 'x_account_id' when calling RefundsApi.list_refunds"
286
+ end
287
+ # verify the required parameter 'charge_id' is set
288
+ if @api_client.config.client_side_validation && charge_id.nil?
289
+ fail ArgumentError, "Missing the required parameter 'charge_id' when calling RefundsApi.list_refunds"
290
+ end
291
+ # resource path
292
+ local_var_path = '/refunds'
293
+
294
+ # query parameters
295
+ query_params = opts[:query_params] || {}
296
+ query_params[:'charge_id'] = charge_id
297
+
298
+ # header parameters
299
+ header_params = opts[:header_params] || {}
300
+ # HTTP header 'Accept' (if needed)
301
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
302
+ header_params[:'X-Api-Version'] = x_api_version
303
+ header_params[:'X-Account-Id'] = x_account_id
304
+
305
+ # form parameters
306
+ form_params = opts[:form_params] || {}
307
+
308
+ # http body (model)
309
+ post_body = opts[:debug_body]
310
+
311
+ # return_type
312
+ return_type = opts[:debug_return_type] || 'ListRefundsResponse'
313
+
314
+ # auth_names
315
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth']
316
+
317
+ new_options = opts.merge(
318
+ :operation => :"RefundsApi.list_refunds",
319
+ :header_params => header_params,
320
+ :query_params => query_params,
321
+ :form_params => form_params,
322
+ :body => post_body,
323
+ :auth_names => auth_names,
324
+ :return_type => return_type
325
+ )
326
+
327
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
328
+ if @api_client.config.debugging
329
+ @api_client.config.logger.debug "API called: RefundsApi#list_refunds\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
330
+ end
331
+ return data, status_code, headers
332
+ end
333
+ end
334
+ end