> For the complete documentation index, see [llms.txt](https://developer.esw.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://developer.esw.com/integrations/integration-methods/core-integrations.md).

# Core Integrations

ESW is modular. You can integrate only what you need. If you’re integrating end-to-end, you must integrate **Catalog**, **Checkout**, and **Package**.

{% hint style="warning" %}
For integrations (APIs, SFTP files, apps, webhooks), see [Integration Methods](/integrations/integration-methods.md).
{% endhint %}

{% columns %}
{% column width="16.666666666666664%" %}

<div align="center"><figure><img src="/files/KnRvzXuwyUWVweWwWxxZ" alt=""><figcaption></figcaption></figure></div>
{% endcolumn %}

{% column width="83.33333333333334%" valign="middle" %}
{% hint style="info" icon="rectangle-api" %}
Customs Catalog API
{% endhint %}

Integrate product catalog with ESW using the Customs Catalog API or Excel `xlsx` or CSV `csv` file
{% endcolumn %}
{% endcolumns %}

***

{% columns %}
{% column width="16.666666666666664%" %}

<div align="center"><figure><img src="/files/A0MfoUpcumSLrxxYn5nA" alt=""><figcaption></figcaption></figure></div>
{% endcolumn %}

{% column width="83.33333333333334%" valign="middle" %}
{% hint style="info" icon="rectangle-api" %}
Checkout API
{% endhint %}

Integrate checkout using the Checkout API or our commerce platform connectors for Magento, Salesforce Commerce Cloud or Shopify.
{% endcolumn %}
{% endcolumns %}

***

{% columns %}
{% column width="16.666666666666664%" %}

<div align="center"><figure><img src="/files/XG8XjSqVtRMwKfeTZot6" alt=""><figcaption></figcaption></figure></div>
{% endcolumn %}

{% column width="83.33333333333334%" valign="middle" %}
{% hint style="info" icon="rectangle-api" %}
Package API
{% endhint %}

Share the package data with ESW using the Package API or an `XML` file.
{% endcolumn %}
{% endcolumns %}

***

### What you integrate

{% tabs %}
{% tab title="Catalog Integration" %}
Provide your product catalog so ESW can calculate duties/taxes and support customs compliance. ESW stores the catalog in its database for ongoing calculations and validations.

#### What you send

Typical fields include:

* Product code / SKU
* Product description
* Country of origin
* Weight
* HS code

#### When you send it

* During onboarding for initial setup.
* On updates (new items, attribute changes, etc.).

ESW recommends sending a **full catalog** on updates, not deltas.

#### Integration options

* **Customs Catalog API**: upload and update catalogs via `POST`.
* **Catalog file transfer (SFTP)**: upload an Excel/CSV file to an ESW-provided SFTP location.
  {% endtab %}

{% tab title="Checkout Integration" %}
Integrate ESW Checkout to hand off the shopper’s cart and complete the purchase flow.

#### Integration options

* **Checkout API**:
  * Send cart details to ESW.
  * Redirect the shopper using the URL returned by ESW.
  * Optionally send discounts and promo codes via `POST`.
* **Apps and extensions**:
  * Magento plugin.
  * Salesforce Commerce Cloud (SFCC) cartridge.
  * ESW-Shopify app for Shopify stores.
    {% endtab %}

{% tab title="Package Integration" %}
Synchronize orders and package data with ESW logistics.

#### What you send

Send package-level data as an **Advanced Shipping Notice (ASN)**. This confirms what will ship in each package.

You must send the ASN **before** packages arrive at the ESW hub. In practice, send it before you ship from your distribution center.

Typical fields include:

* Order number
* Item quantity and description
* Weight and dimensions

#### Integration options

* **Package API**:
  * Create/update package data for an ESW order.
  * Retrieve an existing package via `GET`.
* **XML file (SFTP)**:
  * Generate XML in the ESW format.
  * Upload it to SFTP on an agreed schedule.
    {% endtab %}
    {% endtabs %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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, and the optional `goal` query parameter:

```
GET https://developer.esw.com/integrations/integration-methods/core-integrations.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
