Skip to main content
POST
/
api
/
v1
/
orders
/
:id
/
fulfillments
Fulfill Order
curl --request POST \
  --url https://api.launchmystore.io/api/v1/orders/:id/fulfillments \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "tracking_number": "<string>",
  "tracking_company": "<string>",
  "tracking_url": "<string>",
  "tracking_numbers": [
    {}
  ],
  "notify_customer": true,
  "line_items": [
    {
      "id": "<string>",
      "quantity": 123
    }
  ],
  "location_id": "<string>"
}
'
{
  "success": true,
  "data": {
    "id": "<string>",
    "order_id": "<string>",
    "status": "<string>",
    "tracking_number": "<string>",
    "tracking_company": "<string>",
    "tracking_url": "<string>",
    "line_items": [
      {}
    ],
    "created_at": "<string>",
    "updated_at": "<string>"
  }
}

Documentation Index

Fetch the complete documentation index at: https://docs.launchmystore.io/llms.txt

Use this file to discover all available pages before exploring further.

Fulfill Order

Creates a fulfillment record for an order, marking items as shipped. You can fulfill all items at once or create partial fulfillments.

Request

curl -X POST "https://api.launchmystore.io/api/v1/orders/ord_abc123/fulfillments" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "tracking_number": "1Z999AA10123456784",
    "tracking_company": "UPS",
    "tracking_url": "https://ups.com/track?num=1Z999AA10123456784",
    "notify_customer": true,
    "line_items": [
      {
        "id": "li_xyz789",
        "quantity": 2
      }
    ]
  }'

Path Parameters

id
string
required
The unique order ID

Body Parameters

tracking_number
string
Tracking number for the shipment
tracking_company
string
Shipping carrier name (e.g., “UPS”, “FedEx”, “USPS”, “DHL”)
tracking_url
string
Full tracking URL
tracking_numbers
array
Multiple tracking numbers (for split shipments)
notify_customer
boolean
default:"true"
Whether to send shipping notification email to the customer
line_items
array
Specific line items to fulfill. If not provided, all unfulfilled items will be included.
location_id
string
Inventory location ID for the fulfillment

Response

success
boolean
Whether the request succeeded
data
object
The fulfillment object

Example Response

{
  "success": true,
  "data": {
    "id": "ful_abc123",
    "order_id": "ord_abc123",
    "status": "success",
    "tracking_number": "1Z999AA10123456784",
    "tracking_company": "UPS",
    "tracking_url": "https://ups.com/track?num=1Z999AA10123456784",
    "line_items": [
      {
        "id": "li_xyz789",
        "product_id": "prod_abc123",
        "variant_id": "var_xyz789",
        "title": "Classic T-Shirt",
        "variant_title": "Small / Black",
        "quantity": 2,
        "fulfillable_quantity": 0,
        "fulfillment_status": "fulfilled"
      }
    ],
    "created_at": "2024-01-25T10:00:00Z",
    "updated_at": "2024-01-25T10:00:00Z"
  }
}

Supported Tracking Companies

The following carriers are automatically recognized:
CarrierAccepted Values
UPSUPS, ups
FedExFedEx, fedex, Federal Express
USPSUSPS, usps, US Postal Service
DHLDHL, dhl, DHL Express
Canada PostCanada Post, canada_post
Royal MailRoyal Mail, royal_mail
Australia PostAustralia Post, auspost
For other carriers, provide the tracking_url directly.

Error Codes

CodeDescription
UNAUTHORIZEDInvalid or missing access token
FORBIDDENApp doesn’t have write_orders scope
NOT_FOUNDOrder with the specified ID does not exist
VALIDATION_ERRORInvalid request body
ALREADY_FULFILLEDOne or more line items are already fulfilled
INVALID_QUANTITYFulfillment quantity exceeds available quantity