SazitoSazito SDKv1.4.0
API Reference

Orders

Authenticated order listing and public detail retrieval with an ID and identifier.

Module role in sales flow

orders provides authenticated order history and public order detail access using an ID and identifier.

  • Use this module for order history and order detail pages after checkout.
  • For guest checkout completion, immediate order data comes from payments.initialize() when action === 'show_order' or action === 'pending'.
  • After user login, use orders.list for order history. Use orders.get with the order's ID and orderIdentifier for detail retrieval; login is not required for this public lookup.

These methods return the account Order contract. Payment completion returns a separate CheckoutOrder. Account items remain InvoiceItem[]; existing account fixtures do not need checkout totals.

Order invoice items keep the same attributes shape as invoice items. Rich color values expose the display label in value.value and the color payload (usually a hex string) in value.extra when fieldType is 'color'.

Methods

List

Use: orders.list(filters?, options?).

Requires authentication.

FieldTypeRequiredDescription
filters.pageNumbernumberOptionalPage number (default 1).
filters.pageSizenumberOptionalPage size (default 20).
filters.filtersArray<{ name: string; value: any }>OptionalOrder filters (for example self_only).
optionsRequestOptionsOptionalPer-request controls.

Returns: SazitoResponse<OrdersListResponse>.

const ordersRes = await client.orders.list({
  pageNumber: 1,
  pageSize: 20,
  filters: [{ name: 'self_only', value: true }],
});

Get

Use: orders.get(orderId, orderIdentifier, options?).

Both credentials are required, including for signed-in users. Keep the order identifier private and pass it with the order ID when retrieving an order.

ParameterTypeRequiredDescription
orderIdnumber | stringRequiredOrder ID.
orderIdentifierstringRequiredThe order's orderIdentifier token.
optionsRequestOptionsOptionalPer-request controls.

Returns: SazitoResponse<Order>.

const ordersRes = await client.orders.list({ pageNumber: 1, pageSize: 1 });
const firstOrder = ordersRes.data?.orders?.[0];

if (firstOrder) {
  const orderRes = await client.orders.get(firstOrder.id, firstOrder.orderIdentifier);
}

Migration: replace orders.get(id, options?) with orders.get(id, orderIdentifier, options?). ID-only calls are no longer supported.

Order key fields

FieldTypeRequiredDescription
idnumberRequiredAccount order ID.
orderNumberstringRequiredHuman-readable account order number.
orderIdentifierstringRequiredStable order identifier token.
invoice.netTotalnumberOptionalInvoice total when provided.
invoice.finalTotalnumberOptionalFinal total when provided.
invoice.invoiceItemsInvoiceItem[]RequiredAccount items with id, attributes, quantity, unitPrice, lineTotal, and rawPrice.
invoice.shippingItemsJsonObject[]RequiredAccount shipping assignments.

Known errors

TypeWhen it happens
validationMissing/invalid order ID or missing/blank order identifier; no request is sent.
apiMissing/invalid authentication for listing, or an inaccessible order / mismatched identifier for detail retrieval.

Examples

// app/lib/sazito-client.ts
import { createSazitoClient } from '@sazito/client-sdk';

export const sazito = createSazitoClient({
  domain: process.env.NEXT_PUBLIC_SAZITO_DOMAIN!,
});
// app/[lang]/(home)/page.tsx
'use client';
import { useEffect, useState } from 'react';
import { sazito } from '@/app/lib/sazito-client';

export default function Example() {
  const [data, setData] = useState<any>(null);

  useEffect(() => {
    sazito.orders.list({ pageNumber: 1, pageSize: 20 }).then((res) => setData(res.data ?? null));
  }, []);

  return <pre>{JSON.stringify(data, null, 2)}</pre>;
}

Type Details

The following tables are generated from SDK TypeScript types and include nested object fields.

OrderFilters

Source: src/types/order.ts

FieldTypeRequired
pageNumbernumberOptional
pageSizenumberOptional
filtersArray<{ name: string; value: JsonValue }>Optional
filters.[].namestringRequired
filters.[].valueJsonValueRequired

Order

Source: src/types/order.ts

FieldTypeRequired
idnumberRequired
orderNumberstringRequired
orderIdentifierstringRequired
invoiceOrderInvoiceRequired

OrderInvoice

Source: src/types/order.ts

FieldTypeRequired
invoiceItemsInvoiceItem[]Required
shippingItemsJsonObject[]Required
netTotalnumberOptional
finalTotalnumberOptional
shippingTotalnumberOptional
discountTotalnumberOptional
creditTotalnumberOptional
vatnumberOptional
vatPercentnumberOptional
itemsTotalRawPricenumberOptional
itemsDiscountnumberOptional
customerProfitnumberOptional
customerProfitPercentagenumberOptional
discountUsagesArray<{ discountCode?: { code?: string }; }>Optional
discountUsages.[].discountCode{ code?: string }Optional
discountUsages.[].discountCode.codestringOptional

InvoiceItem

Source: src/types/invoice.ts

FieldTypeRequired
idnumber | stringRequired
productVariantIdnumberRequired
productIdnumberOptional
namestringRequired
urlstringOptional
attributesProductAttribute[]Required
productTypestringOptional
hasMaxOrderbooleanOptional
maxOrderQuantitynumberOptional
minOrderQuantitynumberOptional
imageImageOptional
quantitynumberRequired
unitPricenumberRequired
lineTotalnumberRequired
rawPricenumberRequired
customerProfitnumberRequired
commercialFilesJsonValueOptional
formAttributesRecord<string, FormAttributeValue> | InvoiceItemFormAttributesOptional
bookingAttributesSchedulerBookingAttributesOptional
formFieldsJsonObjectOptional

ProductAttribute

Source: src/types/common.ts

FieldTypeRequired
namestringRequired
valuestring | ProductAttributeValueObjectRequired

ProductAttributeValueObject

Source: src/types/common.ts

FieldTypeRequired
valuestringRequired
extrastringOptional
fieldTypestringOptional

ShippingAddress

Source: src/types/invoice.ts

FieldTypeRequired
idnumberRequired
identifierstringRequired
firstNamestringRequired
lastNamestringRequired
mobilePhonestringOptional
phoneNumberstringOptional
emailstringOptional
regionShippingAddressRegionOptional
cityShippingAddressCityRequired
addressstringRequired
postalCodestringOptional
descriptionstringOptional
latitudenumberOptional
longitudenumberOptional
userSetCoordinatesBeforebooleanOptional

PaymentMethod

Source: src/types/payment.ts

FieldTypeRequired
idnumberRequired
codePaymentGatewayRequired
titlestringRequired
titleFastringRequired
descriptionstring | nullRequired
paymentSubTypenumber | nullRequired
ordernumberRequired
isDefaultbooleanRequired

On this page