API Documentation
RESTful API documentation for developers
https://api.lotscommerce.comAPI Key (Bearer token or X-API-Key header)
66
Authentication
All API requests require authentication using an API key. You can create an API key from your dashboard.
curl -H "Authorization: Bearer YOUR_API_KEY" \
https://api.lotscommerce.com/api/v1/lotsstore/stores/:id/analyticsanalytics
/api/v1/lotsstore/stores/:id/analyticsGet Store Analytics
get_store_analyticsRevenue, orders, average order value and the visit-to-order funnel for one store over a date range, with daily rows and the totals compared with the previous period of the same length.
billing
/api/v1/lotsstore/checkoutChoose a LotsCommerce plan or add credits
create_checkoutCreate a checkout link. Pass plan (starter, pro or business) and cycle (monthly or annual) for a plan, or amount_usd (10 to 1000) to add LotsTech Credits. Give the link to the person to pay in their browser; never ask for card details in chat.
/api/v1/lotsstore/billingGet LotsCommerce billing
get_billingShow how the caller's stores are paid for: the plan (if any), whether today is covered or paid from LotsTech Credits, the credit balance, and the plans to choose from. Each store needs room on a plan or credits; an unfunded store keeps its storefront and data but pauses new orders and becomes read-only until funded.
customers
/api/v1/lotsstore/stores/:id/customers/:customerIdGet Customer
get_customerGets one store customer, addresses, and store-scoped order summary after customer-group ownership checks.
/api/v1/lotsstore/stores/:id/customersList Customers
list_customersList a store's customers with search and paging.
discounts
/api/v1/lotsstore/stores/:id/promotionsCreate Discount
create_promotionCreates a standard fixed or percentage order discount scoped to the store sales channel.
/api/v1/lotsstore/stores/:id/promotions/:promotionIdDelete Discount
delete_promotionDeletes a store-owned discount code.
/api/v1/lotsstore/stores/:id/promotionsList Discounts
list_promotionsList a store's discount codes.
/api/v1/lotsstore/stores/:id/promotions/:promotionIdUpdate Discount
update_promotionChanges the status of a store-owned discount code.
domains
/api/v1/lotsstore/stores/:id/domainsAdd Custom Domain
add_custom_domainConnect the person's own domain (for example shop.example.com) to a store. Returns one CNAME record pointing to customers.lotscommerce.com for the owner to add at their DNS provider; HTTPS is set up automatically.
/api/v1/lotsstore/domains/:idDelete Custom Domain
delete_custom_domainRemoves a custom domain from a store and its storefront deployment.
/api/v1/lotsstore/stores/:id/domainsList Custom Domains
list_custom_domainsLists custom domains configured for a store.
/api/v1/lotsstore/domains/:id/verifyVerify Custom Domain
verify_custom_domainCheck a connected domain: reports whether DNS is in place, the security certificate is being issued, or the store is live on the domain.
inventory
/api/v1/lotsstore/stores/:id/inventoryList Inventory
list_inventoryList stock per product variant: in stock, reserved by open orders, incoming and available.
/api/v1/lotsstore/stores/:id/inventoryUpdate Inventory
update_inventorySet the stock of a product variant.
orders
/api/v1/lotsstore/stores/:id/checkout-orders/:checkoutOrderIdGet Checkout Order
get_checkout_orderGets a tenant-scoped checkout order request, payment attempts, and timeline.
/api/v1/lotsstore/stores/:id/orders/:orderIdGet Order
get_orderGet one confirmed order: items, totals, customer, addresses, payment and fulfilment.
/api/v1/lotsstore/stores/:id/checkout-ordersList Checkout Orders
list_checkout_ordersLists pre-fulfillment checkout order requests and their independent payment/acceptance states.
/api/v1/lotsstore/stores/:id/ordersList Orders
list_ordersList a store's confirmed orders with paging and filters.
/api/v1/lotsstore/stores/:id/checkout-orders/:checkoutOrderId/operationsOperate Checkout Order
operate_checkout_orderApplies fulfillment, shipment, cancellation, tracking, invoice, and manual refund actions.
/api/v1/lotsstore/stores/:id/checkout-orders/:checkoutOrderIdUpdate Checkout Order
update_checkout_orderApplies an audited payment verification or seller acceptance action.
payments
/api/v1/lotsstore/stores/:id/payments/razorpay/connectConnect Razorpay
connect_razorpayRecord the store's own Razorpay account after the owner connects it. Prefer start_payment_oauth, which gives the owner a Razorpay sign-in link.
/api/v1/lotsstore/stores/:id/payments/stripe/connectConnect Stripe
connect_stripeConnect the store owner's own Stripe account. Returns the store's Payments page, where the owner pastes one Stripe restricted key, and the steps page for creating that key. Never ask for or accept a Stripe key in chat. Charges run on the owner's Stripe account and settle to their Stripe balance; LotsCommerce takes 0% of sales. Stripe works in the countries Stripe supports.
/api/v1/lotsstore/stores/:id/payment-settingsGet Payment Settings
get_payment_settingsGets safe payment method and order acceptance settings for a store.
/api/v1/lotsstore/stores/:id/payment-connections/:provider/startStart Payment Provider Connection
start_payment_oauthStart connecting the store's own Razorpay account: returns a Razorpay sign-in and consent link for the store owner to open in their browser. Payments settle straight to the merchant's Razorpay account.
/api/v1/lotsstore/stores/:id/payment-connections/razorpay/onboarding/startStart Razorpay Account Onboarding
start_razorpay_onboardingGet a link for the store owner to open in their browser to sign in to Razorpay, or create a Razorpay account, and connect it to the store. For businesses registered in India. Money from online payments then settles to the owner's own Razorpay account.
/api/v1/lotsstore/stores/:id/payment-settingsUpdate Payment Settings
update_payment_settingsTurn checkout on or off, choose test or live mode, and set which payment methods the store offers (Stripe, Razorpay, UPI to a UPI ID, WhatsApp orders) and whether verified payments are accepted automatically. A Stripe key is pasted by the owner on the Payments page, never sent here from a chat.
products
/api/v1/lotsstore/stores/:id/productsAdd Product
add_productAdd a product to a store with its variants (for example sizes or colours), prices in minor units of the store currency, stock, images and category. Products start as drafts unless status is published.
/api/v1/lotsstore/stores/:id/products/:productId/variantsAdd Product Variant
add_product_variantCreates a variant with options, pricing, identifiers, dimensions, and inventory behavior on an owned product.
/api/v1/lotsstore/stores/:id/products/bulkBulk Add Products
bulk_add_productsAdd up to 100 products to a store in one call, each with the same fields as add_product.
/api/v1/lotsstore/stores/:id/categoriescreate Category
create_categoryCreate a product category, optionally under a parent category.
/api/v1/lotsstore/stores/:id/collectionscreate Collection
create_collectionCreate a product collection, such as Summer or Best sellers.
/api/v1/lotsstore/stores/:id/categories/:categoryIddelete Category
delete_categoryDelete a product category. Products in it are kept.
/api/v1/lotsstore/stores/:id/collections/:collectionIddelete Collection
delete_collectionDelete a product collection. Its products are kept.
/api/v1/lotsstore/stores/:id/products/:productIdDelete Product
delete_productDeletes a product and its derived Lots snapshot after validating store ownership.
/api/v1/lotsstore/stores/:id/products/:productId/variants/:variantIdDelete Product Variant
delete_product_variantDeletes a variant after validating store and product ownership.
/api/v1/lotsstore/stores/:id/products/:productIdGet Product
get_productGet one product with its variants, prices, stock settings, images and categories.
/api/v1/lotsstore/stores/:id/categorieslist Categories
list_categoriesList a store's product categories, including parent and subcategories and their order.
/api/v1/lotsstore/stores/:id/collectionslist Collections
list_collectionsList a store's product collections.
/api/v1/lotsstore/stores/:id/productsList Products
list_productsList a store's products with search, status filter and paging.
/api/v1/lotsstore/stores/:id/categories/:categoryIdupdate Category
update_categoryRename, move or reorder a product category.
/api/v1/lotsstore/stores/:id/collections/:collectionIdupdate Collection
update_collectionRename a product collection or change its handle.
/api/v1/lotsstore/stores/:id/products/:productIdUpdate Product
update_productChange a product: title, description, status, prices, variants, images, categories, SEO and more.
/api/v1/lotsstore/stores/:id/products/:productId/variants/:variantIdUpdate Product Variant
update_product_variantUpdates a variant and its prices after validating store and product ownership.
reviews
/api/v1/lotsstore/stores/:id/reviewsList Product Reviews
list_product_reviewsLists tenant-scoped product reviews for merchant moderation.
/api/v1/lotsstore/stores/:id/reviews/:reviewIdModerate Product Review
moderate_product_reviewPublishes or rejects a tenant-owned product review.
/api/v1/lotsstore/stores/:id/reviews/:reviewId/replyReply to Product Review
reply_product_reviewAdds or updates the merchant reply on a tenant-owned review.
shipping
/api/v1/lotsstore/stores/:id/shipping-settingsGet Shipping Settings
get_shipping_settingsGets tenant-safe business origin, zones, methods, and provider connection summaries.
/api/v1/lotsstore/stores/:id/shipping-settingsUpdate Shipping Settings
update_shipping_settingsUpdates business origin, zones, and manual shipping methods.
stores
/api/v1/lotsstore/stores/:id/archiveArchive a store
archive_storeArchive a store: owner only, confirmed by typing the store name in confirm_name. The storefront goes offline and billing for the store stops; nothing is deleted. The owner can restore it for 30 days. Show the person what this does and get their go-ahead first.
/api/v1/lotsstore/storesCreate Store
create_storeCreate a store with a free name.lotscommerce.com address. Needs room on the person's LotsCommerce plan or LotsTech Credits (check get_billing). The country decides the store currency (for example US sells in USD, IN in INR) and cannot change later. The store starts as a draft; publish_store puts it live.
/api/v1/lotsstore/stores/:idGet Store
get_storeGets one LotsCommerce tenant, storefront settings, user role, and public URL.
/api/v1/lotsstore/stores/:id/activityList Store Activity
list_store_activityLists recent merchant and commerce activity for an accessible store.
/api/v1/lotsstore/storesList Stores
list_storesLists LotsCommerce tenants where the authenticated user is an active member.
/api/v1/lotsstore/stores/:id/publishPublish Store
publish_storePut a store's storefront live at its address so shoppers can browse and buy.
/api/v1/lotsstore/stores/:id/restoreRestore an archived store
restore_storeRestore a store archived in the last 30 days: owner only. It needs room on the person's plan or LotsTech Credits; the storefront comes back online.
/api/v1/lotsstore/stores/:idUpdate Store
update_storeUpdate a store's name, description, settings or status. Set status to archived to stop billing for the store and take its storefront offline (nothing is deleted); set it back to draft or active to restore it, which needs room on your plan or LotsTech Credits.
/api/v1/lotsstore/stores/:id/storefrontUpdate Storefront Settings
update_storefront_settingsSaves, publishes, or resets versioned storefront appearance, content, navigation, policies, and SEO settings.
taxes
/api/v1/lotsstore/stores/:id/tax-settingsGet Tax Settings
get_tax_settingsGets tenant-safe GST/tax, invoice, and category configuration.
/api/v1/lotsstore/stores/:id/tax-settingsUpdate Tax Settings
update_tax_settingsUpdates GST registration, pricing, shipping tax, invoice, and tax categories.
team
/api/v1/lotsstore/invitations/acceptAccept a store invitation
accept_store_invitationAccept an invitation to a store's team with the token from the invitation link. The signed-in account's email must match the invitation.
/api/v1/lotsstore/stores/:id/teamInvite a store teammate
add_store_memberInvite a teammate to a store by email with a role (admin, manager, staff or viewer). They get an email with a link and have access only after they accept it, signed in with that email. Returns invite_url to share if the email does not arrive. Inviting someone again sends a fresh link.
/api/v1/lotsstore/stores/:id/leaveLeave a store
leave_storeLeave a store's team. Anyone except the owner can leave; the owner archives the store instead. Rejoining needs a new invitation.
/api/v1/lotsstore/stores/:id/teamList Store Team Members
list_store_membersLists a store's team: active members, pending invitations (with when they expire) and removed members.
/api/v1/lotsstore/stores/:id/team/:memberIdRemove Store Team Member
remove_store_memberDeactivates a store team member without deleting audit history.
/api/v1/lotsstore/stores/:id/team/:memberIdUpdate Store Team Member
update_store_memberUpdates a store team member role or active status.