# Send Data to parcelLab

## Overview

You need to send parcelLab the information of each and every parcel for us to create a corresponding record in our system and track your deliveries.

A tracking is the smallest data unit in the parcelLab system and is created when you submit a new parcel or pallet to be tracked by parcelLab. An order is usually created when you submit tracking information for one or multiple parcels or pallets along with a corresponding order number, although order details can also be submitted if you have them before the tracking information (for example: during the pre-dispatch process).

{% hint style="success" %}
The recommended method for submitting data is via API through the `order` endpoint as this provides greater flexibility for orders with multiple trackings. For further information, see [how to create a tracking/order via API](https://docs.parcellab.com/docs/developers/v2/orders/trackings-orders#post-create-a-tracking-order).
{% endhint %}

## Submit Tracking Data

You can submit a new parcel or pallet to create a tracking in the parcelLab system. You need to provide parcelLab with the following information for each tracking to enable us to track your parcels:

* For trackings - the carrier, tracking number, destination country, and zip code
* For notifications - the name and email of the recipient, delivery address, and relevant reference numbers, like the order number

{% hint style="info" %}
You implicitly create orders by adding a corresponding order number when submitting tracking information.
{% endhint %}

## Submit Order Data

You can submit an order that at a later point in time will contain tracking information for one or multiple shipments, parcels, or pallets. Order creation normally happens implicitly by providing a corresponding order number when submitting tracking information.

If order details are available to you before the actual tracking information, you can explicitly submit order information in advance. This enables parcelLab to conduct certain activities, for example:

* Monitor the lead time between order creation and dispatch
* Trigger specific actions such as alerts or delay emails&#x20;

With this order information already in the parcelLab system, you can send pre-dispatch communications, inform customers about split orders, as well as monitor warehouse SLAs.

An order is considered the earlier version of tracking before the tracking number itself has been assigned. Hence, creating an order behaves exactly the same and creates the exact same data structure as creating a tracking, but does not require the `courier` and `tracking_number`.

{% hint style="success" %}
Sending the `courier` and `tracking_number` data when it is available will help connect future trackings to the order. The `xid` or `orderNo` will be used as primary identifier to overwrite or extend existing records.
{% endhint %}

{% hint style="warning" %}
If you update an order record with tracking information via API, you should use the `order` endpoint again to submit the data. For further information, see [how to update an order via API](https://docs.parcellab.com/docs/developers/v2/orders/trackings-orders#put-update-a-tracking-order).
{% endhint %}

## Data Integration Methods

You can use the following methods to send tracking and order data to parcelLab:

* Our `order` endpoint allows you to submit tracking and order details through our powerful API integration to create the corresponding record in the parcelLab system.

{% content-ref url="../orders/trackings-orders" %}
[trackings-orders](https://docs.parcellab.com/docs/developers/v2/orders/trackings-orders)
{% endcontent-ref %}

* File-based exchange supports file formats like .csv, .xml or EDIFACT and provides easy integration.

{% content-ref url="send-data/file-transfers" %}
[file-transfers](https://docs.parcellab.com/docs/developers/v2/data-elements/send-data/file-transfers)
{% endcontent-ref %}

* The email-based transmission is limited in terms of flexibility and data quality but offers a zero-effort integration into parcelLab.

{% content-ref url="send-data/emails" %}
[emails](https://docs.parcellab.com/docs/developers/v2/data-elements/send-data/emails)
{% endcontent-ref %}

### Platform Integrations

The methods described above are our go-to integration options as they are fully platform-independent and work for anyone integrating with parcelLab. However, there are some additional specific platform dependent integrations that should make integration easier for customers using them that can be accessed via our [App Store](https://app.gitbook.com/s/-LPf1Lv1YUuLYva6LrXQ/platform/app-store).


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.parcellab.com/docs/developers/v2/data-elements/send-data.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
