square.rb 44.2.0.20251016 → 45.0.1.20260122
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.
- checksums.yaml +4 -4
- data/.fern/metadata.json +9 -0
- data/.fernignore +20 -0
- data/.rubocop.yml +60 -0
- data/LICENSE +1 -1
- data/Rakefile +29 -0
- data/custom.gemspec.rb +19 -0
- data/lib/square/apple_pay/client.rb +24 -10
- data/lib/square/bank_accounts/client.rb +144 -31
- data/lib/square/bank_accounts/types/create_bank_account_request.rb +13 -0
- data/lib/square/bank_accounts/types/disable_bank_account_request.rb +11 -0
- data/lib/square/bank_accounts/types/get_by_v_1_id_bank_accounts_request.rb +1 -1
- data/lib/square/bank_accounts/types/list_bank_accounts_request.rb +1 -0
- data/lib/square/bookings/client.rb +238 -100
- data/lib/square/bookings/custom_attribute_definitions/client.rb +139 -67
- data/lib/square/bookings/custom_attribute_definitions/types/create_booking_custom_attribute_definition_request.rb +1 -3
- data/lib/square/bookings/custom_attribute_definitions/types/update_booking_custom_attribute_definition_request.rb +1 -3
- data/lib/square/bookings/custom_attributes/client.rb +168 -76
- data/lib/square/bookings/custom_attributes/types/bulk_delete_booking_custom_attributes_request.rb +1 -3
- data/lib/square/bookings/custom_attributes/types/bulk_upsert_booking_custom_attributes_request.rb +1 -3
- data/lib/square/bookings/location_profiles/client.rb +44 -24
- data/lib/square/bookings/team_member_profiles/client.rb +66 -31
- data/lib/square/cards/client.rb +103 -45
- data/lib/square/cash_drawers/client.rb +3 -1
- data/lib/square/cash_drawers/shifts/client.rb +121 -61
- data/lib/square/catalog/client.rb +203 -91
- data/lib/square/catalog/images/client.rb +50 -20
- data/lib/square/catalog/object/client.rb +66 -29
- data/lib/square/catalog/object/types/delete_object_request.rb +1 -1
- data/lib/square/catalog/object/types/get_object_request.rb +1 -1
- data/lib/square/catalog/types/batch_upsert_catalog_objects_request.rb +1 -3
- data/lib/square/catalog/types/search_catalog_items_request.rb +3 -9
- data/lib/square/catalog/types/search_catalog_objects_request.rb +1 -3
- data/lib/square/channels/client.rb +85 -38
- data/lib/square/checkout/client.rb +77 -31
- data/lib/square/checkout/payment_links/client.rb +120 -54
- data/lib/square/client.rb +8 -10
- data/lib/square/customers/cards/client.rb +43 -16
- data/lib/square/customers/client.rb +220 -97
- data/lib/square/customers/custom_attribute_definitions/client.rb +157 -74
- data/lib/square/customers/custom_attribute_definitions/types/batch_upsert_customer_custom_attributes_request.rb +1 -3
- data/lib/square/customers/custom_attribute_definitions/types/create_customer_custom_attribute_definition_request.rb +1 -3
- data/lib/square/customers/custom_attribute_definitions/types/update_customer_custom_attribute_definition_request.rb +1 -3
- data/lib/square/customers/custom_attributes/client.rb +117 -53
- data/lib/square/customers/groups/client.rb +156 -67
- data/lib/square/customers/segments/client.rb +62 -31
- data/lib/square/customers/types/bulk_create_customers_request.rb +1 -3
- data/lib/square/customers/types/bulk_update_customers_request.rb +1 -3
- data/lib/square/devices/client.rb +66 -31
- data/lib/square/devices/codes/client.rb +83 -38
- data/lib/square/disputes/client.rb +140 -60
- data/lib/square/disputes/evidence/client.rb +83 -39
- data/lib/square/employees/client.rb +66 -31
- data/lib/square/events/client.rb +80 -38
- data/lib/square/file_param.rb +77 -77
- data/lib/square/gift_cards/activities/client.rb +73 -31
- data/lib/square/gift_cards/client.rb +163 -69
- data/lib/square/internal/http/base_request.rb +6 -0
- data/lib/square/internal/http/raw_client.rb +111 -20
- data/lib/square/internal/iterators/cursor_item_iterator.rb +28 -0
- data/lib/square/internal/iterators/cursor_page_iterator.rb +51 -0
- data/lib/square/internal/iterators/item_iterator.rb +65 -0
- data/lib/square/internal/iterators/offset_item_iterator.rb +30 -0
- data/lib/square/internal/iterators/offset_page_iterator.rb +83 -0
- data/lib/square/internal/json/request.rb +2 -1
- data/lib/square/internal/multipart/multipart_request.rb +2 -1
- data/lib/square/internal/types/enum.rb +8 -0
- data/lib/square/internal/types/model/field.rb +11 -1
- data/lib/square/internal/types/model.rb +14 -4
- data/lib/square/internal/types/union.rb +88 -7
- data/lib/square/internal/types/utils.rb +20 -4
- data/lib/square/inventory/client.rb +100 -76
- data/lib/square/invoices/client.rb +228 -99
- data/lib/square/labor/break_types/client.rb +120 -53
- data/lib/square/labor/client.rb +205 -81
- data/lib/square/labor/employee_wages/client.rb +64 -31
- data/lib/square/labor/shifts/client.rb +94 -37
- data/lib/square/labor/team_member_wages/client.rb +64 -31
- data/lib/square/labor/types/bulk_publish_scheduled_shifts_request.rb +2 -6
- data/lib/square/labor/types/publish_scheduled_shift_request.rb +1 -3
- data/lib/square/labor/workweek_configs/client.rb +65 -32
- data/lib/square/locations/client.rb +102 -41
- data/lib/square/locations/custom_attribute_definitions/client.rb +135 -64
- data/lib/square/locations/custom_attribute_definitions/types/create_location_custom_attribute_definition_request.rb +1 -3
- data/lib/square/locations/custom_attribute_definitions/types/update_location_custom_attribute_definition_request.rb +1 -3
- data/lib/square/locations/custom_attributes/client.rb +156 -68
- data/lib/square/locations/custom_attributes/types/bulk_delete_location_custom_attributes_request.rb +1 -3
- data/lib/square/locations/custom_attributes/types/bulk_upsert_location_custom_attributes_request.rb +1 -3
- data/lib/square/locations/transactions/client.rb +93 -37
- data/lib/square/locations/types/create_checkout_request.rb +1 -3
- data/lib/square/loyalty/accounts/client.rb +109 -44
- data/lib/square/loyalty/accounts/types/search_loyalty_accounts_request.rb +1 -3
- data/lib/square/loyalty/client.rb +20 -8
- data/lib/square/loyalty/programs/client.rb +72 -29
- data/lib/square/loyalty/programs/promotions/client.rb +106 -46
- data/lib/square/loyalty/rewards/client.rb +96 -38
- data/lib/square/loyalty/rewards/types/search_loyalty_rewards_request.rb +1 -3
- data/lib/square/merchants/client.rb +60 -31
- data/lib/square/merchants/custom_attribute_definitions/client.rb +137 -65
- data/lib/square/merchants/custom_attribute_definitions/types/create_merchant_custom_attribute_definition_request.rb +1 -3
- data/lib/square/merchants/custom_attribute_definitions/types/update_merchant_custom_attribute_definition_request.rb +1 -3
- data/lib/square/merchants/custom_attributes/client.rb +156 -68
- data/lib/square/merchants/custom_attributes/types/bulk_delete_merchant_custom_attributes_request.rb +1 -3
- data/lib/square/merchants/custom_attributes/types/bulk_upsert_merchant_custom_attributes_request.rb +1 -3
- data/lib/square/o_auth/client.rb +76 -31
- data/lib/square/o_auth/types/obtain_token_request.rb +1 -0
- data/lib/square/orders/client.rb +156 -63
- data/lib/square/orders/custom_attribute_definitions/client.rb +137 -65
- data/lib/square/orders/custom_attribute_definitions/types/create_order_custom_attribute_definition_request.rb +1 -3
- data/lib/square/orders/custom_attribute_definitions/types/update_order_custom_attribute_definition_request.rb +1 -3
- data/lib/square/orders/custom_attributes/client.rb +159 -69
- data/lib/square/orders/custom_attributes/types/bulk_delete_order_custom_attributes_request.rb +1 -3
- data/lib/square/orders/custom_attributes/types/bulk_upsert_order_custom_attributes_request.rb +1 -3
- data/lib/square/orders/types/calculate_order_request.rb +1 -3
- data/lib/square/payments/client.rb +182 -70
- data/lib/square/payouts/client.rb +116 -54
- data/lib/square/refunds/client.rb +97 -40
- data/lib/square/refunds/types/refund_payment_request.rb +1 -3
- data/lib/square/sites/client.rb +26 -11
- data/lib/square/snippets/client.rb +73 -28
- data/lib/square/subscriptions/client.rb +271 -117
- data/lib/square/team/client.rb +81 -36
- data/lib/square/team_members/client.rb +119 -49
- data/lib/square/team_members/types/batch_create_team_members_request.rb +1 -3
- data/lib/square/team_members/types/batch_update_team_members_request.rb +1 -3
- data/lib/square/team_members/wage_setting/client.rb +48 -19
- data/lib/square/terminal/actions/client.rb +75 -30
- data/lib/square/terminal/checkouts/client.rb +76 -30
- data/lib/square/terminal/client.rb +60 -23
- data/lib/square/terminal/refunds/client.rb +78 -31
- data/lib/square/transfer_orders/client.rb +26 -21
- data/lib/square/types/address.rb +2 -1
- data/lib/square/types/application_details.rb +1 -3
- data/lib/square/types/application_type.rb +23 -0
- data/lib/square/types/availability.rb +3 -4
- data/lib/square/types/bank_account.rb +1 -0
- data/lib/square/types/batch_create_team_members_response.rb +1 -3
- data/lib/square/types/batch_create_vendors_response.rb +1 -3
- data/lib/square/types/batch_get_catalog_objects_response.rb +1 -3
- data/lib/square/types/batch_get_vendors_response.rb +1 -3
- data/lib/square/types/batch_update_team_members_response.rb +1 -3
- data/lib/square/types/batch_update_vendors_response.rb +1 -3
- data/lib/square/types/batch_upsert_catalog_objects_response.rb +1 -3
- data/lib/square/types/batch_upsert_customer_custom_attributes_request_customer_custom_attribute_upsert_request.rb +2 -1
- data/lib/square/types/batch_upsert_customer_custom_attributes_response.rb +4 -4
- data/lib/square/types/batch_upsert_customer_custom_attributes_response_customer_custom_attribute_upsert_response.rb +3 -1
- data/lib/square/types/booking.rb +2 -6
- data/lib/square/types/booking_created_event.rb +2 -1
- data/lib/square/types/booking_custom_attribute_definition_visible_created_event.rb +2 -1
- data/lib/square/types/booking_custom_attribute_definition_visible_deleted_event.rb +2 -1
- data/lib/square/types/booking_custom_attribute_definition_visible_updated_event.rb +2 -1
- data/lib/square/types/booking_custom_attribute_delete_request.rb +4 -2
- data/lib/square/types/booking_custom_attribute_delete_response.rb +3 -1
- data/lib/square/types/booking_custom_attribute_upsert_request.rb +2 -1
- data/lib/square/types/booking_custom_attribute_upsert_response.rb +3 -1
- data/lib/square/types/booking_updated_event.rb +2 -1
- data/lib/square/types/bulk_create_customers_response.rb +1 -3
- data/lib/square/types/bulk_delete_booking_custom_attributes_response.rb +4 -4
- data/lib/square/types/bulk_delete_customers_response.rb +1 -3
- data/lib/square/types/bulk_delete_location_custom_attributes_request_location_custom_attribute_delete_request.rb +2 -1
- data/lib/square/types/bulk_delete_location_custom_attributes_response.rb +4 -4
- data/lib/square/types/bulk_delete_location_custom_attributes_response_location_custom_attribute_delete_response.rb +2 -1
- data/lib/square/types/bulk_delete_merchant_custom_attributes_request_merchant_custom_attribute_delete_request.rb +2 -1
- data/lib/square/types/bulk_delete_merchant_custom_attributes_response.rb +4 -4
- data/lib/square/types/bulk_delete_merchant_custom_attributes_response_merchant_custom_attribute_delete_response.rb +2 -1
- data/lib/square/types/bulk_delete_order_custom_attributes_response.rb +1 -3
- data/lib/square/types/bulk_publish_scheduled_shifts_response.rb +1 -3
- data/lib/square/types/bulk_retrieve_bookings_response.rb +1 -3
- data/lib/square/types/bulk_retrieve_channels_request_constants.rb +23 -0
- data/lib/square/types/bulk_retrieve_channels_response.rb +1 -3
- data/lib/square/types/bulk_retrieve_customers_response.rb +1 -3
- data/lib/square/types/bulk_retrieve_team_member_booking_profiles_response.rb +3 -4
- data/lib/square/types/bulk_update_customers_response.rb +1 -3
- data/lib/square/types/bulk_upsert_booking_custom_attributes_response.rb +4 -4
- data/lib/square/types/bulk_upsert_location_custom_attributes_request_location_custom_attribute_upsert_request.rb +2 -1
- data/lib/square/types/bulk_upsert_location_custom_attributes_response.rb +4 -4
- data/lib/square/types/bulk_upsert_location_custom_attributes_response_location_custom_attribute_upsert_response.rb +3 -1
- data/lib/square/types/bulk_upsert_merchant_custom_attributes_request_merchant_custom_attribute_upsert_request.rb +2 -1
- data/lib/square/types/bulk_upsert_merchant_custom_attributes_response.rb +4 -4
- data/lib/square/types/bulk_upsert_merchant_custom_attributes_response_merchant_custom_attribute_upsert_response.rb +3 -1
- data/lib/square/types/bulk_upsert_order_custom_attributes_response.rb +1 -3
- data/lib/square/types/business_appointment_settings.rb +4 -12
- data/lib/square/types/business_booking_profile.rb +2 -6
- data/lib/square/types/buy_now_pay_later_details.rb +1 -0
- data/lib/square/types/card.rb +2 -0
- data/lib/square/types/card_issuer_alert.rb +23 -0
- data/lib/square/types/catalog_category.rb +1 -3
- data/lib/square/types/catalog_custom_attribute_definition.rb +6 -18
- data/lib/square/types/catalog_custom_attribute_definition_selection_config.rb +1 -3
- data/lib/square/types/catalog_id_mapping.rb +1 -1
- data/lib/square/types/catalog_info_response.rb +1 -3
- data/lib/square/types/catalog_item.rb +6 -12
- data/lib/square/types/catalog_item_food_and_beverage_details.rb +2 -6
- data/lib/square/types/catalog_item_food_and_beverage_details_dietary_preference.rb +2 -6
- data/lib/square/types/catalog_item_food_and_beverage_details_ingredient.rb +2 -6
- data/lib/square/types/catalog_item_modifier_list_info.rb +6 -9
- data/lib/square/types/catalog_item_variation.rb +17 -13
- data/lib/square/types/catalog_modifier.rb +4 -4
- data/lib/square/types/catalog_modifier_list.rb +4 -2
- data/lib/square/types/catalog_modifier_override.rb +2 -2
- data/lib/square/types/catalog_modifier_toggle_override_type.rb +13 -0
- data/lib/square/types/catalog_object.rb +7 -3
- data/lib/square/types/catalog_object_base.rb +2 -4
- data/lib/square/types/catalog_object_category.rb +3 -4
- data/lib/square/types/catalog_object_custom_attribute_definition.rb +1 -3
- data/lib/square/types/catalog_object_quick_amounts_settings.rb +1 -3
- data/lib/square/types/catalog_object_reference.rb +1 -1
- data/lib/square/types/catalog_object_subscription_plan_variation.rb +1 -3
- data/lib/square/types/catalog_query.rb +11 -13
- data/lib/square/types/catalog_query_prefix.rb +2 -1
- data/lib/square/types/catalog_query_text.rb +2 -1
- data/lib/square/types/catalog_subscription_plan.rb +5 -5
- data/lib/square/types/catalog_subscription_plan_variation.rb +4 -2
- data/lib/square/types/catalog_v_1_id.rb +1 -1
- data/lib/square/types/catalog_version_updated_event_object.rb +1 -3
- data/lib/square/types/checkout.rb +1 -3
- data/lib/square/types/checkout_location_settings.rb +1 -3
- data/lib/square/types/checkout_location_settings_branding.rb +2 -6
- data/lib/square/types/checkout_merchant_settings.rb +1 -3
- data/lib/square/types/checkout_merchant_settings_payment_methods.rb +4 -12
- data/lib/square/types/checkout_merchant_settings_payment_methods_afterpay_clearpay.rb +2 -6
- data/lib/square/types/component.rb +4 -12
- data/lib/square/types/create_bank_account_response.rb +11 -0
- data/lib/square/types/create_booking_custom_attribute_definition_response.rb +4 -4
- data/lib/square/types/create_catalog_image_request.rb +1 -1
- data/lib/square/types/create_customer_custom_attribute_definition_response.rb +4 -4
- data/lib/square/types/create_location_custom_attribute_definition_response.rb +4 -4
- data/lib/square/types/create_merchant_custom_attribute_definition_response.rb +4 -4
- data/lib/square/types/create_order_custom_attribute_definition_response.rb +1 -3
- data/lib/square/types/create_transfer_order_data.rb +3 -4
- data/lib/square/types/create_webhook_subscription_response.rb +2 -1
- data/lib/square/types/custom_attribute.rb +1 -1
- data/lib/square/types/custom_attribute_definition.rb +1 -3
- data/lib/square/types/custom_attribute_definition_event_data_object.rb +1 -3
- data/lib/square/types/custom_field.rb +2 -1
- data/lib/square/types/customer_address_filter.rb +2 -1
- data/lib/square/types/customer_created_event.rb +4 -2
- data/lib/square/types/customer_created_event_event_context_merge.rb +2 -1
- data/lib/square/types/customer_creation_source_filter.rb +1 -3
- data/lib/square/types/customer_custom_attribute_filter.rb +2 -1
- data/lib/square/types/customer_custom_attribute_filter_value.rb +2 -1
- data/lib/square/types/customer_custom_attribute_filters.rb +7 -6
- data/lib/square/types/customer_custom_attribute_visible_updated_event.rb +6 -3
- data/lib/square/types/customer_deleted_event.rb +4 -2
- data/lib/square/types/customer_deleted_event_event_context_merge.rb +2 -1
- data/lib/square/types/customer_tax_ids.rb +4 -2
- data/lib/square/types/customer_updated_event.rb +4 -2
- data/lib/square/types/delete_booking_custom_attribute_definition_response.rb +5 -2
- data/lib/square/types/delete_booking_custom_attribute_response.rb +2 -1
- data/lib/square/types/delete_customer_custom_attribute_response.rb +2 -1
- data/lib/square/types/delete_location_custom_attribute_response.rb +2 -1
- data/lib/square/types/delete_merchant_custom_attribute_response.rb +2 -1
- data/lib/square/types/delete_subscription_action_response.rb +2 -1
- data/lib/square/types/delete_webhook_subscription_response.rb +2 -1
- data/lib/square/types/destination_details.rb +1 -3
- data/lib/square/types/device_checkout_options.rb +1 -0
- data/lib/square/types/device_component_details_ethernet_details.rb +1 -1
- data/lib/square/types/device_component_details_wi_fi_details.rb +1 -1
- data/lib/square/types/digital_wallet_details.rb +1 -0
- data/lib/square/types/disable_bank_account_response.rb +11 -0
- data/lib/square/types/dispute.rb +2 -1
- data/lib/square/types/dispute_evidence_added_event.rb +2 -1
- data/lib/square/types/dispute_evidence_created_event.rb +2 -1
- data/lib/square/types/employee_wage.rb +2 -1
- data/lib/square/types/error_code.rb +2 -0
- data/lib/square/types/event_data.rb +1 -3
- data/lib/square/types/fulfillment.rb +4 -7
- data/lib/square/types/fulfillment_delivery_details.rb +1 -3
- data/lib/square/types/fulfillment_pickup_details.rb +1 -3
- data/lib/square/types/get_bank_account_response.rb +1 -1
- data/lib/square/types/get_booking_request.rb +23 -0
- data/lib/square/types/get_business_booking_profile_request.rb +23 -0
- data/lib/square/types/get_card_request.rb +23 -0
- data/lib/square/types/get_catalog_object_response.rb +1 -3
- data/lib/square/types/get_customer_custom_attribute_definition_response.rb +4 -4
- data/lib/square/types/get_customer_custom_attribute_response.rb +2 -1
- data/lib/square/types/get_customer_group_request.rb +23 -0
- data/lib/square/types/get_customer_request.rb +23 -0
- data/lib/square/types/get_customer_segment_request.rb +23 -0
- data/lib/square/types/get_dispute_evidence_request.rb +23 -0
- data/lib/square/types/get_dispute_request.rb +23 -0
- data/lib/square/types/get_employee_request.rb +23 -0
- data/lib/square/types/get_gift_card_request.rb +23 -0
- data/lib/square/types/get_inventory_adjustment_request.rb +23 -0
- data/lib/square/types/get_inventory_physical_count_request.rb +23 -0
- data/lib/square/types/get_inventory_transfer_request.rb +23 -0
- data/lib/square/types/get_location_request.rb +23 -0
- data/lib/square/types/get_loyalty_account_request.rb +23 -0
- data/lib/square/types/get_loyalty_program_request.rb +23 -0
- data/lib/square/types/get_loyalty_promotion_request.rb +23 -0
- data/lib/square/types/get_loyalty_reward_request.rb +23 -0
- data/lib/square/types/get_merchant_request.rb +23 -0
- data/lib/square/types/get_order_request.rb +23 -0
- data/lib/square/types/get_payment_link_request.rb +23 -0
- data/lib/square/types/get_snippet_request.rb +23 -0
- data/lib/square/types/get_team_member_booking_profile_request.rb +23 -0
- data/lib/square/types/get_team_member_booking_profile_response.rb +1 -3
- data/lib/square/types/get_team_member_request.rb +23 -0
- data/lib/square/types/get_transaction_request.rb +23 -0
- data/lib/square/types/get_vendor_request.rb +23 -0
- data/lib/square/types/get_wage_setting_request.rb +23 -0
- data/lib/square/types/get_webhook_subscription_request.rb +23 -0
- data/lib/square/types/get_webhook_subscription_response.rb +2 -1
- data/lib/square/types/gift_card_activity.rb +8 -24
- data/lib/square/types/gift_card_activity_block_reason.rb +23 -0
- data/lib/square/types/gift_card_activity_unblock_reason.rb +23 -0
- data/lib/square/types/gift_card_activity_updated_event.rb +2 -1
- data/lib/square/types/inventory_count_updated_event_object.rb +1 -3
- data/lib/square/types/invoice.rb +6 -13
- data/lib/square/types/invoice_accepted_payment_methods.rb +2 -1
- data/lib/square/types/invoice_attachment.rb +1 -1
- data/lib/square/types/invoice_custom_field.rb +2 -1
- data/lib/square/types/invoice_payment_made_event.rb +2 -1
- data/lib/square/types/invoice_payment_request.rb +6 -8
- data/lib/square/types/invoice_refunded_event.rb +2 -1
- data/lib/square/types/invoice_sort_field.rb +23 -0
- data/lib/square/types/labor_scheduled_shift_created_event_object.rb +1 -1
- data/lib/square/types/labor_scheduled_shift_published_event_object.rb +1 -1
- data/lib/square/types/labor_scheduled_shift_updated_event_object.rb +1 -1
- data/lib/square/types/list_bank_accounts_response.rb +1 -1
- data/lib/square/types/list_booking_custom_attribute_definitions_response.rb +4 -4
- data/lib/square/types/list_booking_custom_attributes_response.rb +3 -4
- data/lib/square/types/list_cash_drawer_shift_events_response.rb +1 -3
- data/lib/square/types/list_cash_drawer_shifts_response.rb +1 -3
- data/lib/square/types/list_channels_request_constants.rb +23 -0
- data/lib/square/types/list_customer_custom_attribute_definitions_response.rb +4 -4
- data/lib/square/types/list_customer_custom_attributes_response.rb +3 -4
- data/lib/square/types/list_gift_card_activities_response.rb +1 -3
- data/lib/square/types/list_location_booking_profiles_response.rb +1 -3
- data/lib/square/types/list_location_custom_attribute_definitions_response.rb +4 -4
- data/lib/square/types/list_location_custom_attributes_response.rb +3 -4
- data/lib/square/types/list_loyalty_promotions_response.rb +1 -3
- data/lib/square/types/list_merchant_custom_attribute_definitions_response.rb +4 -4
- data/lib/square/types/list_merchant_custom_attributes_response.rb +3 -4
- data/lib/square/types/list_order_custom_attribute_definitions_response.rb +1 -3
- data/lib/square/types/list_order_custom_attributes_response.rb +1 -3
- data/lib/square/types/list_subscription_events_response.rb +1 -3
- data/lib/square/types/list_team_member_booking_profiles_response.rb +1 -3
- data/lib/square/types/list_team_member_wages_response.rb +1 -3
- data/lib/square/types/list_webhook_subscriptions_response.rb +1 -3
- data/lib/square/types/list_workweek_configs_response.rb +1 -3
- data/lib/square/types/location.rb +1 -3
- data/lib/square/types/location_booking_profile.rb +2 -1
- data/lib/square/types/location_custom_attribute_visible_updated_event.rb +6 -3
- data/lib/square/types/loyalty_account.rb +1 -3
- data/lib/square/types/loyalty_account_mapping_type.rb +23 -0
- data/lib/square/types/loyalty_event.rb +3 -4
- data/lib/square/types/loyalty_event_filter.rb +1 -3
- data/lib/square/types/loyalty_program.rb +4 -7
- data/lib/square/types/loyalty_program_accrual_rule.rb +3 -4
- data/lib/square/types/loyalty_program_reward_tier.rb +3 -1
- data/lib/square/types/loyalty_promotion_incentive.rb +2 -6
- data/lib/square/types/loyalty_promotion_incentive_points_addition_data.rb +2 -1
- data/lib/square/types/loyalty_promotion_incentive_points_multiplier_data.rb +2 -1
- data/lib/square/types/loyalty_promotion_trigger_limit.rb +2 -1
- data/lib/square/types/loyalty_reward.rb +4 -2
- data/lib/square/types/measurement_unit_generic.rb +23 -0
- data/lib/square/types/oauth_authorization_revoked_event_object.rb +1 -3
- data/lib/square/types/oauth_authorization_revoked_event_revocation_object.rb +1 -3
- data/lib/square/types/order.rb +2 -6
- data/lib/square/types/order_card_surcharge_treatment_type.rb +12 -0
- data/lib/square/types/order_custom_attribute_definition_owned_created_event.rb +2 -1
- data/lib/square/types/order_custom_attribute_definition_owned_deleted_event.rb +2 -1
- data/lib/square/types/order_custom_attribute_definition_owned_updated_event.rb +2 -1
- data/lib/square/types/order_custom_attribute_definition_visible_created_event.rb +2 -1
- data/lib/square/types/order_custom_attribute_definition_visible_deleted_event.rb +2 -1
- data/lib/square/types/order_custom_attribute_definition_visible_updated_event.rb +2 -1
- data/lib/square/types/order_custom_attribute_owned_deleted_event.rb +2 -1
- data/lib/square/types/order_custom_attribute_owned_updated_event.rb +2 -1
- data/lib/square/types/order_custom_attribute_visible_deleted_event.rb +2 -1
- data/lib/square/types/order_custom_attribute_visible_updated_event.rb +2 -1
- data/lib/square/types/order_fulfillment_updated.rb +1 -3
- data/lib/square/types/order_line_item.rb +4 -12
- data/lib/square/types/order_line_item_applied_tax.rb +1 -0
- data/lib/square/types/order_line_item_pricing_blocklists.rb +3 -6
- data/lib/square/types/order_line_item_pricing_blocklists_blocked_service_charge.rb +14 -0
- data/lib/square/types/order_return.rb +3 -9
- data/lib/square/types/order_return_line_item.rb +4 -12
- data/lib/square/types/order_return_service_charge.rb +3 -6
- data/lib/square/types/order_service_charge.rb +2 -6
- data/lib/square/types/payment.rb +1 -3
- data/lib/square/types/payment_link_related_resources.rb +1 -3
- data/lib/square/types/payment_refund.rb +1 -3
- data/lib/square/types/payout_entry.rb +24 -72
- data/lib/square/types/pre_populated_data.rb +2 -1
- data/lib/square/types/product_type.rb +23 -0
- data/lib/square/types/refund.rb +1 -3
- data/lib/square/types/retrieve_booking_custom_attribute_definition_response.rb +4 -4
- data/lib/square/types/retrieve_booking_custom_attribute_response.rb +2 -1
- data/lib/square/types/retrieve_location_custom_attribute_definition_response.rb +4 -4
- data/lib/square/types/retrieve_location_custom_attribute_response.rb +2 -1
- data/lib/square/types/retrieve_merchant_custom_attribute_definition_response.rb +4 -4
- data/lib/square/types/retrieve_merchant_custom_attribute_response.rb +2 -1
- data/lib/square/types/retrieve_order_custom_attribute_definition_response.rb +1 -3
- data/lib/square/types/scheduled_shift_filter.rb +3 -7
- data/lib/square/types/scheduled_shift_workday.rb +1 -3
- data/lib/square/types/search_availability_filter.rb +1 -3
- data/lib/square/types/search_catalog_items_response.rb +2 -1
- data/lib/square/types/search_catalog_objects_response.rb +1 -3
- data/lib/square/types/search_events_sort_field.rb +23 -0
- data/lib/square/types/search_loyalty_accounts_request_loyalty_account_query.rb +1 -3
- data/lib/square/types/search_loyalty_accounts_response.rb +1 -3
- data/lib/square/types/search_orders_date_time_filter.rb +2 -1
- data/lib/square/types/search_orders_fulfillment_filter.rb +2 -6
- data/lib/square/types/search_orders_source_filter.rb +2 -0
- data/lib/square/types/search_scheduled_shifts_response.rb +1 -3
- data/lib/square/types/search_transfer_orders_response.rb +1 -3
- data/lib/square/types/shift_filter.rb +3 -2
- data/lib/square/types/shift_query.rb +2 -1
- data/lib/square/types/shift_sort.rb +2 -1
- data/lib/square/types/shift_wage.rb +2 -1
- data/lib/square/types/shift_workday.rb +2 -1
- data/lib/square/types/snippet.rb +2 -1
- data/lib/square/types/standard_unit_description_group.rb +1 -3
- data/lib/square/types/subscription_event.rb +1 -3
- data/lib/square/types/subscription_phase.rb +2 -1
- data/lib/square/types/subscription_test_result.rb +5 -3
- data/lib/square/types/team_member_assigned_locations.rb +1 -3
- data/lib/square/types/team_member_booking_profile.rb +2 -1
- data/lib/square/types/tender.rb +2 -6
- data/lib/square/types/tender_buy_now_pay_later_details.rb +1 -3
- data/lib/square/types/terminal_refund.rb +2 -1
- data/lib/square/types/test_webhook_subscription_response.rb +5 -5
- data/lib/square/types/timecard_filter.rb +1 -1
- data/lib/square/types/transfer_order.rb +1 -3
- data/lib/square/types/transfer_order_filter.rb +1 -3
- data/lib/square/types/transfer_order_goods_receipt.rb +1 -3
- data/lib/square/types/update_booking_custom_attribute_definition_response.rb +4 -4
- data/lib/square/types/update_customer_custom_attribute_definition_response.rb +4 -4
- data/lib/square/types/update_location_custom_attribute_definition_response.rb +4 -4
- data/lib/square/types/update_merchant_custom_attribute_definition_response.rb +4 -4
- data/lib/square/types/update_order_custom_attribute_definition_response.rb +1 -3
- data/lib/square/types/update_transfer_order_data.rb +1 -3
- data/lib/square/types/update_webhook_subscription_response.rb +2 -1
- data/lib/square/types/update_webhook_subscription_signature_key_response.rb +3 -1
- data/lib/square/types/upsert_booking_custom_attribute_response.rb +2 -1
- data/lib/square/types/upsert_catalog_object_response.rb +1 -3
- data/lib/square/types/upsert_customer_custom_attribute_response.rb +2 -1
- data/lib/square/types/upsert_location_custom_attribute_response.rb +2 -1
- data/lib/square/types/upsert_merchant_custom_attribute_response.rb +2 -1
- data/lib/square/types/v_1_get_payment_request.rb +23 -0
- data/lib/square/types/v_1_get_settlement_request.rb +23 -0
- data/lib/square/types/v_1_order.rb +1 -3
- data/lib/square/types/vendor_created_event_object_operation.rb +23 -0
- data/lib/square/types/vendor_updated_event_object_operation.rb +23 -0
- data/lib/square/types/wage_setting.rb +1 -3
- data/lib/square/v_1_transactions/client.rb +72 -29
- data/lib/square/vendors/client.rb +126 -51
- data/lib/square/vendors/types/batch_update_vendors_request.rb +1 -3
- data/lib/square/version.rb +1 -1
- data/lib/square/webhooks/client.rb +3 -1
- data/lib/square/webhooks/event_types/client.rb +25 -14
- data/lib/square/webhooks/subscriptions/client.rb +164 -69
- data/lib/square.rb +57 -5
- data/lib/square_legacy/utilities/webhooks_helper.rb +1 -1
- data/reference.md +29588 -0
- data/wiremock/docker-compose.test.yml +14 -0
- data/wiremock/wiremock-mappings.json +1 -0
- metadata +69 -45
- data/lib/square/mobile/client.rb +0 -50
- data/lib/square/mobile/types/create_mobile_authorization_code_request.rb +0 -11
- data/lib/square/types/create_mobile_authorization_code_response.rb +0 -13
- data/test/square/integration/client_tests/test_cash_drawers.rb +0 -27
- data/test/square/integration/client_tests/test_catalog.rb +0 -704
- data/test/square/integration/client_tests/test_customers.rb +0 -65
- data/test/square/integration/client_tests/test_customers_groups.rb +0 -144
- data/test/square/integration/client_tests/test_customers_segments.rb +0 -36
- data/test/square/integration/client_tests/test_devices.rb +0 -67
- data/test/square/integration/client_tests/test_inventory.rb +0 -28
- data/test/square/integration/client_tests/test_locations.rb +0 -18
- data/test/square/integration/client_tests/test_merchants.rb +0 -40
- data/test/square/integration/client_tests/test_mobile.rb +0 -21
- data/test/square/integration/client_tests/test_orders.rb +0 -177
- data/test/square/integration/client_tests/test_payments.rb +0 -167
- data/test/square/integration/client_tests/test_refunds.rb +0 -133
- data/test/square/integration/client_tests/test_team_members.rb +0 -97
- data/test/square/integration/client_tests/test_terminal.rb +0 -107
- data/test/square/integration/integration_test_base.rb +0 -16
- data/test/square/integration/testdata/image.jpeg +0 -0
- data/test/square/internal/multipart/test_form_data.rb +0 -311
- data/test/square/internal/types/test_array.rb +0 -37
- data/test/square/internal/types/test_boolean.rb +0 -35
- data/test/square/internal/types/test_enum.rb +0 -42
- data/test/square/internal/types/test_hash.rb +0 -50
- data/test/square/internal/types/test_model.rb +0 -105
- data/test/square/internal/types/test_union.rb +0 -52
- data/test/square/internal/types/test_utils.rb +0 -216
- data/test/square_legacy/api/api_test_base.rb +0 -27
- data/test/square_legacy/api/test_catalog_api.rb +0 -57
- data/test/square_legacy/api/test_customers_api.rb +0 -43
- data/test/square_legacy/api/test_employees_api.rb +0 -34
- data/test/square_legacy/api/test_labor_api.rb +0 -82
- data/test/square_legacy/api/test_locations_api.rb +0 -22
- data/test/square_legacy/api/test_merchants_api.rb +0 -38
- data/test/square_legacy/api/test_payments_api.rb +0 -40
- data/test/square_legacy/api/test_refunds_api.rb +0 -42
- data/test/square_legacy/http_response_catcher.rb +0 -14
- data/test/square_legacy/webhooks/test_webhooks_helper.rb +0 -153
- data/test/test_helper.rb +0 -123
|
@@ -3,7 +3,9 @@
|
|
|
3
3
|
module Square
|
|
4
4
|
module Invoices
|
|
5
5
|
class Client
|
|
6
|
-
# @
|
|
6
|
+
# @param client [Square::Internal::Http::RawClient]
|
|
7
|
+
#
|
|
8
|
+
# @return [void]
|
|
7
9
|
def initialize(client:)
|
|
8
10
|
@client = client
|
|
9
11
|
end
|
|
@@ -12,32 +14,52 @@ module Square
|
|
|
12
14
|
# is paginated. If truncated, the response includes a `cursor` that you
|
|
13
15
|
# use in a subsequent request to retrieve the next set of invoices.
|
|
14
16
|
#
|
|
17
|
+
# @param request_options [Hash]
|
|
18
|
+
# @param params [Hash]
|
|
19
|
+
# @option request_options [String] :base_url
|
|
20
|
+
# @option request_options [Hash{String => Object}] :additional_headers
|
|
21
|
+
# @option request_options [Hash{String => Object}] :additional_query_parameters
|
|
22
|
+
# @option request_options [Hash{String => Object}] :additional_body_parameters
|
|
23
|
+
# @option request_options [Integer] :timeout_in_seconds
|
|
24
|
+
# @option params [String] :location_id
|
|
25
|
+
# @option params [String, nil] :cursor
|
|
26
|
+
# @option params [Integer, nil] :limit
|
|
27
|
+
#
|
|
15
28
|
# @return [Square::Types::ListInvoicesResponse]
|
|
16
29
|
def list(request_options: {}, **params)
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
].
|
|
21
|
-
|
|
22
|
-
params.
|
|
30
|
+
params = Square::Internal::Types::Utils.normalize_keys(params)
|
|
31
|
+
query_param_names = %i[location_id cursor limit]
|
|
32
|
+
query_params = {}
|
|
33
|
+
query_params["location_id"] = params[:location_id] if params.key?(:location_id)
|
|
34
|
+
query_params["cursor"] = params[:cursor] if params.key?(:cursor)
|
|
35
|
+
query_params["limit"] = params[:limit] if params.key?(:limit)
|
|
36
|
+
params.except(*query_param_names)
|
|
23
37
|
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
38
|
+
Square::Internal::CursorItemIterator.new(
|
|
39
|
+
cursor_field: :cursor,
|
|
40
|
+
item_field: :invoices,
|
|
41
|
+
initial_cursor: query_params[:cursor]
|
|
42
|
+
) do |next_cursor|
|
|
43
|
+
query_params[:cursor] = next_cursor
|
|
44
|
+
request = Square::Internal::JSON::Request.new(
|
|
45
|
+
base_url: request_options[:base_url],
|
|
46
|
+
method: "GET",
|
|
47
|
+
path: "v2/invoices",
|
|
48
|
+
query: query_params,
|
|
49
|
+
request_options: request_options
|
|
50
|
+
)
|
|
51
|
+
begin
|
|
52
|
+
response = @client.send(request)
|
|
53
|
+
rescue Net::HTTPRequestTimeout
|
|
54
|
+
raise Square::Errors::TimeoutError
|
|
55
|
+
end
|
|
56
|
+
code = response.code.to_i
|
|
57
|
+
if code.between?(200, 299)
|
|
58
|
+
Square::Types::ListInvoicesResponse.load(response.body)
|
|
59
|
+
else
|
|
60
|
+
error_class = Square::Errors::ResponseError.subclass_for_code(code)
|
|
61
|
+
raise error_class.new(response.body, code: code)
|
|
62
|
+
end
|
|
41
63
|
end
|
|
42
64
|
end
|
|
43
65
|
|
|
@@ -45,27 +67,38 @@ module Square
|
|
|
45
67
|
# for an order created using the Orders API.
|
|
46
68
|
#
|
|
47
69
|
# A draft invoice remains in your account and no action is taken.
|
|
48
|
-
# You must publish the invoice before Square can process it (send it to the customer's email address or charge the
|
|
70
|
+
# You must publish the invoice before Square can process it (send it to the customer's email address or charge the
|
|
71
|
+
# customer’s card on file).
|
|
72
|
+
#
|
|
73
|
+
# @param request_options [Hash]
|
|
74
|
+
# @param params [Square::Invoices::Types::CreateInvoiceRequest]
|
|
75
|
+
# @option request_options [String] :base_url
|
|
76
|
+
# @option request_options [Hash{String => Object}] :additional_headers
|
|
77
|
+
# @option request_options [Hash{String => Object}] :additional_query_parameters
|
|
78
|
+
# @option request_options [Hash{String => Object}] :additional_body_parameters
|
|
79
|
+
# @option request_options [Integer] :timeout_in_seconds
|
|
49
80
|
#
|
|
50
81
|
# @return [Square::Types::CreateInvoiceResponse]
|
|
51
82
|
def create(request_options: {}, **params)
|
|
52
|
-
|
|
53
|
-
|
|
83
|
+
params = Square::Internal::Types::Utils.normalize_keys(params)
|
|
84
|
+
request = Square::Internal::JSON::Request.new(
|
|
85
|
+
base_url: request_options[:base_url],
|
|
54
86
|
method: "POST",
|
|
55
87
|
path: "v2/invoices",
|
|
56
|
-
body: params
|
|
88
|
+
body: Square::Invoices::Types::CreateInvoiceRequest.new(params).to_h,
|
|
89
|
+
request_options: request_options
|
|
57
90
|
)
|
|
58
91
|
begin
|
|
59
|
-
|
|
92
|
+
response = @client.send(request)
|
|
60
93
|
rescue Net::HTTPRequestTimeout
|
|
61
94
|
raise Square::Errors::TimeoutError
|
|
62
95
|
end
|
|
63
|
-
code =
|
|
96
|
+
code = response.code.to_i
|
|
64
97
|
if code.between?(200, 299)
|
|
65
|
-
Square::Types::CreateInvoiceResponse.load(
|
|
98
|
+
Square::Types::CreateInvoiceResponse.load(response.body)
|
|
66
99
|
else
|
|
67
100
|
error_class = Square::Errors::ResponseError.subclass_for_code(code)
|
|
68
|
-
raise error_class.new(
|
|
101
|
+
raise error_class.new(response.body, code: code)
|
|
69
102
|
end
|
|
70
103
|
end
|
|
71
104
|
|
|
@@ -77,48 +110,69 @@ module Square
|
|
|
77
110
|
# The response is paginated. If truncated, the response includes a `cursor`
|
|
78
111
|
# that you use in a subsequent request to retrieve the next set of invoices.
|
|
79
112
|
#
|
|
113
|
+
# @param request_options [Hash]
|
|
114
|
+
# @param params [Square::Invoices::Types::SearchInvoicesRequest]
|
|
115
|
+
# @option request_options [String] :base_url
|
|
116
|
+
# @option request_options [Hash{String => Object}] :additional_headers
|
|
117
|
+
# @option request_options [Hash{String => Object}] :additional_query_parameters
|
|
118
|
+
# @option request_options [Hash{String => Object}] :additional_body_parameters
|
|
119
|
+
# @option request_options [Integer] :timeout_in_seconds
|
|
120
|
+
#
|
|
80
121
|
# @return [Square::Types::SearchInvoicesResponse]
|
|
81
122
|
def search(request_options: {}, **params)
|
|
82
|
-
|
|
83
|
-
|
|
123
|
+
params = Square::Internal::Types::Utils.normalize_keys(params)
|
|
124
|
+
request = Square::Internal::JSON::Request.new(
|
|
125
|
+
base_url: request_options[:base_url],
|
|
84
126
|
method: "POST",
|
|
85
127
|
path: "v2/invoices/search",
|
|
86
|
-
body: params
|
|
128
|
+
body: Square::Invoices::Types::SearchInvoicesRequest.new(params).to_h,
|
|
129
|
+
request_options: request_options
|
|
87
130
|
)
|
|
88
131
|
begin
|
|
89
|
-
|
|
132
|
+
response = @client.send(request)
|
|
90
133
|
rescue Net::HTTPRequestTimeout
|
|
91
134
|
raise Square::Errors::TimeoutError
|
|
92
135
|
end
|
|
93
|
-
code =
|
|
136
|
+
code = response.code.to_i
|
|
94
137
|
if code.between?(200, 299)
|
|
95
|
-
Square::Types::SearchInvoicesResponse.load(
|
|
138
|
+
Square::Types::SearchInvoicesResponse.load(response.body)
|
|
96
139
|
else
|
|
97
140
|
error_class = Square::Errors::ResponseError.subclass_for_code(code)
|
|
98
|
-
raise error_class.new(
|
|
141
|
+
raise error_class.new(response.body, code: code)
|
|
99
142
|
end
|
|
100
143
|
end
|
|
101
144
|
|
|
102
145
|
# Retrieves an invoice by invoice ID.
|
|
103
146
|
#
|
|
147
|
+
# @param request_options [Hash]
|
|
148
|
+
# @param params [Hash]
|
|
149
|
+
# @option request_options [String] :base_url
|
|
150
|
+
# @option request_options [Hash{String => Object}] :additional_headers
|
|
151
|
+
# @option request_options [Hash{String => Object}] :additional_query_parameters
|
|
152
|
+
# @option request_options [Hash{String => Object}] :additional_body_parameters
|
|
153
|
+
# @option request_options [Integer] :timeout_in_seconds
|
|
154
|
+
# @option params [String] :invoice_id
|
|
155
|
+
#
|
|
104
156
|
# @return [Square::Types::GetInvoiceResponse]
|
|
105
157
|
def get(request_options: {}, **params)
|
|
106
|
-
|
|
107
|
-
|
|
158
|
+
params = Square::Internal::Types::Utils.normalize_keys(params)
|
|
159
|
+
request = Square::Internal::JSON::Request.new(
|
|
160
|
+
base_url: request_options[:base_url],
|
|
108
161
|
method: "GET",
|
|
109
|
-
path: "v2/invoices/#{params[:invoice_id]}"
|
|
162
|
+
path: "v2/invoices/#{params[:invoice_id]}",
|
|
163
|
+
request_options: request_options
|
|
110
164
|
)
|
|
111
165
|
begin
|
|
112
|
-
|
|
166
|
+
response = @client.send(request)
|
|
113
167
|
rescue Net::HTTPRequestTimeout
|
|
114
168
|
raise Square::Errors::TimeoutError
|
|
115
169
|
end
|
|
116
|
-
code =
|
|
170
|
+
code = response.code.to_i
|
|
117
171
|
if code.between?(200, 299)
|
|
118
|
-
Square::Types::GetInvoiceResponse.load(
|
|
172
|
+
Square::Types::GetInvoiceResponse.load(response.body)
|
|
119
173
|
else
|
|
120
174
|
error_class = Square::Errors::ResponseError.subclass_for_code(code)
|
|
121
|
-
raise error_class.new(
|
|
175
|
+
raise error_class.new(response.body, code: code)
|
|
122
176
|
end
|
|
123
177
|
end
|
|
124
178
|
|
|
@@ -127,27 +181,40 @@ module Square
|
|
|
127
181
|
# Some restrictions apply to updating invoices. For example, you cannot change the
|
|
128
182
|
# `order_id` or `location_id` field.
|
|
129
183
|
#
|
|
184
|
+
# @param request_options [Hash]
|
|
185
|
+
# @param params [Square::Invoices::Types::UpdateInvoiceRequest]
|
|
186
|
+
# @option request_options [String] :base_url
|
|
187
|
+
# @option request_options [Hash{String => Object}] :additional_headers
|
|
188
|
+
# @option request_options [Hash{String => Object}] :additional_query_parameters
|
|
189
|
+
# @option request_options [Hash{String => Object}] :additional_body_parameters
|
|
190
|
+
# @option request_options [Integer] :timeout_in_seconds
|
|
191
|
+
# @option params [String] :invoice_id
|
|
192
|
+
#
|
|
130
193
|
# @return [Square::Types::UpdateInvoiceResponse]
|
|
131
194
|
def update(request_options: {}, **params)
|
|
132
|
-
|
|
195
|
+
params = Square::Internal::Types::Utils.normalize_keys(params)
|
|
196
|
+
request_data = Square::Invoices::Types::UpdateInvoiceRequest.new(params).to_h
|
|
197
|
+
non_body_param_names = ["invoice_id"]
|
|
198
|
+
body = request_data.except(*non_body_param_names)
|
|
133
199
|
|
|
134
|
-
|
|
135
|
-
base_url: request_options[:base_url]
|
|
200
|
+
request = Square::Internal::JSON::Request.new(
|
|
201
|
+
base_url: request_options[:base_url],
|
|
136
202
|
method: "PUT",
|
|
137
203
|
path: "v2/invoices/#{params[:invoice_id]}",
|
|
138
|
-
body:
|
|
204
|
+
body: body,
|
|
205
|
+
request_options: request_options
|
|
139
206
|
)
|
|
140
207
|
begin
|
|
141
|
-
|
|
208
|
+
response = @client.send(request)
|
|
142
209
|
rescue Net::HTTPRequestTimeout
|
|
143
210
|
raise Square::Errors::TimeoutError
|
|
144
211
|
end
|
|
145
|
-
code =
|
|
212
|
+
code = response.code.to_i
|
|
146
213
|
if code.between?(200, 299)
|
|
147
|
-
Square::Types::UpdateInvoiceResponse.load(
|
|
214
|
+
Square::Types::UpdateInvoiceResponse.load(response.body)
|
|
148
215
|
else
|
|
149
216
|
error_class = Square::Errors::ResponseError.subclass_for_code(code)
|
|
150
|
-
raise error_class.new(
|
|
217
|
+
raise error_class.new(response.body, code: code)
|
|
151
218
|
end
|
|
152
219
|
end
|
|
153
220
|
|
|
@@ -155,32 +222,42 @@ module Square
|
|
|
155
222
|
# associated order status changes to CANCELED. You can only delete a draft
|
|
156
223
|
# invoice (you cannot delete a published invoice, including one that is scheduled for processing).
|
|
157
224
|
#
|
|
225
|
+
# @param request_options [Hash]
|
|
226
|
+
# @param params [Hash]
|
|
227
|
+
# @option request_options [String] :base_url
|
|
228
|
+
# @option request_options [Hash{String => Object}] :additional_headers
|
|
229
|
+
# @option request_options [Hash{String => Object}] :additional_query_parameters
|
|
230
|
+
# @option request_options [Hash{String => Object}] :additional_body_parameters
|
|
231
|
+
# @option request_options [Integer] :timeout_in_seconds
|
|
232
|
+
# @option params [String] :invoice_id
|
|
233
|
+
# @option params [Integer, nil] :version
|
|
234
|
+
#
|
|
158
235
|
# @return [Square::Types::DeleteInvoiceResponse]
|
|
159
236
|
def delete(request_options: {}, **params)
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
].
|
|
164
|
-
|
|
165
|
-
params = params.except(*_query_param_names)
|
|
237
|
+
params = Square::Internal::Types::Utils.normalize_keys(params)
|
|
238
|
+
query_param_names = %i[version]
|
|
239
|
+
query_params = {}
|
|
240
|
+
query_params["version"] = params[:version] if params.key?(:version)
|
|
241
|
+
params = params.except(*query_param_names)
|
|
166
242
|
|
|
167
|
-
|
|
168
|
-
base_url: request_options[:base_url]
|
|
243
|
+
request = Square::Internal::JSON::Request.new(
|
|
244
|
+
base_url: request_options[:base_url],
|
|
169
245
|
method: "DELETE",
|
|
170
246
|
path: "v2/invoices/#{params[:invoice_id]}",
|
|
171
|
-
query:
|
|
247
|
+
query: query_params,
|
|
248
|
+
request_options: request_options
|
|
172
249
|
)
|
|
173
250
|
begin
|
|
174
|
-
|
|
251
|
+
response = @client.send(request)
|
|
175
252
|
rescue Net::HTTPRequestTimeout
|
|
176
253
|
raise Square::Errors::TimeoutError
|
|
177
254
|
end
|
|
178
|
-
code =
|
|
255
|
+
code = response.code.to_i
|
|
179
256
|
if code.between?(200, 299)
|
|
180
|
-
Square::Types::DeleteInvoiceResponse.load(
|
|
257
|
+
Square::Types::DeleteInvoiceResponse.load(response.body)
|
|
181
258
|
else
|
|
182
259
|
error_class = Square::Errors::ResponseError.subclass_for_code(code)
|
|
183
|
-
raise error_class.new(
|
|
260
|
+
raise error_class.new(response.body, code: code)
|
|
184
261
|
end
|
|
185
262
|
end
|
|
186
263
|
|
|
@@ -188,13 +265,24 @@ module Square
|
|
|
188
265
|
# with a JSON `request` part and a `file` part. The `file` part must be a `readable stream` that contains a file
|
|
189
266
|
# in a supported format: GIF, JPEG, PNG, TIFF, BMP, or PDF.
|
|
190
267
|
#
|
|
191
|
-
# Invoices can have up to 10 attachments with a total file size of 25 MB. Attachments can be added only to
|
|
268
|
+
# Invoices can have up to 10 attachments with a total file size of 25 MB. Attachments can be added only to
|
|
269
|
+
# invoices
|
|
192
270
|
# in the `DRAFT`, `SCHEDULED`, `UNPAID`, or `PARTIALLY_PAID` state.
|
|
193
271
|
#
|
|
194
272
|
# __NOTE:__ When testing in the Sandbox environment, the total file size is limited to 1 KB.
|
|
195
273
|
#
|
|
274
|
+
# @param request_options [Hash]
|
|
275
|
+
# @param params [void]
|
|
276
|
+
# @option request_options [String] :base_url
|
|
277
|
+
# @option request_options [Hash{String => Object}] :additional_headers
|
|
278
|
+
# @option request_options [Hash{String => Object}] :additional_query_parameters
|
|
279
|
+
# @option request_options [Hash{String => Object}] :additional_body_parameters
|
|
280
|
+
# @option request_options [Integer] :timeout_in_seconds
|
|
281
|
+
# @option params [String] :invoice_id
|
|
282
|
+
#
|
|
196
283
|
# @return [Square::Types::CreateInvoiceAttachmentResponse]
|
|
197
284
|
def create_invoice_attachment(request_options: {}, **params)
|
|
285
|
+
params = Square::Internal::Types::Utils.normalize_keys(params)
|
|
198
286
|
body = Internal::Multipart::FormData.new
|
|
199
287
|
|
|
200
288
|
if params[:request]
|
|
@@ -206,75 +294,103 @@ module Square
|
|
|
206
294
|
end
|
|
207
295
|
body.add_part(params[:image_file].to_form_data_part(name: "image_file")) if params[:image_file]
|
|
208
296
|
|
|
209
|
-
|
|
210
|
-
|
|
297
|
+
request = Square::Internal::Multipart::Request.new(
|
|
298
|
+
base_url: request_options[:base_url],
|
|
299
|
+
method: "POST",
|
|
211
300
|
path: "v2/invoices/#{params[:invoice_id]}/attachments",
|
|
212
|
-
body: body
|
|
301
|
+
body: body,
|
|
302
|
+
request_options: request_options
|
|
213
303
|
)
|
|
214
304
|
begin
|
|
215
|
-
|
|
305
|
+
response = @client.send(request)
|
|
216
306
|
rescue Net::HTTPRequestTimeout
|
|
217
307
|
raise Square::Errors::TimeoutError
|
|
218
308
|
end
|
|
219
|
-
code =
|
|
309
|
+
code = response.code.to_i
|
|
220
310
|
if code.between?(200, 299)
|
|
221
|
-
Square::Types::CreateInvoiceAttachmentResponse.load(
|
|
311
|
+
Square::Types::CreateInvoiceAttachmentResponse.load(response.body)
|
|
222
312
|
else
|
|
223
313
|
error_class = Square::Errors::ResponseError.subclass_for_code(code)
|
|
224
|
-
raise error_class.new(
|
|
314
|
+
raise error_class.new(response.body, code: code)
|
|
225
315
|
end
|
|
226
316
|
end
|
|
227
317
|
|
|
228
318
|
# Removes an attachment from an invoice and permanently deletes the file. Attachments can be removed only
|
|
229
319
|
# from invoices in the `DRAFT`, `SCHEDULED`, `UNPAID`, or `PARTIALLY_PAID` state.
|
|
230
320
|
#
|
|
321
|
+
# @param request_options [Hash]
|
|
322
|
+
# @param params [Hash]
|
|
323
|
+
# @option request_options [String] :base_url
|
|
324
|
+
# @option request_options [Hash{String => Object}] :additional_headers
|
|
325
|
+
# @option request_options [Hash{String => Object}] :additional_query_parameters
|
|
326
|
+
# @option request_options [Hash{String => Object}] :additional_body_parameters
|
|
327
|
+
# @option request_options [Integer] :timeout_in_seconds
|
|
328
|
+
# @option params [String] :invoice_id
|
|
329
|
+
# @option params [String] :attachment_id
|
|
330
|
+
#
|
|
231
331
|
# @return [Square::Types::DeleteInvoiceAttachmentResponse]
|
|
232
332
|
def delete_invoice_attachment(request_options: {}, **params)
|
|
233
|
-
|
|
234
|
-
|
|
333
|
+
params = Square::Internal::Types::Utils.normalize_keys(params)
|
|
334
|
+
request = Square::Internal::JSON::Request.new(
|
|
335
|
+
base_url: request_options[:base_url],
|
|
235
336
|
method: "DELETE",
|
|
236
|
-
path: "v2/invoices/#{params[:invoice_id]}/attachments/#{params[:attachment_id]}"
|
|
337
|
+
path: "v2/invoices/#{params[:invoice_id]}/attachments/#{params[:attachment_id]}",
|
|
338
|
+
request_options: request_options
|
|
237
339
|
)
|
|
238
340
|
begin
|
|
239
|
-
|
|
341
|
+
response = @client.send(request)
|
|
240
342
|
rescue Net::HTTPRequestTimeout
|
|
241
343
|
raise Square::Errors::TimeoutError
|
|
242
344
|
end
|
|
243
|
-
code =
|
|
345
|
+
code = response.code.to_i
|
|
244
346
|
if code.between?(200, 299)
|
|
245
|
-
Square::Types::DeleteInvoiceAttachmentResponse.load(
|
|
347
|
+
Square::Types::DeleteInvoiceAttachmentResponse.load(response.body)
|
|
246
348
|
else
|
|
247
349
|
error_class = Square::Errors::ResponseError.subclass_for_code(code)
|
|
248
|
-
raise error_class.new(
|
|
350
|
+
raise error_class.new(response.body, code: code)
|
|
249
351
|
end
|
|
250
352
|
end
|
|
251
353
|
|
|
252
354
|
# Cancels an invoice. The seller cannot collect payments for
|
|
253
355
|
# the canceled invoice.
|
|
254
356
|
#
|
|
255
|
-
# You cannot cancel an invoice in the `DRAFT` state or in a terminal state: `PAID`, `REFUNDED`, `CANCELED`, or
|
|
357
|
+
# You cannot cancel an invoice in the `DRAFT` state or in a terminal state: `PAID`, `REFUNDED`, `CANCELED`, or
|
|
358
|
+
# `FAILED`.
|
|
359
|
+
#
|
|
360
|
+
# @param request_options [Hash]
|
|
361
|
+
# @param params [Square::Invoices::Types::CancelInvoiceRequest]
|
|
362
|
+
# @option request_options [String] :base_url
|
|
363
|
+
# @option request_options [Hash{String => Object}] :additional_headers
|
|
364
|
+
# @option request_options [Hash{String => Object}] :additional_query_parameters
|
|
365
|
+
# @option request_options [Hash{String => Object}] :additional_body_parameters
|
|
366
|
+
# @option request_options [Integer] :timeout_in_seconds
|
|
367
|
+
# @option params [String] :invoice_id
|
|
256
368
|
#
|
|
257
369
|
# @return [Square::Types::CancelInvoiceResponse]
|
|
258
370
|
def cancel(request_options: {}, **params)
|
|
259
|
-
|
|
371
|
+
params = Square::Internal::Types::Utils.normalize_keys(params)
|
|
372
|
+
request_data = Square::Invoices::Types::CancelInvoiceRequest.new(params).to_h
|
|
373
|
+
non_body_param_names = ["invoice_id"]
|
|
374
|
+
body = request_data.except(*non_body_param_names)
|
|
260
375
|
|
|
261
|
-
|
|
262
|
-
base_url: request_options[:base_url]
|
|
376
|
+
request = Square::Internal::JSON::Request.new(
|
|
377
|
+
base_url: request_options[:base_url],
|
|
263
378
|
method: "POST",
|
|
264
379
|
path: "v2/invoices/#{params[:invoice_id]}/cancel",
|
|
265
|
-
body:
|
|
380
|
+
body: body,
|
|
381
|
+
request_options: request_options
|
|
266
382
|
)
|
|
267
383
|
begin
|
|
268
|
-
|
|
384
|
+
response = @client.send(request)
|
|
269
385
|
rescue Net::HTTPRequestTimeout
|
|
270
386
|
raise Square::Errors::TimeoutError
|
|
271
387
|
end
|
|
272
|
-
code =
|
|
388
|
+
code = response.code.to_i
|
|
273
389
|
if code.between?(200, 299)
|
|
274
|
-
Square::Types::CancelInvoiceResponse.load(
|
|
390
|
+
Square::Types::CancelInvoiceResponse.load(response.body)
|
|
275
391
|
else
|
|
276
392
|
error_class = Square::Errors::ResponseError.subclass_for_code(code)
|
|
277
|
-
raise error_class.new(
|
|
393
|
+
raise error_class.new(response.body, code: code)
|
|
278
394
|
end
|
|
279
395
|
end
|
|
280
396
|
|
|
@@ -293,27 +409,40 @@ module Square
|
|
|
293
409
|
# In addition to the required `ORDERS_WRITE` and `INVOICES_WRITE` permissions, `CUSTOMERS_READ`
|
|
294
410
|
# and `PAYMENTS_WRITE` are required when publishing invoices configured for card-on-file payments.
|
|
295
411
|
#
|
|
412
|
+
# @param request_options [Hash]
|
|
413
|
+
# @param params [Square::Invoices::Types::PublishInvoiceRequest]
|
|
414
|
+
# @option request_options [String] :base_url
|
|
415
|
+
# @option request_options [Hash{String => Object}] :additional_headers
|
|
416
|
+
# @option request_options [Hash{String => Object}] :additional_query_parameters
|
|
417
|
+
# @option request_options [Hash{String => Object}] :additional_body_parameters
|
|
418
|
+
# @option request_options [Integer] :timeout_in_seconds
|
|
419
|
+
# @option params [String] :invoice_id
|
|
420
|
+
#
|
|
296
421
|
# @return [Square::Types::PublishInvoiceResponse]
|
|
297
422
|
def publish(request_options: {}, **params)
|
|
298
|
-
|
|
423
|
+
params = Square::Internal::Types::Utils.normalize_keys(params)
|
|
424
|
+
request_data = Square::Invoices::Types::PublishInvoiceRequest.new(params).to_h
|
|
425
|
+
non_body_param_names = ["invoice_id"]
|
|
426
|
+
body = request_data.except(*non_body_param_names)
|
|
299
427
|
|
|
300
|
-
|
|
301
|
-
base_url: request_options[:base_url]
|
|
428
|
+
request = Square::Internal::JSON::Request.new(
|
|
429
|
+
base_url: request_options[:base_url],
|
|
302
430
|
method: "POST",
|
|
303
431
|
path: "v2/invoices/#{params[:invoice_id]}/publish",
|
|
304
|
-
body:
|
|
432
|
+
body: body,
|
|
433
|
+
request_options: request_options
|
|
305
434
|
)
|
|
306
435
|
begin
|
|
307
|
-
|
|
436
|
+
response = @client.send(request)
|
|
308
437
|
rescue Net::HTTPRequestTimeout
|
|
309
438
|
raise Square::Errors::TimeoutError
|
|
310
439
|
end
|
|
311
|
-
code =
|
|
440
|
+
code = response.code.to_i
|
|
312
441
|
if code.between?(200, 299)
|
|
313
|
-
Square::Types::PublishInvoiceResponse.load(
|
|
442
|
+
Square::Types::PublishInvoiceResponse.load(response.body)
|
|
314
443
|
else
|
|
315
444
|
error_class = Square::Errors::ResponseError.subclass_for_code(code)
|
|
316
|
-
raise error_class.new(
|
|
445
|
+
raise error_class.new(response.body, code: code)
|
|
317
446
|
end
|
|
318
447
|
end
|
|
319
448
|
end
|