class Square::CheckoutApi
Public Class Methods
new(config, http_call_back: nil)
click to toggle source
Calls superclass method
Square::BaseApi::new
# File lib/square/api/checkout_api.rb, line 4 def initialize(config, http_call_back: nil) super(config, http_call_back: http_call_back) end
Public Instance Methods
create_checkout(location_id:, body:)
click to toggle source
Links a ‘checkoutId` to a `checkout_page_url` that customers are directed to in order to provide their payment information using a payment processing workflow hosted on connect.squareup.com. @param [String] location_id Required parameter: The ID of the business location to associate the checkout with. @param [CreateCheckoutRequest] body Required parameter: An object containing the fields to POST for the request. See the corresponding object definition for field details. @return [CreateCheckoutResponse Hash] response from the API call
# File lib/square/api/checkout_api.rb, line 17 def create_checkout(location_id:, body:) # Prepare query url. _query_builder = config.get_base_uri _query_builder << '/v2/locations/{location_id}/checkouts' _query_builder = APIHelper.append_url_with_template_parameters( _query_builder, 'location_id' => { 'value' => location_id, 'encode' => true } ) _query_url = APIHelper.clean_url _query_builder # Prepare headers. _headers = { 'accept' => 'application/json', 'Content-Type' => 'application/json' } # Prepare and execute HttpRequest. _request = config.http_client.post( _query_url, headers: _headers, parameters: body.to_json ) OAuth2.apply(config, _request) _response = execute_request(_request) # Return appropriate response type. decoded = APIHelper.json_deserialize(_response.raw_body) _errors = APIHelper.map_response(decoded, ['errors']) ApiResponse.new( _response, data: decoded, errors: _errors ) end