> ## Documentation Index
> Fetch the complete documentation index at: https://www.commercengine.io/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Retrieve fulfillment options

> Returns available fulfillment options for a cart and delivery pincode. The `summary` object indicates `collect_available`, `deliver_available`, and `recommended_fulfillment_type`. Use the `collect` array for Click & Collect store locations and `deliver` for delivery details.



## OpenAPI

````yaml post /carts/fulfillment-options
openapi: 3.1.0
info:
  version: '1.0'
  title: CE Storefront APIs
  summary: Customer-facing e-commerce API for building exceptional shopping experiences
  description: >-
    Public-facing API for Commerce Engine storefronts, enabling seamless
    shopping experiences with product browsing, cart management, checkout
    processing, user accounts, and order tracking. Perfect for building web,
    mobile, and headless commerce applications.
  contact:
    name: Support
    email: support@commercengine.io
    url: https://www.commercengine.io/contact-us
  license:
    url: https://www.commercengine.io/contact-us
    name: All Rights Reserved
servers:
  - url: https://staging.api.commercengine.io/api/v1/{store_id}/storefront
    description: Staging Server
    variables:
      store_id:
        description: Store ID
        default: store_id
    x-speakeasy-server-id: staging
  - url: https://prod.api.commercengine.io/api/v1/{store_id}/storefront
    description: Prod Server
    variables:
      store_id:
        description: Store ID
        default: store_id
    x-speakeasy-server-id: prod
security: []
tags:
  - name: Analytics
    description: Analytics
  - name: Auth
    description: auth
  - name: Campaigns
    description: Campaigns
  - name: Carts
    description: Carts
  - name: Catalog
    description: Catalog
  - name: Common
    description: Common
  - name: Coupons & promotions
    description: Coupons & promotions
  - name: Customers
    description: Customers
  - name: Juspay
    description: Juspay Payments
  - name: KYC
    description: KYC
  - name: Marketplace
    description: Marketplace
  - name: Orders
    description: Orders
  - name: Others
    description: Others
  - name: Payments
    description: Payments
  - name: PayU
    description: PayU Payments
  - name: POS
    description: POS
  - name: Shipping
    description: Shipping
  - name: Store
    description: Store
  - name: Subscriptions
    description: Subscriptions
externalDocs:
  url: https://llm-docs.commercengine.io
  description: Commerce Engine API Reference Documentation
paths:
  /carts/fulfillment-options:
    parameters: []
    post:
      tags:
        - Carts
      summary: Retrieve fulfillment options
      description: >-
        Returns available fulfillment options for a cart and delivery pincode.
        The `summary` object indicates `collect_available`, `deliver_available`,
        and `recommended_fulfillment_type`. Use the `collect` array for Click &
        Collect store locations and `deliver` for delivery details.
      operationId: get-fulfillment-options
      parameters: []
      requestBody:
        description: ''
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CartBasedFulfillmentOption'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                required:
                  - message
                  - success
                  - content
                properties:
                  message:
                    type: string
                  success:
                    type: boolean
                  content:
                    properties:
                      summary:
                        type: object
                        properties:
                          collect_available:
                            type: boolean
                          deliver_available:
                            type: boolean
                          recommended_fulfillment_type:
                            enum:
                              - collect-in-store
                              - delivery
                          recommended_store:
                            $ref: '#/components/schemas/CollectInStore'
                        required:
                          - collect_available
                          - deliver_available
                          - recommended_fulfillment_type
                      collect:
                        type: array
                        items:
                          $ref: '#/components/schemas/CollectInStore'
                      deliver:
                        $ref: '#/components/schemas/DeliveryOption'
                    required:
                      - summary
                    type: object
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      security:
        - Authorization: []
      externalDocs:
        url: >-
          https://llm-docs.commercengine.io/storefront/operations/get-fulfillment-options
        description: API reference for the get-fulfillment-options operation
components:
  schemas:
    CartBasedFulfillmentOption:
      title: CartBasedFulfillmentOption
      type: object
      externalDocs:
        url: >-
          https://llm-docs.commercengine.io/storefront/schemas/CartBasedFulfillmentOption
        description: API reference for the CartBasedFulfillmentOption schema
      required:
        - cart_id
      properties:
        cart_id:
          type: string
        fulfillment_type:
          type: string
          enum:
            - delivery
            - collect-in-store
    CollectInStore:
      title: CollectInStore
      type: object
      externalDocs:
        url: https://llm-docs.commercengine.io/storefront/schemas/CollectInStore
        description: API reference for the CollectInStore schema
      properties:
        id:
          type: string
        name:
          type: string
        distance_km:
          type: number
        collect_eta_minutes:
          type: integer
        is_recommended:
          type: boolean
        address:
          $ref: '#/components/schemas/CollectInStoreAddress'
    DeliveryOption:
      title: DeliveryOption
      type: object
      externalDocs:
        url: https://llm-docs.commercengine.io/storefront/schemas/DeliveryOption
        description: API reference for the DeliveryOption schema
      required:
        - is_serviceable
        - free_shipping_threshold
        - shipments
      properties:
        is_serviceable:
          type: boolean
        free_shipping_threshold:
          description: free shipping threshold of delivery option
          type:
            - number
            - 'null'
        shipments:
          type: array
          items:
            type: object
            properties:
              id:
                type: string
              items:
                type: array
                items:
                  $ref: '#/components/schemas/ShipmentItem'
              shipping_methods:
                type: array
                items:
                  type: object
                  properties:
                    id:
                      type: string
                    name:
                      type: string
                    shipping_type:
                      enum:
                        - auto
                        - manual
                    shipping_amount:
                      description: >-
                        shipping amount of manual method or as per recommened
                        courier or range of min-max shipping amount.
                      type: string
                    estimated_delivery_days:
                      description: >-
                        estimated delivery days of manual method or as per
                        recommened courier or range of min-max estimated
                        delivery days.
                      type: string
                    courier_companies:
                      type: array
                      items:
                        type: object
                        properties:
                          id:
                            type:
                              - string
                              - number
                          name:
                            type: string
                          shipping_amount:
                            type: number
                          estimated_delivery_days:
                            type: string
                          is_recommended:
                            type: boolean
                          is_hyperlocal:
                            type: boolean
                          mode:
                            enum:
                              - air
                              - surface
                          rating:
                            type: number
            required:
              - id
              - items
              - shipping_methods
    CollectInStoreAddress:
      title: CollectInStoreAddress
      type: object
      externalDocs:
        url: >-
          https://llm-docs.commercengine.io/storefront/schemas/CollectInStoreAddress
        description: API reference for the CollectInStoreAddress schema
      required:
        - name
        - address_line1
        - pincode
        - city
        - state
        - country
        - country_code
      properties:
        name:
          type: string
        address_line1:
          type: string
        address_line2:
          type:
            - string
            - 'null'
        landmark:
          type:
            - string
            - 'null'
        pincode:
          type: string
        city:
          type: string
        state:
          type: string
        country:
          type: string
        country_code:
          type: string
          default: '+91'
    ShipmentItem:
      title: ShipmentItem
      description: Shipment item model
      type: object
      externalDocs:
        url: https://llm-docs.commercengine.io/storefront/schemas/ShipmentItem
        description: API reference for the ShipmentItem schema
      properties:
        product_id:
          type: string
        product_name:
          type: string
        product_image_url:
          type:
            - string
            - 'null'
        variant_id:
          type: string
        variant_name:
          type: string
        sku:
          type: string
        quantity:
          type: integer
        free_quantity:
          type: integer
        is_free_item:
          type: boolean
  responses:
    BadRequest:
      description: Bad request
      content:
        application/json:
          schema:
            type: object
            required:
              - message
              - success
              - code
            properties:
              message:
                type: string
                x-speakeasy-error-message: true
              success:
                type: boolean
              code:
                type: string
              error:
                type: object
    Unauthorized:
      description: Not authorized for given operation on the Resource
      content:
        application/json:
          schema:
            type: object
            required:
              - message
              - success
              - code
            properties:
              message:
                type: string
                examples:
                  - Not authorized for given operation on the Resource.
                x-speakeasy-error-message: true
              success:
                type: boolean
                default: false
              code:
                type: string
                examples:
                  - unauthorized
    NotFound:
      description: Requested resource not found
      content:
        application/json:
          schema:
            type: object
            required:
              - message
              - success
              - code
            properties:
              message:
                type: string
                x-speakeasy-error-message: true
              success:
                type: boolean
              code:
                type: string
  securitySchemes:
    Authorization:
      type: http
      description: Access token
      scheme: bearer

````