Commercio Docs

Orders

Complete order management workflow with status tracking.

Order Workflow

Complete order lifecycle from creation to completion

Order Lifecycle

100%
Loading diagram...

Code Example

Implementation of the order workflow

import { createServices } from "commercio";

const { customerService, orderService, categoryService, productService } = createServices();

// First, create a customer
const customer = await customerService.createCustomer(
  "John Doe",
  {
    street: "123 Main St",
    city: "Berlin",
    postalCode: "10115",
    country: "Germany",
  },
  { email: "john.doe@example.com" }
);

// Create order (customerId is required)
const order = await orderService.createOrder(customer.id, [
  {
    productId: product.id,
    quantity: 5,
    unitPrice: 1999, // €19.99 in cents
  },
]);

console.log(`Order created: ${order.id}`);
console.log(`Total amount: €${(order.totalAmount / 100).toFixed(2)}`);

// Confirm order (creates reservations)
const confirmedOrder = await orderService.confirmOrder(order.id, warehouse.id);

// Mark as paid
const paidOrder = await orderService.markOrderAsPaid(order.id);

// Ship order (consumes reservations, creates transactions)
const shippedOrder = await orderService.shipOrder(order.id, warehouse.id);

// Complete order
const completedOrder = await orderService.completeOrder(order.id);

Order Operations

Cancel Order

Cancel an order and release reservations

// Cancel order (releases reservations)
const cancelledOrder = await orderService.cancelOrder(order.id);