diff --git a/.codeboarding/API Service Modules.md b/.codeboarding/API Service Modules.md
new file mode 100644
index 00000000..bcd05f6b
--- /dev/null
+++ b/.codeboarding/API Service Modules.md
@@ -0,0 +1,231 @@
+```mermaid
+graph LR
+ OAuth_Management["OAuth Management"]
+ Payments_Processing["Payments Processing"]
+ Bookings_Management["Bookings Management"]
+ Catalog_Management["Catalog Management"]
+ Customers_Management["Customers Management"]
+ Subscriptions_Management["Subscriptions Management"]
+ Locations_and_Transactions["Locations and Transactions"]
+ Terminal_Interactions["Terminal Interactions"]
+ Core_Utilities["Core Utilities"]
+ General_API_Clients["General API Clients"]
+ OAuth_Management -- "utilizes" --> Core_Utilities
+ Payments_Processing -- "utilizes" --> Core_Utilities
+ Bookings_Management -- "utilizes" --> Core_Utilities
+ Catalog_Management -- "utilizes" --> Core_Utilities
+ Customers_Management -- "utilizes" --> Core_Utilities
+ Subscriptions_Management -- "utilizes" --> Core_Utilities
+ Locations_and_Transactions -- "utilizes" --> Core_Utilities
+ Terminal_Interactions -- "utilizes" --> Core_Utilities
+ General_API_Clients -- "utilizes" --> Core_Utilities
+```
+[](https://github.com/CodeBoarding/GeneratedOnBoardings)[](https://www.codeboarding.org/demo)[](mailto:contact@codeboarding.org)
+
+## Component Details
+
+This graph provides an overview of the Square SDK's API service modules. These modules are organized into distinct components, each dedicated to a specific Square API category (e.g., Payments, Bookings, Customers). Each API-specific component encapsulates the business logic for interacting with its respective API endpoints. All these specialized API client components rely on a shared 'Core Utilities' component, which provides foundational functionalities such as HTTP response handling, API error processing, data serialization, and pagination.
+
+### OAuth Management
+This component provides functionalities for managing OAuth tokens, including obtaining, revoking, and retrieving token status, as well as authorizing applications. It includes both synchronous and asynchronous clients.
+
+
+**Related Classes/Methods**:
+
+- `square.o_auth.client.OAuthClient` (17:312)
+- `square.o_auth.raw_client.RawOAuthClient` (20:329)
+- `square.o_auth.client.AsyncOAuthClient` (315:642)
+- `square.o_auth.raw_client.AsyncRawOAuthClient` (332:641)
+
+
+### Payments Processing
+This component handles all payment-related operations, such as creating, listing, updating, canceling, and completing payments. It also supports canceling payments by idempotency key. Both synchronous and asynchronous interfaces are available.
+
+
+**Related Classes/Methods**:
+
+- `square.payments.client.PaymentsClient` (full file reference)
+- `square.payments.raw_client.RawPaymentsClient` (full file reference)
+- `square.payments.client.AsyncPaymentsClient` (full file reference)
+- `square.payments.raw_client.AsyncRawPaymentsClient` (full file reference)
+
+
+### Bookings Management
+This component manages booking-related functionalities, including creating, listing, updating, and canceling bookings. It also provides interfaces for searching availability, retrieving business and location booking profiles, and managing custom attributes related to bookings.
+
+
+**Related Classes/Methods**:
+
+- `square.bookings.client.BookingsClient` (full file reference)
+- `square.bookings.raw_client.RawBookingsClient` (30:494)
+- `square.bookings.custom_attribute_definitions.client.CustomAttributeDefinitionsClient` (28:335)
+- `square.bookings.custom_attributes.client.CustomAttributesClient` (30:403)
+- `square.bookings.location_profiles.client.LocationProfilesClient` (18:103)
+- `square.bookings.team_member_profiles.client.TeamMemberProfilesClient` (19:149)
+- `square.bookings.client.AsyncBookingsClient` (full file reference)
+- `square.bookings.raw_client.AsyncRawBookingsClient` (497:961)
+- `square.bookings.custom_attribute_definitions.client.AsyncCustomAttributeDefinitionsClient` (338:685)
+- `square.bookings.custom_attributes.client.AsyncCustomAttributesClient` (406:827)
+- `square.bookings.location_profiles.client.AsyncLocationProfilesClient` (106:199)
+- `square.bookings.team_member_profiles.client.AsyncTeamMemberProfilesClient` (152:298)
+- `square.bookings.custom_attribute_definitions.raw_client.RawCustomAttributeDefinitionsClient` (26:280)
+- `square.bookings.custom_attribute_definitions.raw_client.AsyncRawCustomAttributeDefinitionsClient` (283:537)
+- `square.bookings.location_profiles.raw_client.RawLocationProfilesClient` (7:9)
+- `square.bookings.location_profiles.raw_client.AsyncRawLocationProfilesClient` (12:14)
+- `square.bookings.team_member_profiles.raw_client.RawTeamMemberProfilesClient` (16:57)
+- `square.bookings.team_member_profiles.raw_client.AsyncRawTeamMemberProfilesClient` (60:101)
+- `square.bookings.custom_attributes.raw_client.RawCustomAttributesClient` (27:349)
+- `square.bookings.custom_attributes.raw_client.AsyncRawCustomAttributesClient` (352:674)
+
+
+### Catalog Management
+This component is responsible for managing a merchant's catalog, including batch operations for deleting, retrieving, and upserting catalog objects. It also provides functionalities for searching catalog items and updating item modifier lists and taxes.
+
+
+**Related Classes/Methods**:
+
+- `square.catalog.client.CatalogClient` (full file reference)
+- `square.catalog.raw_client.RawCatalogClient` (full file reference)
+- `square.catalog.images.client.ImagesClient` (19:122)
+- `square.catalog.object.client.ObjectClient` (18:213)
+- `square.catalog.client.AsyncCatalogClient` (full file reference)
+- `square.catalog.raw_client.AsyncRawCatalogClient` (full file reference)
+- `square.catalog.images.client.AsyncImagesClient` (125:246)
+- `square.catalog.object.client.AsyncObjectClient` (216:435)
+- `square.catalog.images.raw_client.RawImagesClient` (24:156)
+- `square.catalog.images.raw_client.AsyncRawImagesClient` (159:291)
+
+
+### Customers Management
+This component handles customer-related operations, such as creating, listing, updating, and deleting customer profiles. It also supports batch operations for customers, managing customer groups, segments, cards, and custom attributes.
+
+
+**Related Classes/Methods**:
+
+- `square.customers.client.CustomersClient` (full file reference)
+- `square.customers.raw_client.RawCustomersClient` (full file reference)
+- `square.customers.custom_attribute_definitions.client.CustomAttributeDefinitionsClient` (36:432)
+- `square.customers.groups.client.GroupsClient` (28:346)
+- `square.customers.segments.client.SegmentsClient` (19:143)
+- `square.customers.cards.client.CardsClient` (17:153)
+- `square.customers.custom_attributes.client.CustomAttributesClient` (26:319)
+- `square.customers.client.AsyncCustomersClient` (full file reference)
+- `square.customers.raw_client.AsyncRawCustomersClient` (full file reference)
+- `square.customers.custom_attribute_definitions.client.AsyncCustomAttributeDefinitionsClient` (435:882)
+- `square.customers.groups.client.AsyncGroupsClient` (349:723)
+- `square.customers.segments.client.AsyncSegmentsClient` (146:286)
+- `square.customers.cards.client.AsyncCardsClient` (156:308)
+- `square.customers.custom_attributes.client.AsyncCustomAttributesClient` (322:647)
+
+
+### Subscriptions Management
+This component manages customer subscriptions, including creating, updating, canceling, pausing, resuming, and swapping subscription plans. It also allows searching for subscriptions and listing subscription events.
+
+
+**Related Classes/Methods**:
+
+- `square.subscriptions.client.SubscriptionsClient` (full file reference)
+- `square.subscriptions.raw_client.RawSubscriptionsClient` (full file reference)
+- `square.subscriptions.client.AsyncSubscriptionsClient` (full file reference)
+- `square.subscriptions.raw_client.AsyncRawSubscriptionsClient` (full file reference)
+
+
+### Locations and Transactions
+This component handles operations related to business locations, including listing, creating, retrieving, and updating locations. It also provides functionalities for managing transactions and checkouts associated with locations.
+
+
+**Related Classes/Methods**:
+
+- `square.locations.client.LocationsClient` (29:429)
+- `square.locations.raw_client.RawLocationsClient` (28:375)
+- `square.locations.custom_attribute_definitions.client.CustomAttributeDefinitionsClient` (35:344)
+- `square.locations.custom_attributes.client.CustomAttributesClient` (35:431)
+- `square.locations.transactions.client.TransactionsClient` (16:228)
+- `square.locations.client.AsyncLocationsClient` (432:876)
+- `square.locations.raw_client.AsyncRawLocationsClient` (378:727)
+- `square.locations.custom_attribute_definitions.client.AsyncCustomAttributeDefinitionsClient` (347:696)
+- `square.locations.custom_attributes.client.AsyncCustomAttributesClient` (434:878)
+- `square.locations.transactions.client.AsyncTransactionsClient` (231:475)
+
+
+### Terminal Interactions
+This component facilitates interactions with Square Terminal devices, allowing for the dismissal of terminal actions, checkouts, and refunds. It provides interfaces for managing these terminal-specific operations.
+
+
+**Related Classes/Methods**:
+
+- `square.terminal.client.TerminalClient` (20:139)
+- `square.terminal.raw_client.RawTerminalClient` (18:139)
+- `square.terminal.actions.client.ActionsClient` (20:206)
+- `square.terminal.checkouts.client.CheckoutsClient` (20:199)
+- `square.terminal.refunds.client.RefundsClient` (20:198)
+- `square.terminal.client.AsyncTerminalClient` (142:285)
+- `square.terminal.raw_client.AsyncRawTerminalClient` (142:263)
+- `square.terminal.actions.client.AsyncActionsClient` (209:429)
+- `square.terminal.checkouts.client.AsyncCheckoutsClient` (202:417)
+- `square.terminal.refunds.client.AsyncRefundsClient` (201:413)
+
+
+### Core Utilities
+This foundational component provides essential utilities for the SDK, including handling unchecked base models, managing HTTP responses (both synchronous and asynchronous), processing API errors, performing serialization, encoding JSON, and facilitating pagination for list operations.
+
+
+**Related Classes/Methods**:
+
+- `square.core.unchecked_base_model.construct_type` (171:269)
+- `square.core.http_response.HttpResponse` (10:27)
+- `square.core.api_error.ApiError` (14:123)
+- `square.core.http_response.AsyncHttpResponse` (30:47)
+- `square.core.pagination.SyncPager` (37:62)
+- `square.core.pagination.AsyncPager` (65:87)
+- `square.core.serialization.convert_and_respect_annotation_metadata` (29:154)
+- `square.core.jsonable_encoder.jsonable_encoder` (31:100)
+
+
+### General API Clients
+This component groups various other top-level API clients that interact with different Square API domains, such as Webhooks, Inventory, Team Members, Orders, Cards, and Checkout. These clients provide a wide range of functionalities specific to their respective domains.
+
+
+**Related Classes/Methods**:
+
+- `square.webhooks.client.WebhooksClient` (13:29)
+- `square.webhooks.raw_client.RawWebhooksClient` (7:9)
+- `square.webhooks.event_types.client.EventTypesClient` (12:56)
+- `square.webhooks.subscriptions.client.SubscriptionsClient` (29:378)
+- `square.webhooks.client.AsyncWebhooksClient` (32:48)
+- `square.webhooks.raw_client.AsyncRawWebhooksClient` (12:14)
+- `square.webhooks.event_types.client.AsyncEventTypesClient` (59:111)
+- `square.webhooks.subscriptions.client.AsyncSubscriptionsClient` (381:788)
+- `square.inventory.client.InventoryClient` (full file reference)
+- `square.inventory.raw_client.RawInventoryClient` (full file reference)
+- `square.inventory.client.AsyncInventoryClient` (full file reference)
+- `square.inventory.raw_client.AsyncRawInventoryClient` (full file reference)
+- `square.team_members.client.TeamMembersClient` (26:419)
+- `square.team_members.raw_client.RawTeamMembersClient` (29:373)
+- `square.team_members.wage_setting.client.WageSettingClient` (17:135)
+- `square.team_members.client.AsyncTeamMembersClient` (422:869)
+- `square.team_members.raw_client.AsyncRawTeamMembersClient` (376:720)
+- `square.team_members.wage_setting.client.AsyncWageSettingClient` (138:274)
+- `square.orders.client.OrdersClient` (full file reference)
+- `square.orders.raw_client.RawOrdersClient` (full file reference)
+- `square.orders.custom_attribute_definitions.client.CustomAttributeDefinitionsClient` (27:329)
+- `square.orders.custom_attributes.client.CustomAttributesClient` (35:457)
+- `square.orders.client.AsyncOrdersClient` (full file reference)
+- `square.orders.raw_client.AsyncRawOrdersClient` (full file reference)
+- `square.orders.custom_attribute_definitions.client.AsyncCustomAttributeDefinitionsClient` (332:674)
+- `square.orders.custom_attributes.client.AsyncCustomAttributesClient` (460:930)
+- `square.cards.client.CardsClient` (26:276)
+- `square.cards.raw_client.RawCardsClient` (23:177)
+- `square.cards.client.AsyncCardsClient` (279:563)
+- `square.cards.raw_client.AsyncRawCardsClient` (180:334)
+- `square.checkout.client.CheckoutClient` (22:178)
+- `square.checkout.raw_client.RawCheckoutClient` (25:208)
+- `square.checkout.payment_links.client.PaymentLinksClient` (30:313)
+- `square.checkout.client.AsyncCheckoutClient` (181:369)
+- `square.checkout.raw_client.AsyncRawCheckoutClient` (211:394)
+- `square.checkout.payment_links.client.AsyncPaymentLinksClient` (316:641)
+
+
+
+
+### [FAQ](https://github.com/CodeBoarding/GeneratedOnBoardings/tree/main?tab=readme-ov-file#faq)
\ No newline at end of file
diff --git a/.codeboarding/Core Communication & Utilities.md b/.codeboarding/Core Communication & Utilities.md
new file mode 100644
index 00000000..da31dc8e
--- /dev/null
+++ b/.codeboarding/Core Communication & Utilities.md
@@ -0,0 +1,88 @@
+```mermaid
+graph LR
+ HTTP_Client_Core["HTTP Client Core"]
+ Client_Wrapper_Base["Client Wrapper Base"]
+ Data_Encoding_Utilities["Data Encoding & Utilities"]
+ Data_Serialization_Models["Data Serialization & Models"]
+ API_Error_Handling["API Error Handling"]
+ API_Pagination["API Pagination"]
+ Client_Wrapper_Base -- "uses" --> HTTP_Client_Core
+ Client_Wrapper_Base -- "processes data with" --> Data_Encoding_Utilities
+ Client_Wrapper_Base -- "handles data models via" --> Data_Serialization_Models
+ Client_Wrapper_Base -- "raises" --> API_Error_Handling
+ Client_Wrapper_Base -- "integrates" --> API_Pagination
+ Data_Serialization_Models -- "depends on" --> Data_Encoding_Utilities
+```
+[](https://github.com/CodeBoarding/GeneratedOnBoardings)[](https://www.codeboarding.org/demo)[](mailto:contact@codeboarding.org)
+
+## Component Details
+
+The 'Core Communication & Utilities' component serves as the foundational layer for the entire SDK, providing essential services for interacting with the Square API. Its primary purpose is to abstract the complexities of HTTP communication, data handling, error management, and pagination, allowing higher-level API-specific components to focus on business logic. This component ensures reliable and efficient data exchange, proper serialization and deserialization of various data types, and a consistent approach to error reporting and paginated results across the SDK.
+
+### HTTP Client Core
+Manages the execution of synchronous and asynchronous HTTP requests and responses, forming the lowest level of network communication within the SDK.
+
+
+**Related Classes/Methods**:
+
+- `square.core.http_client.HttpClient` (148:321)
+- `square.core.http_client.AsyncHttpClient` (324:497)
+
+
+### Client Wrapper Base
+Provides a foundational layer for all API clients, abstracting the underlying HTTP communication and integrating core utilities for request and response handling.
+
+
+**Related Classes/Methods**:
+
+- `square.core.client_wrapper.BaseClientWrapper` (9:46)
+- `square.core.client_wrapper.SyncClientWrapper` (49:65)
+- `square.core.client_wrapper.AsyncClientWrapper` (68:84)
+
+
+### Data Encoding & Utilities
+Responsible for encoding various data types, such as query parameters and file uploads, into formats suitable for HTTP requests, and provides general utility functions for data manipulation like removing None values.
+
+
+**Related Classes/Methods**:
+
+- `square.core.query_encoder` (full file reference)
+- `square.core.file` (full file reference)
+- `square.core.remove_none_from_dict` (6:11)
+- `square.core.jsonable_encoder` (31:100)
+
+
+### Data Serialization & Models
+Handles the complex serialization and deserialization of data, particularly for Pydantic models, and provides utilities for working with these models and datetime objects, ensuring data integrity and proper formatting.
+
+
+**Related Classes/Methods**:
+
+- `square.core.unchecked_base_model.UncheckedBaseModel` (36:124)
+- `square.core.serialization` (full file reference)
+- `square.core.pydantic_utilities` (full file reference)
+- `square.core.datetime_utils` (full file reference)
+
+
+### API Error Handling
+Defines the structure for API-specific errors and provides mechanisms for their handling, allowing the SDK to gracefully manage and report issues encountered during API interactions.
+
+
+**Related Classes/Methods**:
+
+- `square.core.api_error.ApiError` (14:123)
+
+
+### API Pagination
+Provides helper classes for iterating over paginated API responses, simplifying the process of retrieving large datasets from the Square API in both synchronous and asynchronous contexts.
+
+
+**Related Classes/Methods**:
+
+- `square.core.pagination.SyncPager` (37:62)
+- `square.core.pagination.AsyncPager` (65:87)
+
+
+
+
+### [FAQ](https://github.com/CodeBoarding/GeneratedOnBoardings/tree/main?tab=readme-ov-file#faq)
\ No newline at end of file
diff --git a/.codeboarding/SDK Clients.md b/.codeboarding/SDK Clients.md
new file mode 100644
index 00000000..8b2bd0d2
--- /dev/null
+++ b/.codeboarding/SDK Clients.md
@@ -0,0 +1,258 @@
+```mermaid
+graph LR
+ Legacy_SDK_Client["Legacy SDK Client"]
+ New_SDK_Synchronous_Client["New SDK Synchronous Client"]
+ New_SDK_Asynchronous_Client["New SDK Asynchronous Client"]
+ Legacy_API_Category_Modules["Legacy API Category Modules"]
+ New_SDK_Synchronous_API_Category_Clients["New SDK Synchronous API Category Clients"]
+ New_SDK_Asynchronous_API_Category_Clients["New SDK Asynchronous API Category Clients"]
+ Legacy_SDK_Core["Legacy SDK Core"]
+ New_SDK_Core["New SDK Core"]
+ Legacy_SDK_Client -- "initializes and uses" --> Legacy_API_Category_Modules
+ Legacy_SDK_Client -- "configures and authenticates with" --> Legacy_SDK_Core
+ New_SDK_Synchronous_Client -- "initializes and uses" --> New_SDK_Synchronous_API_Category_Clients
+ New_SDK_Synchronous_Client -- "uses" --> New_SDK_Core
+ New_SDK_Asynchronous_Client -- "initializes and uses" --> New_SDK_Asynchronous_API_Category_Clients
+ New_SDK_Asynchronous_Client -- "uses" --> New_SDK_Core
+ Legacy_API_Category_Modules -- "inherits from" --> Legacy_SDK_Core
+ New_SDK_Synchronous_API_Category_Clients -- "uses" --> New_SDK_Core
+ New_SDK_Asynchronous_API_Category_Clients -- "uses" --> New_SDK_Core
+```
+[](https://github.com/CodeBoarding/GeneratedOnBoardings)[](https://www.codeboarding.org/demo)[](mailto:contact@codeboarding.org)
+
+## Component Details
+
+This graph illustrates the structure and interactions within the SDK Clients subsystem, which provides the primary interfaces for interacting with the Square API. It distinguishes between legacy and modern SDK approaches, offering both synchronous and asynchronous clients for the latter. The core purpose is to aggregate various API-specific modules and manage underlying HTTP communication and authentication, enabling developers to access Square's services programmatically.
+
+### Legacy SDK Client
+This component serves as the main entry point for interacting with the Square API using the legacy SDK. It initializes and provides access to various API categories (e.g., Mobile Authorization, OAuth, V1 Transactions, etc.) as lazy-loaded properties. It also handles global configuration and OAuth2 authentication.
+
+
+**Related Classes/Methods**:
+
+- `square_legacy.client.Client` (55:269)
+- `square_legacy.client.Client:__init__` (235:269)
+- `square_legacy.client.Client:mobile_authorization` (68:69)
+- `square_legacy.client.Client:o_auth` (72:73)
+- `square_legacy.client.Client:v1_transactions` (76:77)
+- `square_legacy.client.Client:apple_pay` (80:81)
+- `square_legacy.client.Client:bank_accounts` (84:85)
+- `square_legacy.client.Client:bookings` (88:89)
+- `square_legacy.client.Client:booking_custom_attributes` (92:93)
+- `square_legacy.client.Client:cards` (96:97)
+- `square_legacy.client.Client:cash_drawers` (100:101)
+- `square_legacy.client.Client:catalog` (104:105)
+- `square_legacy.client.Client:customers` (108:109)
+- `square_legacy.client.Client:customer_custom_attributes` (112:113)
+- `square_legacy.client.Client:customer_groups` (116:117)
+- `square_legacy.client.Client:customer_segments` (120:121)
+- `square_legacy.client.Client:devices` (124:125)
+- `square_legacy.client.Client:disputes` (128:129)
+- `square_legacy.client.Client:employees` (132:133)
+- `square_legacy.client.Client:events` (136:137)
+- `square_legacy.client.Client:gift_cards` (140:141)
+- `square_legacy.client.Client:gift_card_activities` (144:145)
+- `square_legacy.client.Client:inventory` (148:149)
+- `square_legacy.client.Client:invoices` (152:153)
+- `square_legacy.client.Client:labor` (156:157)
+- `square_legacy.client.Client:locations` (160:161)
+- `square_legacy.client.Client:location_custom_attributes` (164:165)
+- `square_legacy.client.Client:checkout` (168:169)
+- `square_legacy.client.Client:transactions` (172:173)
+- `square_legacy.client.Client:loyalty` (176:177)
+- `square_legacy.client.Client:merchants` (180:181)
+- `square_legacy.client.Client:merchant_custom_attributes` (184:185)
+- `square_legacy.client.Client:orders` (188:189)
+- `square_legacy.client.Client:order_custom_attributes` (192:193)
+- `square_legacy.client.Client:payments` (196:197)
+- `square_legacy.client.Client:payouts` (200:201)
+- `square_legacy.client.Client:refunds` (204:205)
+- `square_legacy.client.Client:sites` (208:209)
+- `square_legacy.client.Client:snippets` (212:213)
+- `square_legacy.client.Client:subscriptions` (216:217)
+- `square_legacy.client.Client:team` (220:221)
+- `square_legacy.client.Client:terminal` (224:225)
+- `square_legacy.client.Client:vendors` (228:229)
+- `square_legacy.client.Client:webhook_subscriptions` (232:233)
+
+
+### New SDK Synchronous Client
+This component is the primary synchronous client for the new Square Python SDK. It provides organized access to different Square API domains (e.g., Mobile, OAuth, V1 Transactions) through dedicated client objects, leveraging a synchronous client wrapper for underlying HTTP operations.
+
+
+**Related Classes/Methods**:
+
+- `square.client.Square` (79:175)
+- `square.client.Square:__init__` (117:175)
+
+
+### New SDK Asynchronous Client
+This component is the primary asynchronous client for the new Square Python SDK. Similar to its synchronous counterpart, it offers structured access to various Square API domains, but it utilizes an asynchronous client wrapper for non-blocking HTTP requests.
+
+
+**Related Classes/Methods**:
+
+- `square.client.AsyncSquare` (178:274)
+- `square.client.AsyncSquare:__init__` (216:274)
+
+
+### Legacy API Category Modules
+These modules encapsulate the specific API endpoints and operations for different Square API categories within the legacy SDK. Each module corresponds to a distinct domain of Square's services, such as payments, customers, or catalog management.
+
+
+**Related Classes/Methods**:
+
+- `square_legacy.api.mobile_authorization_api.MobileAuthorizationApi` (13:73)
+- `square_legacy.api.o_auth_api.OAuthApi` (13:188)
+- `square_legacy.api.v1_transactions_api.V1TransactionsApi` (14:186)
+- `square_legacy.api.apple_pay_api.ApplePayApi` (13:82)
+- `square_legacy.api.bank_accounts_api.BankAccountsApi` (13:165)
+- `square_legacy.api.bookings_api.BookingsApi` (13:682)
+- `square_legacy.api.booking_custom_attributes_api.BookingCustomAttributesApi` (13:663)
+- `square_legacy.api.cards_api.CardsApi` (13:212)
+- `square_legacy.api.cash_drawers_api.CashDrawersApi` (13:195)
+- `square_legacy.api.catalog_api.CatalogApi` (14:833)
+- `square_legacy.api.customers_api.CustomersApi` (14:753)
+- `square_legacy.api.customer_custom_attributes_api.CustomerCustomAttributesApi` (13:665)
+- `square_legacy.api.customer_groups_api.CustomerGroupsApi` (13:249)
+- `square_legacy.api.customer_segments_api.CustomerSegmentsApi` (13:114)
+- `square_legacy.api.devices_api.DevicesApi` (13:270)
+- `square_legacy.api.disputes_api.DisputesApi` (14:469)
+- `square_legacy.api.employees_api.EmployeesApi` (14:117)
+- `square_legacy.api.events_api.EventsApi` (13:172)
+- `square_legacy.api.gift_cards_api.GiftCardsApi` (13:379)
+- `square_legacy.api.gift_card_activities_api.GiftCardActivitiesApi` (13:172)
+- `square_legacy.api.inventory_api.InventoryApi` (14:661)
+- `square_legacy.api.invoices_api.InvoicesApi` (14:561)
+- `square_legacy.api.labor_api.LaborApi` (14:796)
+- `square_legacy.api.locations_api.LocationsApi` (13:203)
+- `square_legacy.api.location_custom_attributes_api.LocationCustomAttributesApi` (13:703)
+- `square_legacy.api.checkout_api.CheckoutApi` (14:479)
+- `square_legacy.api.transactions_api.TransactionsApi` (14:252)
+- `square_legacy.api.loyalty_api.LoyaltyApi` (14:989)
+- `square_legacy.api.merchants_api.MerchantsApi` (13:111)
+- `square_legacy.api.merchant_custom_attributes_api.MerchantCustomAttributesApi` (13:703)
+- `square_legacy.api.orders_api.OrdersApi` (13:444)
+- `square_legacy.api.order_custom_attributes_api.OrderCustomAttributesApi` (13:714)
+- `square_legacy.api.payments_api.PaymentsApi` (13:469)
+- `square_legacy.api.payouts_api.PayoutsApi` (13:220)
+- `square_legacy.api.refunds_api.RefundsApi` (14:239)
+- `square_legacy.api.sites_api.SitesApi` (13:55)
+- `square_legacy.api.snippets_api.SnippetsApi` (13:175)
+- `square_legacy.api.subscriptions_api.SubscriptionsApi` (13:637)
+- `square_legacy.api.team_api.TeamApi` (13:617)
+- `square_legacy.api.terminal_api.TerminalApi` (13:673)
+- `square_legacy.api.vendors_api.VendorsApi` (13:332)
+- `square_legacy.api.webhook_subscriptions_api.WebhookSubscriptionsApi` (13:405)
+
+
+### New SDK Synchronous API Category Clients
+These modules represent the synchronous client interfaces for specific API categories in the new SDK. They provide methods to interact with various Square API functionalities in a blocking manner.
+
+
+**Related Classes/Methods**:
+
+- `square.mobile.client.MobileClient` (15:75)
+- `square.o_auth.client.OAuthClient` (17:312)
+- `square.v1transactions.client.V1TransactionsClient` (17:190)
+- `square.apple_pay.client.ApplePayClient` (15:74)
+- `square.bank_accounts.client.BankAccountsClient` (20:186)
+- `square.bookings.client.BookingsClient` (full file reference)
+- `square.cards.client.CardsClient` (26:276)
+- `square.catalog.client.CatalogClient` (full file reference)
+- `square.customers.client.CustomersClient` (full file reference)
+- `square.devices.client.DevicesClient` (22:156)
+- `square.disputes.client.DisputesClient` (32:338)
+- `square.employees.client.EmployeesClient` (20:148)
+- `square.events.client.EventsClient` (19:167)
+- `square.gift_cards.client.GiftCardsClient` (30:392)
+- `square.inventory.client.InventoryClient` (full file reference)
+- `square.invoices.client.InvoicesClient` (full file reference)
+- `square.labor.client.LaborClient` (full file reference)
+- `square.locations.client.LocationsClient` (29:429)
+- `square.loyalty.client.LoyaltyClient` (22:105)
+- `square.merchants.client.MerchantsClient` (23:143)
+- `square.checkout.client.CheckoutClient` (22:178)
+- `square.orders.client.OrdersClient` (full file reference)
+- `square.payments.client.PaymentsClient` (full file reference)
+- `square.payouts.client.PayoutsClient` (24:276)
+- `square.refunds.client.RefundsClient` (27:386)
+- `square.sites.client.SitesClient` (12:54)
+- `square.snippets.client.SnippetsClient` (18:146)
+- `square.subscriptions.client.SubscriptionsClient` (full file reference)
+- `square.team_members.client.TeamMembersClient` (26:419)
+- `square.team.client.TeamClient` (19:180)
+- `square.terminal.client.TerminalClient` (20:139)
+- `square.vendors.client.VendorsClient` (25:370)
+- `square.cash_drawers.client.CashDrawersClient` (11:25)
+- `square.webhooks.client.WebhooksClient` (13:29)
+
+
+### New SDK Asynchronous API Category Clients
+These modules represent the asynchronous client interfaces for specific API categories in the new SDK. They provide methods to interact with various Square API functionalities using non-blocking operations, suitable for concurrent programming.
+
+
+**Related Classes/Methods**:
+
+- `square.mobile.client.AsyncMobileClient` (78:146)
+- `square.o_auth.client.AsyncOAuthClient` (315:642)
+- `square.v1transactions.client.AsyncV1TransactionsClient` (193:390)
+- `square.apple_pay.client.AsyncApplePayClient` (77:144)
+- `square.bank_accounts.client.AsyncBankAccountsClient` (189:379)
+- `square.bookings.client.AsyncBookingsClient` (full file reference)
+- `square.cards.client.AsyncCardsClient` (279:563)
+- `square.catalog.client.AsyncCatalogClient` (full file reference)
+- `square.customers.client.AsyncCustomersClient` (full file reference)
+- `square.devices.client.AsyncDevicesClient` (159:311)
+- `square.disputes.client.AsyncDisputesClient` (341:697)
+- `square.employees.client.AsyncEmployeesClient` (151:295)
+- `square.events.client.AsyncEventsClient` (170:350)
+- `square.gift_cards.client.AsyncGiftCardsClient` (395:813)
+- `square.inventory.client.AsyncInventoryClient` (full file reference)
+- `square.invoices.client.AsyncInvoicesClient` (full file reference)
+- `square.labor.client.AsyncLaborClient` (full file reference)
+- `square.locations.client.AsyncLocationsClient` (432:876)
+- `square.loyalty.client.AsyncLoyaltyClient` (108:199)
+- `square.merchants.client.AsyncMerchantsClient` (146:284)
+- `square.checkout.client.AsyncCheckoutClient` (181:369)
+- `square.orders.client.AsyncOrdersClient` (full file reference)
+- `square.payments.client.AsyncPaymentsClient` (full file reference)
+- `square.payouts.client.AsyncPayoutsClient` (279:557)
+- `square.refunds.client.AsyncRefundsClient` (389:772)
+- `square.sites.client.AsyncSitesClient` (57:107)
+- `square.snippets.client.AsyncSnippetsClient` (149:303)
+- `square.subscriptions.client.AsyncSubscriptionsClient` (full file reference)
+- `square.team_members.client.AsyncTeamMembersClient` (422:869)
+- `square.team.client.AsyncTeamClient` (183:376)
+- `square.terminal.client.AsyncTerminalClient` (142:285)
+- `square.vendors.client.AsyncVendorsClient` (373:778)
+- `square.cash_drawers.client.AsyncCashDrawersClient` (28:42)
+- `square.webhooks.client.AsyncWebhooksClient` (32:48)
+
+
+### Legacy SDK Core
+This component encompasses the foundational elements of the legacy SDK, including global configuration settings, OAuth2 authentication mechanisms, and the base API class that provides common functionalities like user agent management.
+
+
+**Related Classes/Methods**:
+
+- `square_legacy.configuration.Configuration` (10:182)
+- `square_legacy.http.auth.o_auth_2.OAuth2` (6:22)
+- `square_legacy.api.base_api.BaseApi.user_agent` (24:25)
+- `square_legacy.api.base_api.BaseApi.user_agent_parameters` (28:33)
+
+
+### New SDK Core
+This component provides the core infrastructure for the new SDK, including synchronous and asynchronous client wrappers that manage HTTP requests and responses, and a utility function for determining the base URL for API calls.
+
+
+**Related Classes/Methods**:
+
+- `square.core.client_wrapper.SyncClientWrapper` (49:65)
+- `square.core.client_wrapper.AsyncClientWrapper` (68:84)
+- `square.client._get_base_url` (277:283)
+
+
+
+
+### [FAQ](https://github.com/CodeBoarding/GeneratedOnBoardings/tree/main?tab=readme-ov-file#faq)
\ No newline at end of file
diff --git a/.codeboarding/SDK Configuration.md b/.codeboarding/SDK Configuration.md
new file mode 100644
index 00000000..a7c714d2
--- /dev/null
+++ b/.codeboarding/SDK Configuration.md
@@ -0,0 +1,82 @@
+```mermaid
+graph LR
+ SDK_Configuration["SDK Configuration"]
+ Legacy_Client_Initialization["Legacy Client Initialization"]
+ Legacy_Configuration_Management["Legacy Configuration Management"]
+ Legacy_Authentication_Credentials["Legacy Authentication Credentials"]
+ New_Client_Initialization["New Client Initialization"]
+ New_Base_URL_Resolver["New Base URL Resolver"]
+ Legacy_Client_Initialization -- "configures" --> Legacy_Configuration_Management
+ Legacy_Configuration_Management -- "manages" --> Legacy_Authentication_Credentials
+ New_Client_Initialization -- "determines base URL via" --> New_Base_URL_Resolver
+```
+[](https://github.com/CodeBoarding/GeneratedOnBoardings)[](https://www.codeboarding.org/demo)[](mailto:contact@codeboarding.org)
+
+## Component Details
+
+This graph illustrates the core components involved in the Square SDK's configuration and client initialization, encompassing both legacy and modern client architectures. The main flow involves the initialization of clients, which in turn rely on dedicated configuration management and base URL resolution components to set up the necessary operational parameters and authentication credentials for API interactions.
+
+### SDK Configuration
+Manages the SDK's global settings, including authentication credentials, environment selection, and HTTP client configurations for both legacy and modern clients.
+
+
+**Related Classes/Methods**:
+
+- `square_legacy.configuration.Configuration` (10:182)
+- `square.client._get_base_url` (277:283)
+- `square.environment.SquareEnvironment` (6:8)
+
+
+### Legacy Client Initialization
+This component handles the initialization of the legacy Square SDK client, primarily by configuring the SDK's operational parameters and setting up authentication.
+
+
+**Related Classes/Methods**:
+
+- `square_legacy.client.Client:__init__` (235:269)
+
+
+### Legacy Configuration Management
+This component is responsible for managing the SDK's configuration, including environment settings, custom URLs, access tokens, and HTTP client parameters. It also handles the creation and validation of authentication credentials and the HTTP client.
+
+
+**Related Classes/Methods**:
+
+- `square_legacy.configuration.Configuration:__init__` (42:80)
+- `square_legacy.configuration.Configuration:clone_with` (82:116)
+- `square_legacy.configuration.Configuration.create_auth_credentials_object` (168:182)
+- `square_legacy.configuration.Configuration.validate_user_agent` (162:165)
+- `square_legacy.configuration.Configuration.create_http_client` (118:126)
+
+
+### Legacy Authentication Credentials
+This component is responsible for creating and managing bearer authentication credentials used for API requests within the legacy SDK.
+
+
+**Related Classes/Methods**:
+
+- `square_legacy.http.auth.o_auth_2.BearerAuthCredentials` (25:37)
+
+
+### New Client Initialization
+This component handles the initialization of the new Square SDK client, focusing on determining the base URL for API calls.
+
+
+**Related Classes/Methods**:
+
+- `square.client.Square:__init__` (117:175)
+- `square.client.AsyncSquare:__init__` (216:274)
+
+
+### New Base URL Resolver
+This component is responsible for resolving the base URL for the new Square SDK client, which is crucial for directing API requests to the correct endpoint.
+
+
+**Related Classes/Methods**:
+
+- `square.client._get_base_url` (277:283)
+
+
+
+
+### [FAQ](https://github.com/CodeBoarding/GeneratedOnBoardings/tree/main?tab=readme-ov-file#faq)
\ No newline at end of file
diff --git a/.codeboarding/on_boarding.md b/.codeboarding/on_boarding.md
new file mode 100644
index 00000000..90a442eb
--- /dev/null
+++ b/.codeboarding/on_boarding.md
@@ -0,0 +1,92 @@
+```mermaid
+graph LR
+ SDK_Clients["SDK Clients"]
+ Core_Communication_Utilities["Core Communication & Utilities"]
+ API_Service_Modules["API Service Modules"]
+ SDK_Configuration["SDK Configuration"]
+ SDK_Clients -- "initializes and uses" --> Core_Communication_Utilities
+ SDK_Clients -- "aggregates" --> API_Service_Modules
+ API_Service_Modules -- "sends requests via" --> Core_Communication_Utilities
+ API_Service_Modules -- "processes data with" --> Core_Communication_Utilities
+ SDK_Configuration -- "configures" --> SDK_Clients
+ SDK_Configuration -- "configures" --> Core_Communication_Utilities
+ click SDK_Clients href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/square-python-sdk/SDK Clients.md" "Details"
+ click Core_Communication_Utilities href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/square-python-sdk/Core Communication & Utilities.md" "Details"
+ click API_Service_Modules href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/square-python-sdk/API Service Modules.md" "Details"
+ click SDK_Configuration href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/square-python-sdk/SDK Configuration.md" "Details"
+```
+[](https://github.com/CodeBoarding/GeneratedOnBoardings)[](https://www.codeboarding.org/demo)[](mailto:contact@codeboarding.org)
+
+## Component Details
+
+The `square-python-sdk` architecture is designed around a clear separation of concerns, primarily distinguishing between legacy and modern SDK clients. The modern SDK offers both synchronous and asynchronous interfaces, all of which rely on a robust `Core Communication & Utilities` layer for HTTP requests, data handling, error management, and pagination. Specific Square API functionalities are encapsulated within `API Service Modules`, which interact with the core communication layer. Global settings and authentication are managed by the `SDK Configuration` component, which influences the behavior of both the SDK clients and the underlying communication mechanisms.
+
+### SDK Clients
+The primary entry points for interacting with the Square API, providing both synchronous and asynchronous interfaces for the modern SDK, and a single client for the legacy SDK. These clients aggregate various API-specific modules.
+
+
+**Related Classes/Methods**:
+
+- `square_legacy.client.Client` (55:269)
+- `square.client.Square` (79:175)
+- `square.client.AsyncSquare` (178:274)
+
+
+### Core Communication & Utilities
+Provides the foundational services for the SDK, including executing HTTP requests, handling data serialization/deserialization, managing API-specific errors, and facilitating pagination for API responses.
+
+
+**Related Classes/Methods**:
+
+- `square.core.http_client.HttpClient` (148:321)
+- `square.core.http_client.AsyncHttpClient` (324:497)
+- `square.core.client_wrapper.BaseClientWrapper` (9:46)
+- `square.core.client_wrapper.SyncClientWrapper` (49:65)
+- `square.core.client_wrapper.AsyncClientWrapper` (68:84)
+- `square.core.query_encoder` (full file reference)
+- `square.core.file` (full file reference)
+- `square.core.remove_none_from_dict` (6:11)
+- `square.core.unchecked_base_model.UncheckedBaseModel` (36:124)
+- `square.core.jsonable_encoder` (31:100)
+- `square.core.serialization` (full file reference)
+- `square.core.pydantic_utilities` (full file reference)
+- `square.core.datetime_utils` (full file reference)
+- `square.core.api_error.ApiError` (14:123)
+- `square.core.pagination.SyncPager` (37:62)
+- `square.core.pagination.AsyncPager` (65:87)
+
+
+### API Service Modules
+A collection of specialized client modules, each dedicated to a specific Square API category (e.g., Payments, Bookings, Customers). These modules encapsulate the business logic for interacting with their respective API endpoints.
+
+
+**Related Classes/Methods**:
+
+- `square.o_auth.client.OAuthClient` (17:312)
+- `square.payments.client.PaymentsClient` (full file reference)
+- `square.bookings.client.BookingsClient` (full file reference)
+- `square.catalog.client.CatalogClient` (full file reference)
+- `square.customers.client.CustomersClient` (full file reference)
+- `square.subscriptions.client.SubscriptionsClient` (full file reference)
+- `square.locations.client.LocationsClient` (29:429)
+- `square.terminal.client.TerminalClient` (20:139)
+- `square.webhooks.client.WebhooksClient` (13:29)
+- `square.inventory.client.InventoryClient` (full file reference)
+- `square.team_members.client.TeamMembersClient` (26:419)
+- `square.orders.client.OrdersClient` (full file reference)
+
+
+### SDK Configuration
+Manages the SDK's global settings, including authentication credentials, environment selection, and HTTP client configurations for both legacy and modern clients.
+
+
+**Related Classes/Methods**:
+
+- `square_legacy.configuration.Configuration` (10:182)
+- `square.client._get_base_url` (277:283)
+- `square.environment.SquareEnvironment` (6:8)
+
+
+
+
+### [FAQ](https://github.com/CodeBoarding/GeneratedOnBoardings/tree/main?tab=readme-ov-file#faq)
\ No newline at end of file