Ecommerce

Actions

Actions available for implementation in ecommerce connector apps

Canonical actions define the write-operation contract between the frontend and your connector app. When you build an ecommerce connector, you implement action handlers for each of these actions so the frontend can authenticate users, manage carts, and perform other mutations against your commerce backend.

Import these from @laioutr-core/canonical-types/ecommerce.

Auth

AuthLoginAction

ecommerce/auth/login
Login a customer using email and password.
email
stringrequired

The email address of the user.

formatemail
password
stringrequired

The password of the user.

success
booleanrequired
message
string

AuthLogoutAction

ecommerce/auth/logout
Logout a customer.
unknown

AuthRegisterAction

ecommerce/auth/register
Register a new customer.
email
stringrequired

The email address of the user.

formatemail
password
stringrequired

The password of the user.

firstName
stringrequired

The first name(s) of a person.

lastName
stringrequired

The last name(s) of a person.

salutation
string

Salutation of a person as lowercase key.

title
string

Title of a person as lowercase key.

unknown

AuthRecoverAction

ecommerce/auth/recover
Send a recovery email to the customer.
email
stringrequired
formatemail
unknown

AuthLoginOauthAction

ecommerce/auth/login-oauth
Login a customer using OAuth.
authorizationUrl
stringrequired

AuthLogoutOauthAction

ecommerce/auth/logout-oauth
Logout a customer.
logoutUrl
stringrequired

AuthOauthCallbackAction

ecommerce/auth/oauth-callback
OAuth callback action for Shopify Customer Account API. This action handles the OAuth 2.0 callback from Shopify's authorization server. It exchanges the authorization code for access tokens and creates a user session.
code
stringrequired

The authorization code returned by Shopify's OAuth server.

state
stringrequired

The state parameter to prevent CSRF attacks.

unknown

Cart

CartAddItemsAction

ecommerce/cart/add-items
Add items to the cart.
array

Union of all possible items that can be added to the cart. If you find yourself in a situation where you need to add items which are not products or discount-codes, you should create a custom action for that or use the type custom.

Accepts an array of the following:

CartRemoveItemsAction

ecommerce/cart/remove-items
Remove items from the cart.
string[]
unknown

CartUpdateItemsAction

ecommerce/cart/update-items
Update items in the cart. This action is used to update the quantity or custom fields of multiple items in the cart.
array
itemId
stringrequired

Cart line-item id.

quantity
number

The new quantity of the item. Won't update if undefined. Only works for products.

customFields
Record<string, unknown>

Custom fields are a way for implementations to pass arbitrary data to actions, queries, etc.

unknown

CartGetCheckoutUrlAction

ecommerce/cart/get-checkout-url
Get the checkout URL for the cart.
checkoutUrl
stringrequired

Product Lists

Product lists replace the former wishlist-specific mutations with one contract for wishlists, favorites, shopping lists, and B2B requisition lists.

ProductListCreateAction

ecommerce/product-list/create
Create a product list.
name
stringrequired
type
string
visibility
"private" | "shared" | "public"

The visibility value set — shared with the ecommerce/product-list/* actions so the vocabulary has a single source.

id
stringrequired

The ID of the created product list.

ProductListUpdateAction

ecommerce/product-list/update
Update a product list's metadata and visibility.
productListId
stringrequired
name
string
description
string
visibility
"private" | "shared" | "public"

The visibility value set — shared with the ecommerce/product-list/* actions so the vocabulary has a single source.

unknown

ProductListDeleteAction

ecommerce/product-list/delete
Delete a product list.
productListId
stringrequired
unknown

ProductListDuplicateAction

ecommerce/product-list/duplicate
Duplicate a product list.
productListId
stringrequired
name
stringrequired

The name of the new list.

id
stringrequired

The ID of the created copy.

ProductListAddItemsAction

ecommerce/product-list/add-items
Add products or variants to a product list.
productListId
string

The list to add to. Absent ⇒ the customer's default wishlist.

unknown

ProductListUpdateItemsAction

ecommerce/product-list/update-items
Update list-specific item details such as quantity or note.
productListId
string

The list the entries are on. Absent ⇒ the customer's default wishlist.

unknown

ProductListRemoveItemsAction

ecommerce/product-list/remove-items
Remove products or variants from a product list.
productListId
string

The list to remove from. Absent ⇒ the customer's default wishlist.

unknown

ProductListAddToCartAction

ecommerce/product-list/add-to-cart
Add all orderable items from a product list to the current cart.
productListId
string

The list to add to the cart. Absent ⇒ the customer's default wishlist.

Customer

CustomerGetCurrentAction

ecommerce/customer/get-current
Get the current customer data.

CustomerUpdateAction

ecommerce/customer/update
Update the current customer's profile.
phone
string

Represents a phone number. Formatted as a E.164 number.

pattern^\+?[1-9]\d{1,14}$
customFields
Record<string, unknown>

Custom fields are a way for implementations to pass arbitrary data to actions, queries, etc.

unknown

CustomerAddressGetAllAction

ecommerce/customer/address-get-all
Get all addresses for the current customer.

CustomerAddressCreateAction

ecommerce/customer/address-create
Create a new address for the current customer.
unknown

CustomerAddressUpdateAction

ecommerce/customer/address-update
Update an address for the current customer.
id
stringrequired

The ID of the address to update.

unknown

CustomerAddressDeleteAction

ecommerce/customer/address-delete
Delete an address for the current customer.
id
stringrequired

The ID of the address to delete.

unknown

CustomerAddressSetDefaultAction

ecommerce/customer/address-set-default
Set a default address for the current customer.
id
stringrequired

The ID of the address to set as default.

type
"shipping" | "billing"required

The type of default to set. Not all backends may support this distinction.

unknown

Orders

OrderReorderAction

ecommerce/order/reorder
Add the orderable items from a previous order to the current cart.
orderId
stringrequired

The ID of the order to reorder.

OrderCancelAction

ecommerce/order/cancel
Cancel an order when its current state allows cancellation.
orderId
stringrequired

The ID of the order to cancel.

unknown

OrderGetStatisticsAction

ecommerce/order/get-statistics
Get aggregate order statistics for the current customer.
year
number

The calendar year to aggregate. Defaults to the current year.

min-9007199254740991max9007199254740991
year
numberrequired

The calendar year the statistics cover.

min-9007199254740991max9007199254740991

Documents

DocumentGetAllAction

ecommerce/document/get-all
Get invoices, delivery notes, credit notes, and other documents visible to the current customer.

DocumentGetDownloadUrlAction

ecommerce/document/get-download-url
Get a temporary download URL for a commerce document.
documentId
stringrequired

The ID of the document to download.

downloadUrl
stringrequired

LegalWithdrawalAction

ecommerce/legal/withdrawal
Submit a statutory right-of-withdrawal request for an order or contract.
name
stringrequired
min length1
orderReference
stringrequired
min length1
email
stringrequired
formatemail
success
booleanrequired
message
string

Review

ProductReviewsCreateAction

ecommerce/product/reviews/create
Create and save a new review for a given product ID.
productId
stringrequired
name
stringrequired
email
stringrequired
formatemail
title
stringrequired
content
stringrequired
points
numberrequired

A rating between 1 and 5. That's the most common rating scale. No other scale is supported at the moment. Decimals are allowed.

min1max5
success
booleanrequired
message
string

Entities

Copyright © 2026 Laioutr GmbH