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

# Update parcel status

> Notify Global-e of a parcel's status change. The notification is handled asynchronously until the new parcel status is successfully updated.

The update status request is issued by the merchant to notify of a parcel's status change. The notification is received by Global-e and handled **asynchronously** until the new parcel status is successfully updated. In case of a failure to update, the merchant will not be asked to retry.

<Note>
  If the status update to the new status requested by the merchant is not allowed, or if the parcel has not yet been created, manual intervention by Global-e will be required.
</Note>

## Prerequisites

When using this call for the Buy-Online-Pick-In-Store (BOPIS) procedure, the `UpdateParcelStatus` call is initiated by the merchant following the issue of the `UpdateOrderDispatchV2` call.

## Error codes

The following error code may be returned in the response.

| # | Code | Error Message      | Description                                           |
| - | ---- | ------------------ | ----------------------------------------------------- |
| 1 | B001 | Order ID not found | The Order ID provided by the merchant does not exist. |


## OpenAPI

````yaml api-reference/specs/updateparcelstatus.yaml POST /orders/{orderId}/parcels/{parcelCode}/statuses
openapi: 3.0.3
info:
  title: UpdateParcelStatus
  version: 1.0.0
  description: >-
    The UpdateParcelStatus API is issued by the merchant to notify Global-e of a
    parcel's status change. The notification is handled asynchronously until the
    new parcel status is successfully updated.
servers:
  - url: https://{globale_api_domain}
    variables:
      globale_api_domain:
        default: globale_api_domain
        description: Global-e API host, supplied to the merchant by Global-e.
security: []
tags:
  - name: UpdateParcelStatus
    x-page-title: Update Parcel Status
  - name: 'Direction: Merchant → Global-e'
  - name: 'Domain: Fulfillment'
paths:
  /orders/{orderId}/parcels/{parcelCode}/statuses:
    post:
      tags:
        - UpdateParcelStatus
      summary: Update Parcel Status
      description: >-
        The update status request is issued by the merchant to notify of a
        parcel's status change. The notification is received by Global-e and
        handled asynchronously until the new parcel status is successfully
        updated. In case of a failure to update, the merchant will not be asked
        to retry.
      operationId: updateParcelStatus
      parameters:
        - name: orderId
          in: path
          required: true
          description: The Global-e order ID.
          schema:
            type: string
        - name: parcelCode
          in: path
          required: true
          description: The parcel code for which a status update is required.
          schema:
            type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateParcelStatusRequest'
            example:
              merchantParcelStatusCode: Delivered
      responses:
        '200':
          description: >-
            Status update accepted. Check the `Success` field; on failure,
            `Error` carries the message (and is omitted from the JSON when the
            call succeeds).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UpdateParcelStatusResponse'
              example:
                Success: true
components:
  schemas:
    UpdateParcelStatusRequest:
      type: object
      title: UpdateParcelStatusRequest
      required:
        - merchantParcelStatusCode
      properties:
        merchantParcelStatusCode:
          type: string
          description: Parcel status to be modified by the merchant.
          example: Delivered
    UpdateParcelStatusResponse:
      type: object
      title: UpdateParcelStatusResponse
      required:
        - Success
      properties:
        Success:
          type: boolean
          description: >-
            Indicates if the call has succeeded. True — the status update was
            accepted. False — denotes an error or failure.
        Error:
          type: string
          nullable: true
          description: Error message. Omitted from the response when the call succeeds.

````