class SquareConnect::TransactionsApi
Attributes
Public Class Methods
# File lib/square_connect/api/transactions_api.rb, line 16 def initialize(api_client = ApiClient.default) @api_client = api_client end
Public Instance Methods
CaptureTransaction Captures a transaction that was created with the [Charge](endpoint-transactions-charge) endpoint with a `delay_capture` value of `true`. See the [Delay Capture of Funds](/transactions-api/cookbook/delay-capture) recipe for more information. @param location_id @param transaction_id @param [Hash] opts the optional parameters @return [CaptureTransactionResponse]
# File lib/square_connect/api/transactions_api.rb, line 26 def capture_transaction(location_id, transaction_id, opts = {}) data, _status_code, _headers = capture_transaction_with_http_info(location_id, transaction_id, opts) return data end
CaptureTransaction Captures a transaction that was created with the [Charge](endpoint-transactions-charge) endpoint with a `delay_capture` value of `true`. See the [Delay Capture of Funds](/transactions-api/cookbook/delay-capture) recipe for more information. @param location_id @param transaction_id @param [Hash] opts the optional parameters @return [Array<(CaptureTransactionResponse
, Fixnum, Hash)>] CaptureTransactionResponse
data, response status code and response headers
# File lib/square_connect/api/transactions_api.rb, line 37 def capture_transaction_with_http_info(location_id, transaction_id, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: TransactionsApi.capture_transaction ..." end # verify the required parameter 'location_id' is set fail ArgumentError, "Missing the required parameter 'location_id' when calling TransactionsApi.capture_transaction" if location_id.nil? # verify the required parameter 'transaction_id' is set fail ArgumentError, "Missing the required parameter 'transaction_id' when calling TransactionsApi.capture_transaction" if transaction_id.nil? # resource path local_var_path = "/v2/locations/{location_id}/transactions/{transaction_id}/capture".sub('{format}','json').sub('{' + 'location_id' + '}', location_id.to_s).sub('{' + 'transaction_id' + '}', transaction_id.to_s) # query parameters query_params = {} # header parameters header_params = {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['application/json']) # HTTP header 'Content-Type' header_params['Content-Type'] = @api_client.select_header_content_type(['application/json']) header_params['Square-Version'] = "2019-06-12" # form parameters form_params = {} # http body (model) post_body = nil auth_names = ['oauth2'] data, status_code, headers = @api_client.call_api(:POST, local_var_path, :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => 'CaptureTransactionResponse') if @api_client.config.debugging @api_client.config.logger.debug "API called: TransactionsApi#capture_transaction\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end
Charge Charges a card represented by a card nonce or a customer's card on file. Your request to this endpoint must include either: - A value for the `card_nonce` parameter (to charge a card nonce generated with the `SqPaymentForm`) - Values for the `customer_card_id` and `customer_id` parameters (to charge a customer's card on file) When this response is returned, the amount of Square's processing fee might not yet be calculated. To obtain the processing fee, wait about ten seconds and call [RetrieveTransaction](endpoint-transactions-retrievetransaction). See the `processing_fee_money` field of each [Tender included](type-tender) in the transaction. @param location_id The ID of the location to associate the created transaction with. @param body An object containing the fields to POST for the request. See the corresponding object definition for field details. @param [Hash] opts the optional parameters @return [ChargeResponse]
# File lib/square_connect/api/transactions_api.rb, line 85 def charge(location_id, body, opts = {}) data, _status_code, _headers = charge_with_http_info(location_id, body, opts) return data end
Charge Charges a card represented by a card nonce or a customer's card on file. Your request to this endpoint must include either: - A value for the `card_nonce` parameter (to charge a card nonce generated with the `SqPaymentForm`) - Values for the `customer_card_id` and `customer_id` parameters (to charge a customer's card on file) When this response is returned, the amount of Square's processing fee might not yet be calculated. To obtain the processing fee, wait about ten seconds and call [RetrieveTransaction](endpoint-transactions-retrievetransaction). See the `processing_fee_money` field of each [Tender included](type-tender) in the transaction. @param location_id The ID of the location to associate the created transaction with. @param body An object containing the fields to POST for the request. See the corresponding object definition for field details. @param [Hash] opts the optional parameters @return [Array<(ChargeResponse
, Fixnum, Hash)>] ChargeResponse
data, response status code and response headers
# File lib/square_connect/api/transactions_api.rb, line 96 def charge_with_http_info(location_id, body, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: TransactionsApi.charge ..." end # verify the required parameter 'location_id' is set fail ArgumentError, "Missing the required parameter 'location_id' when calling TransactionsApi.charge" if location_id.nil? # verify the required parameter 'body' is set fail ArgumentError, "Missing the required parameter 'body' when calling TransactionsApi.charge" if body.nil? # resource path local_var_path = "/v2/locations/{location_id}/transactions".sub('{format}','json').sub('{' + 'location_id' + '}', location_id.to_s) # query parameters query_params = {} # header parameters header_params = {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['application/json']) # HTTP header 'Content-Type' header_params['Content-Type'] = @api_client.select_header_content_type(['application/json']) header_params['Square-Version'] = "2019-06-12" # form parameters form_params = {} # http body (model) post_body = @api_client.object_to_http_body(body) auth_names = ['oauth2'] data, status_code, headers = @api_client.call_api(:POST, local_var_path, :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => 'ChargeResponse') if @api_client.config.debugging @api_client.config.logger.debug "API called: TransactionsApi#charge\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end
CreateRefund Initiates a refund for a previously charged tender. You must issue a refund within 120 days of the associated payment. See [this article](squareup.com/help/us/en/article/5060) for more information on refund behavior. NOTE: Card-present transactions with Interac credit cards **cannot be refunded using the Connect API**. Interac transactions must refunded in-person (e.g., dipping the card using POS app). @param location_id The ID of the original transaction's associated location. @param transaction_id The ID of the original transaction that includes the tender to refund. @param body An object containing the fields to POST for the request. See the corresponding object definition for field details. @param [Hash] opts the optional parameters @return [CreateRefundResponse]
# File lib/square_connect/api/transactions_api.rb, line 145 def create_refund(location_id, transaction_id, body, opts = {}) data, _status_code, _headers = create_refund_with_http_info(location_id, transaction_id, body, opts) return data end
CreateRefund Initiates a refund for a previously charged tender. You must issue a refund within 120 days of the associated payment. See [this article](squareup.com/help/us/en/article/5060) for more information on refund behavior. NOTE: Card-present transactions with Interac credit cards **cannot be refunded using the Connect API**. Interac transactions must refunded in-person (e.g., dipping the card using POS app). @param location_id The ID of the original transaction's associated location. @param transaction_id The ID of the original transaction that includes the tender to refund. @param body An object containing the fields to POST for the request. See the corresponding object definition for field details. @param [Hash] opts the optional parameters @return [Array<(CreateRefundResponse
, Fixnum, Hash)>] CreateRefundResponse
data, response status code and response headers
# File lib/square_connect/api/transactions_api.rb, line 157 def create_refund_with_http_info(location_id, transaction_id, body, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: TransactionsApi.create_refund ..." end # verify the required parameter 'location_id' is set fail ArgumentError, "Missing the required parameter 'location_id' when calling TransactionsApi.create_refund" if location_id.nil? # verify the required parameter 'transaction_id' is set fail ArgumentError, "Missing the required parameter 'transaction_id' when calling TransactionsApi.create_refund" if transaction_id.nil? # verify the required parameter 'body' is set fail ArgumentError, "Missing the required parameter 'body' when calling TransactionsApi.create_refund" if body.nil? # resource path local_var_path = "/v2/locations/{location_id}/transactions/{transaction_id}/refund".sub('{format}','json').sub('{' + 'location_id' + '}', location_id.to_s).sub('{' + 'transaction_id' + '}', transaction_id.to_s) # query parameters query_params = {} # header parameters header_params = {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['application/json']) # HTTP header 'Content-Type' header_params['Content-Type'] = @api_client.select_header_content_type(['application/json']) header_params['Square-Version'] = "2019-06-12" # form parameters form_params = {} # http body (model) post_body = @api_client.object_to_http_body(body) auth_names = ['oauth2'] data, status_code, headers = @api_client.call_api(:POST, local_var_path, :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => 'CreateRefundResponse') if @api_client.config.debugging @api_client.config.logger.debug "API called: TransactionsApi#create_refund\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end
ListRefunds Lists refunds for one of a business's locations. In addition to full or partial tender refunds processed through Square APIs, refunds may result from itemized returns or exchanges through Square's Point of Sale applications. Refunds with a `status` of `PENDING` are not currently included in this endpoint's response. Max results per [page](paginatingresults): 50 @param location_id The ID of the location to list refunds for. @param [Hash] opts the optional parameters @option opts [String] :begin_time The beginning of the requested reporting period, in RFC 3339 format. See [Date ranges](dateranges) for details on date inclusivity/exclusivity. Default value: The current time minus one year. @option opts [String] :end_time The end of the requested reporting period, in RFC 3339 format. See [Date ranges](dateranges) for details on date inclusivity/exclusivity. Default value: The current time. @option opts [String] :sort_order The order in which results are listed in the response (`ASC` for oldest first, `DESC` for newest first). Default value: `DESC` @option opts [String] :cursor A pagination cursor returned by a previous call to this endpoint. Provide this to retrieve the next set of results for your original query. See [Pagination](/basics/api101/pagination) for more information. @return [ListRefundsResponse]
# File lib/square_connect/api/transactions_api.rb, line 210 def list_refunds(location_id, opts = {}) data, _status_code, _headers = list_refunds_with_http_info(location_id, opts) return data end
ListRefunds Lists refunds for one of a business's locations. In addition to full or partial tender refunds processed through Square APIs, refunds may result from itemized returns or exchanges through Square's Point of Sale applications. Refunds with a `status` of `PENDING` are not currently included in this endpoint's response. Max results per [page](paginatingresults): 50 @param location_id The ID of the location to list refunds for. @param [Hash] opts the optional parameters @option opts [String] :begin_time The beginning of the requested reporting period, in RFC 3339 format. See [Date ranges](dateranges) for details on date inclusivity/exclusivity. Default value: The current time minus one year. @option opts [String] :end_time The end of the requested reporting period, in RFC 3339 format. See [Date ranges](dateranges) for details on date inclusivity/exclusivity. Default value: The current time. @option opts [String] :sort_order The order in which results are listed in the response (`ASC` for oldest first, `DESC` for newest first). Default value: `DESC` @option opts [String] :cursor A pagination cursor returned by a previous call to this endpoint. Provide this to retrieve the next set of results for your original query. See [Pagination](/basics/api101/pagination) for more information. @return [Array<(ListRefundsResponse
, Fixnum, Hash)>] ListRefundsResponse
data, response status code and response headers
# File lib/square_connect/api/transactions_api.rb, line 224 def list_refunds_with_http_info(location_id, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: TransactionsApi.list_refunds ..." end # verify the required parameter 'location_id' is set fail ArgumentError, "Missing the required parameter 'location_id' when calling TransactionsApi.list_refunds" if location_id.nil? # resource path local_var_path = "/v2/locations/{location_id}/refunds".sub('{format}','json').sub('{' + 'location_id' + '}', location_id.to_s) # query parameters query_params = {} query_params[:'begin_time'] = opts[:'begin_time'] if !opts[:'begin_time'].nil? query_params[:'end_time'] = opts[:'end_time'] if !opts[:'end_time'].nil? query_params[:'sort_order'] = opts[:'sort_order'] if !opts[:'sort_order'].nil? query_params[:'cursor'] = opts[:'cursor'] if !opts[:'cursor'].nil? # header parameters header_params = {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['application/json']) # HTTP header 'Content-Type' header_params['Content-Type'] = @api_client.select_header_content_type(['application/json']) header_params['Square-Version'] = "2019-06-12" # form parameters form_params = {} # http body (model) post_body = nil auth_names = ['oauth2'] data, status_code, headers = @api_client.call_api(:GET, local_var_path, :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => 'ListRefundsResponse') if @api_client.config.debugging @api_client.config.logger.debug "API called: TransactionsApi#list_refunds\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end
ListTransactions Lists transactions for a particular location. Transactions include payment information from sales and exchanges and refund information from returns and exchanges. Max results per [page](paginatingresults): 50 @param location_id The ID of the location to list transactions for. @param [Hash] opts the optional parameters @option opts [String] :begin_time The beginning of the requested reporting period, in RFC 3339 format. See [Date ranges](dateranges) for details on date inclusivity/exclusivity. Default value: The current time minus one year. @option opts [String] :end_time The end of the requested reporting period, in RFC 3339 format. See [Date ranges](dateranges) for details on date inclusivity/exclusivity. Default value: The current time. @option opts [String] :sort_order The order in which results are listed in the response (`ASC` for oldest first, `DESC` for newest first). Default value: `DESC` @option opts [String] :cursor A pagination cursor returned by a previous call to this endpoint. Provide this to retrieve the next set of results for your original query. See [Pagination](/basics/api101/pagination) for more information. @return [ListTransactionsResponse]
# File lib/square_connect/api/transactions_api.rb, line 277 def list_transactions(location_id, opts = {}) data, _status_code, _headers = list_transactions_with_http_info(location_id, opts) return data end
ListTransactions Lists transactions for a particular location. Transactions include payment information from sales and exchanges and refund information from returns and exchanges. Max results per [page](paginatingresults): 50 @param location_id The ID of the location to list transactions for. @param [Hash] opts the optional parameters @option opts [String] :begin_time The beginning of the requested reporting period, in RFC 3339 format. See [Date ranges](dateranges) for details on date inclusivity/exclusivity. Default value: The current time minus one year. @option opts [String] :end_time The end of the requested reporting period, in RFC 3339 format. See [Date ranges](dateranges) for details on date inclusivity/exclusivity. Default value: The current time. @option opts [String] :sort_order The order in which results are listed in the response (`ASC` for oldest first, `DESC` for newest first). Default value: `DESC` @option opts [String] :cursor A pagination cursor returned by a previous call to this endpoint. Provide this to retrieve the next set of results for your original query. See [Pagination](/basics/api101/pagination) for more information. @return [Array<(ListTransactionsResponse
, Fixnum, Hash)>] ListTransactionsResponse
data, response status code and response headers
# File lib/square_connect/api/transactions_api.rb, line 291 def list_transactions_with_http_info(location_id, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: TransactionsApi.list_transactions ..." end # verify the required parameter 'location_id' is set fail ArgumentError, "Missing the required parameter 'location_id' when calling TransactionsApi.list_transactions" if location_id.nil? # resource path local_var_path = "/v2/locations/{location_id}/transactions".sub('{format}','json').sub('{' + 'location_id' + '}', location_id.to_s) # query parameters query_params = {} query_params[:'begin_time'] = opts[:'begin_time'] if !opts[:'begin_time'].nil? query_params[:'end_time'] = opts[:'end_time'] if !opts[:'end_time'].nil? query_params[:'sort_order'] = opts[:'sort_order'] if !opts[:'sort_order'].nil? query_params[:'cursor'] = opts[:'cursor'] if !opts[:'cursor'].nil? # header parameters header_params = {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['application/json']) # HTTP header 'Content-Type' header_params['Content-Type'] = @api_client.select_header_content_type(['application/json']) header_params['Square-Version'] = "2019-06-12" # form parameters form_params = {} # http body (model) post_body = nil auth_names = ['oauth2'] data, status_code, headers = @api_client.call_api(:GET, local_var_path, :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => 'ListTransactionsResponse') if @api_client.config.debugging @api_client.config.logger.debug "API called: TransactionsApi#list_transactions\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end
RetrieveTransaction Retrieves details for a single transaction. @param location_id The ID of the transaction's associated location. @param transaction_id The ID of the transaction to retrieve. @param [Hash] opts the optional parameters @return [RetrieveTransactionResponse]
# File lib/square_connect/api/transactions_api.rb, line 341 def retrieve_transaction(location_id, transaction_id, opts = {}) data, _status_code, _headers = retrieve_transaction_with_http_info(location_id, transaction_id, opts) return data end
RetrieveTransaction Retrieves details for a single transaction. @param location_id The ID of the transaction's associated location. @param transaction_id The ID of the transaction to retrieve. @param [Hash] opts the optional parameters @return [Array<(RetrieveTransactionResponse
, Fixnum, Hash)>] RetrieveTransactionResponse
data, response status code and response headers
# File lib/square_connect/api/transactions_api.rb, line 352 def retrieve_transaction_with_http_info(location_id, transaction_id, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: TransactionsApi.retrieve_transaction ..." end # verify the required parameter 'location_id' is set fail ArgumentError, "Missing the required parameter 'location_id' when calling TransactionsApi.retrieve_transaction" if location_id.nil? # verify the required parameter 'transaction_id' is set fail ArgumentError, "Missing the required parameter 'transaction_id' when calling TransactionsApi.retrieve_transaction" if transaction_id.nil? # resource path local_var_path = "/v2/locations/{location_id}/transactions/{transaction_id}".sub('{format}','json').sub('{' + 'location_id' + '}', location_id.to_s).sub('{' + 'transaction_id' + '}', transaction_id.to_s) # query parameters query_params = {} # header parameters header_params = {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['application/json']) # HTTP header 'Content-Type' header_params['Content-Type'] = @api_client.select_header_content_type(['application/json']) header_params['Square-Version'] = "2019-06-12" # form parameters form_params = {} # http body (model) post_body = nil auth_names = ['oauth2'] data, status_code, headers = @api_client.call_api(:GET, local_var_path, :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => 'RetrieveTransactionResponse') if @api_client.config.debugging @api_client.config.logger.debug "API called: TransactionsApi#retrieve_transaction\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end
VoidTransaction Cancels a transaction that was created with the [Charge](endpoint-transactions-charge) endpoint with a `delay_capture` value of `true`. See the [Delay Capture of Funds](/transactions-api/cookbook/delay-capture) recipe for more information. @param location_id @param transaction_id @param [Hash] opts the optional parameters @return [VoidTransactionResponse]
# File lib/square_connect/api/transactions_api.rb, line 400 def void_transaction(location_id, transaction_id, opts = {}) data, _status_code, _headers = void_transaction_with_http_info(location_id, transaction_id, opts) return data end
VoidTransaction Cancels a transaction that was created with the [Charge](endpoint-transactions-charge) endpoint with a `delay_capture` value of `true`. See the [Delay Capture of Funds](/transactions-api/cookbook/delay-capture) recipe for more information. @param location_id @param transaction_id @param [Hash] opts the optional parameters @return [Array<(VoidTransactionResponse
, Fixnum, Hash)>] VoidTransactionResponse
data, response status code and response headers
# File lib/square_connect/api/transactions_api.rb, line 411 def void_transaction_with_http_info(location_id, transaction_id, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug "Calling API: TransactionsApi.void_transaction ..." end # verify the required parameter 'location_id' is set fail ArgumentError, "Missing the required parameter 'location_id' when calling TransactionsApi.void_transaction" if location_id.nil? # verify the required parameter 'transaction_id' is set fail ArgumentError, "Missing the required parameter 'transaction_id' when calling TransactionsApi.void_transaction" if transaction_id.nil? # resource path local_var_path = "/v2/locations/{location_id}/transactions/{transaction_id}/void".sub('{format}','json').sub('{' + 'location_id' + '}', location_id.to_s).sub('{' + 'transaction_id' + '}', transaction_id.to_s) # query parameters query_params = {} # header parameters header_params = {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['application/json']) # HTTP header 'Content-Type' header_params['Content-Type'] = @api_client.select_header_content_type(['application/json']) header_params['Square-Version'] = "2019-06-12" # form parameters form_params = {} # http body (model) post_body = nil auth_names = ['oauth2'] data, status_code, headers = @api_client.call_api(:POST, local_var_path, :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => 'VoidTransactionResponse') if @api_client.config.debugging @api_client.config.logger.debug "API called: TransactionsApi#void_transaction\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end