SDKReference
Customers
auth, customer profile, orders, and addresses resource methods.
These methods require a logged-in customer (a session token). With the Next.js adapter the session cookie supplies it automatically.
auth
| Method | Description |
|---|---|
auth.requestOtp(input, options?) | Send a login OTP. Input: { phone }. |
auth.verifyOtp(input, options?) | Verify OTP, start a session (token auto-persisted). Input: { phone, otp, guestCartId? }. |
auth.logout(options?) | Invalidate the token and clear the session store. |
auth.getToken() | The current bearer token from the session store. |
await storekit.auth.requestOtp({ phone: "+919999999999" });
const { data } = await storekit.auth.verifyOtp({ phone: "+919999999999", otp: "123456" });
// data → { token, expiresAt?, customer }The Next.js and browser facades take positional args instead —
auth.requestOtp(phone) and auth.verifyOtp(phone, otp) — and manage the
session cookie for you. See Authentication.
customer
customer.get(options?)
The authenticated customer's profile.
const { data: me } = await storekit.customer.get();
// { id, phone, name, email, createdAt, updatedAt }customer.update(input, options?)
Update name / email.
await storekit.customer.update({ name: "Ada Lovelace", email: "[email protected]" });orders
customer.orders.list(query?, options?)
Order history (keyset pagination). Includes lifetime totalSpent.
const { data } = await storekit.customer.orders.list({ limit: 20, cursor });
// data → { data: Order[], nextCursor, hasMore, totalSpent }customer.orders.get(orderId, options?)
A single order by id, including line items, delivery tracking, and (while
pending) a paymentRedirectUrl.
const { data: order } = await storekit.customer.orders.get(orderId);addresses
A customer may save up to 10 addresses. The first one — or any created with
isDefault: true — becomes the default.
| Method | Description |
|---|---|
customer.addresses.list(options?) | All saved addresses. |
customer.addresses.create(input, options?) | Create an address. |
customer.addresses.update(addressId, input, options?) | Update an address. |
customer.addresses.delete(addressId, options?) | Delete an address. |
const { data: address } = await storekit.customer.addresses.create({
firstName: "Ada",
address: "1 Market St",
city: "Bengaluru",
state: "KA",
zipCode: "560001",
country: "IN",
isDefault: true,
});