2.0 Beta

Smootify 2.0 is in public beta. Your 1.x store keeps working. Move when you want.

What changed

Smootify.applyCouponCode()

resolves with the cart, or with Shopify's errors

v2.0 beta
Open .md
On this page
  1. Types
  2. Cart
  3. UserError

resolves with the cart, or with Shopify’s errors Since 1.x.

applyCouponCode(couponCode: string): Promise<Cart | UserError[]>

Types

Cart

export interface Cart {
  /** `gid://shopify/Cart/<id>` */
  id: string;
  checkoutUrl: string;
  totalQuantity: number;
  note: string | null;
  attributes: Attribute[];
  buyerIdentity: {
    countryCode: string | null;
    email: string | null;
    phone: string | null;
    customer: {
      id: string;
      email: string | null;
      firstName: string | null;
      lastName: string | null;
      displayName: string;
    } | null;
  };
  lines: { nodes: CartLine[] };
  cost: {
    subtotalAmount: Money;
    totalAmount: Money;
    totalDutyAmount: Money | null;
    totalTaxAmount: Money | null;
    subtotalAmountEstimated: boolean;
    totalTaxAmountEstimated: boolean;
  };
  discountCodes: { code: string; applicable: boolean }[];
  appliedGiftCards: { id: string; lastCharacters: string; amountUsed: Money; balance: Money }[];
  discountAllocations: DiscountAllocation[];
}

UserError

/** An error Shopify answers (a sold-out variant, an invalid code) or a filter throws. */
export interface UserError {
  message: string;
  field?: string[] | null;
  code?: string | null;
}

    ↑ ↓ to moveEnter to openEsc to close