Create Store
curl --request POST \
--url https://api-staging.luladelivery.store/stores/store/import requests
url = "https://api-staging.luladelivery.store/stores/store/"
response = requests.post(url)
print(response.text)const options = {method: 'POST'};
fetch('https://api-staging.luladelivery.store/stores/store/', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api-staging.luladelivery.store/stores/store/",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api-staging.luladelivery.store/stores/store/"
req, _ := http.NewRequest("POST", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api-staging.luladelivery.store/stores/store/")
.asString();require 'uri'
require 'net/http'
url = URI("https://api-staging.luladelivery.store/stores/store/")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
response = http.request(request)
puts response.read_body{
"id": "<string>",
"store_setup_completed": true,
"is_disabled": true,
"is_rbac_store": true,
"name": "<string>",
"email": "<string>",
"phone_number": "<string>",
"company_id": "<string>",
"point_of_contact": "<string>",
"bill_vendor_id": "<string>",
"addresses": [
{}
],
"store_partners": [
{}
],
"vendor": "<string>"
}Stores
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.
POST
/
stores
/
store
/
Create Store
curl --request POST \
--url https://api-staging.luladelivery.store/stores/store/import requests
url = "https://api-staging.luladelivery.store/stores/store/"
response = requests.post(url)
print(response.text)const options = {method: 'POST'};
fetch('https://api-staging.luladelivery.store/stores/store/', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api-staging.luladelivery.store/stores/store/",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api-staging.luladelivery.store/stores/store/"
req, _ := http.NewRequest("POST", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api-staging.luladelivery.store/stores/store/")
.asString();require 'uri'
require 'net/http'
url = URI("https://api-staging.luladelivery.store/stores/store/")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
response = http.request(request)
puts response.read_body{
"id": "<string>",
"store_setup_completed": true,
"is_disabled": true,
"is_rbac_store": true,
"name": "<string>",
"email": "<string>",
"phone_number": "<string>",
"company_id": "<string>",
"point_of_contact": "<string>",
"bill_vendor_id": "<string>",
"addresses": [
{}
],
"store_partners": [
{}
],
"vendor": "<string>"
}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.
Request Body Fields
Request Body Fields
string
required
Store name as it will appear to customers. Example: “SSP Test Store - final”
string
required
Store contact email address. Example: “[email protected]”
string
required
Store contact phone number in international format. Example: “+14132231249”
number
required
ID of the company this store belongs to. Example: 1000022
array
required
Array of address objects for different store purposes
Show Address Object
Show Address Object
string
required
Primary address line. Example: “123 Main Street”
string
required
City name. Example: “Philadelphia”
string
required
State or province. Example: “PA”
string
required
ZIP or postal code. Example: “19104”
number
required
Type of address:
0= Store Address (main operational address)1= Welcome Package Address (shipping address for onboarding materials)
boolean
required
Whether to create a billing vendor account for this store. Set to
true to enable automated billing setup.number
required
User ID of the primary point of contact for this store. Example: 1000049
Request Example
{
"name": "SSP Test Store - final",
"email": "[email protected]",
"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
string
Unique store identifier (UUID format)
boolean
Indicates whether store setup process is complete
boolean
Store disabled status
boolean
Role-based access control enablement status
string
Store name as provided
string
Store contact email
string
Store contact phone number
string
Associated company ID
string
Point of contact user ID
string
Generated billing vendor ID if create_bill_vendor was true
array
Array of created address records with full details including IDs
array
Array of delivery service partner configurations (UberEats, DoorDash, GrubHub)
string
Associated vendor/billing ID
Response Example
{
"id": "7669f473-6c40-45ee-8737-43c667407b3a",
"store_setup_completed": false,
"is_disabled": false,
"is_rbac_store": false,
"name": "SSP Test Store - final",
"email": "[email protected]",
"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
}
]
}
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.
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.Point of Contact: Ensure the point_of_contact user ID exists and has appropriate permissions before creating the store.
Billing Vendor: When create_bill_vendor is true, a billing vendor account is automatically created and linked to the store for payment processing.

