> ## Documentation Index
> Fetch the complete documentation index at: https://developer.lulacommerce.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Create Store

> This endpoint creates a new store under a specific company. Stores are the operational units that handle orders, inventory, and customer interactions. Each store can have multiple addresses for different purposes and automatically gets configured with delivery service partners.

This endpoint creates a new store with all necessary business information including addresses, company association, and delivery service partner integrations. The store will be automatically configured with UberEats, DoorDash, and GrubHub partnerships.

<Accordion title="Request Body Fields">
  <ResponseField name="name" type="string" required>
    Store name as it will appear to customers. Example: "SSP Test Store - final"
  </ResponseField>

  <ResponseField name="email" type="string" required>
    Store contact email address. Example: "[test.store@example.com](mailto:test.store@example.com)"
  </ResponseField>

  <ResponseField name="phone_number" type="string" required>
    Store contact phone number in international format. Example: "+14132231249"
  </ResponseField>

  <ResponseField name="company_id" type="number" required>
    ID of the company this store belongs to. Example: 1000022
  </ResponseField>

  <ResponseField name="addresses" type="array" required>
    Array of address objects for different store purposes

    <Expandable title="Address Object">
      <ResponseField name="line_1" type="string" required>
        Primary address line. Example: "123 Main Street"
      </ResponseField>

      <ResponseField name="city" type="string" required>
        City name. Example: "Philadelphia"
      </ResponseField>

      <ResponseField name="state" type="string" required>
        State or province. Example: "PA"
      </ResponseField>

      <ResponseField name="zip" type="string" required>
        ZIP or postal code. Example: "19104"
      </ResponseField>

      <ResponseField name="address_type" type="number" required>
        Type of address:

        * `0` = Store Address (main operational address)
        * `1` = Welcome Package Address (shipping address for onboarding materials)
      </ResponseField>
    </Expandable>
  </ResponseField>

  <ResponseField name="create_bill_vendor" type="boolean" required>
    Whether to create a billing vendor account for this store. Set to `true` to enable automated billing setup.
  </ResponseField>

  <ResponseField name="point_of_contact" type="number" required>
    User ID of the primary point of contact for this store. Example: 1000049
  </ResponseField>
</Accordion>

### Request Example

```json theme={null}
{
    "name": "SSP Test Store - final",
    "email": "test.store@example.com",
    "phone_number": "+14132231249",
    "company_id": 1000022,
    "addresses": [
        {
            "line_1": "123 Main Street",
            "city": "Philadelphia",
            "state": "PA",
            "zip": "19104",
            "address_type": 0
        },
        {
            "line_1": "201 S Main St. West Lebanon",
            "city": "Boston",
            "state": "NH",
            "zip": "03784",
            "address_type": 1
        }
    ],
    "create_bill_vendor": true,
    "point_of_contact": 1000049
}
```

### Response

<ResponseField name="id" type="string">
  Unique store identifier (UUID format)
</ResponseField>

<ResponseField name="store_setup_completed" type="boolean">
  Indicates whether store setup process is complete
</ResponseField>

<ResponseField name="is_disabled" type="boolean">
  Store disabled status
</ResponseField>

<ResponseField name="is_rbac_store" type="boolean">
  Role-based access control enablement status
</ResponseField>

<ResponseField name="name" type="string">
  Store name as provided
</ResponseField>

<ResponseField name="email" type="string">
  Store contact email
</ResponseField>

<ResponseField name="phone_number" type="string">
  Store contact phone number
</ResponseField>

<ResponseField name="company_id" type="string">
  Associated company ID
</ResponseField>

<ResponseField name="point_of_contact" type="string">
  Point of contact user ID
</ResponseField>

<ResponseField name="bill_vendor_id" type="string">
  Generated billing vendor ID if create\_bill\_vendor was true
</ResponseField>

<ResponseField name="addresses" type="array">
  Array of created address records with full details including IDs
</ResponseField>

<ResponseField name="store_partners" type="array">
  Array of delivery service partner configurations (UberEats, DoorDash, GrubHub)
</ResponseField>

<ResponseField name="vendor" type="string">
  Associated vendor/billing ID
</ResponseField>

### Response Example

```json theme={null}
{
    "id": "7669f473-6c40-45ee-8737-43c667407b3a",
    "store_setup_completed": false,
    "is_disabled": false,
    "is_rbac_store": false,
    "name": "SSP Test Store - final",
    "email": "test.store@example.com",
    "phone_number": "+14132231249",
    "company_id": "1000022",
    "point_of_contact": "1000049",
    "updatedAt": "2023-09-20T13:27:18.782Z",
    "createdAt": "2023-09-20T13:27:11.318Z",
    "bill_vendor_id": "00901CNUBBSWJZLLd82g",
    "addresses": [
        {
            "id": "f2641a24-c946-4421-9c95-107ecaa8b7af",
            "address": {
                "id": "8e48af24-7b57-4786-99f0-17a6a326cefc",
                "line_1": "123 Main Street",
                "city": "Philadelphia",
                "state": "PA",
                "zip": "19104"
            },
            "address_type": {
                "description": "Store Address",
                "address_type": 0
            }
        },
        {
            "id": "c47f36fa-e180-4df6-89fd-6ba89323d5a3",
            "address": {
                "id": "48dd9f57-7180-44a8-b106-dad325f52523",
                "line_1": "201 S Main St. West Lebanon",
                "city": "Boston",
                "state": "NH",
                "zip": "03784"
            },
            "address_type": {
                "description": "Welcome Package Address",
                "address_type": 1
            }
        }
    ],
    "store_partners": [
        {
            "id": "b8168479-5c75-4bd6-977c-eabad3a3a01c",
            "partner_name": "UberEats",
            "order_enabled": false,
            "menu_enabled": false,
            "pos_enabled": false
        },
        {
            "id": "23c1ec9c-bfd1-46d9-a0bc-bf4f456eba5b",
            "partner_name": "DoorDash",
            "order_enabled": false,
            "menu_enabled": false,
            "pos_enabled": false
        },
        {
            "id": "d142c4db-7910-471c-8c22-3f1d17fb3c19",
            "partner_name": "GrubHub",
            "order_enabled": false,
            "menu_enabled": false,
            "pos_enabled": false
        }
    ]
}
```

<Info>
  **Automatic Partner Setup:** The store is automatically configured with delivery service partners (UberEats, DoorDash, GrubHub) but they start in disabled state. You'll need to configure each partner individually after store creation.
</Info>

<Tip>
  **Address Types:** Use address\_type `0` for the main store address where operations happen, and address\_type `1` for the address where welcome packages and onboarding materials should be shipped.
</Tip>

<Warning>
  **Point of Contact:** Ensure the point\_of\_contact user ID exists and has appropriate permissions before creating the store.
</Warning>

<Note>
  **Billing Vendor:** When create\_bill\_vendor is true, a billing vendor account is automatically created and linked to the store for payment processing.
</Note>
