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

# Import connectors

> Scheduled, automated feeds that import a partner or ERP catalog on a schedule.

An import connector is a scheduled, automated feed that brings a partner or ERP
catalog into MerchantOps without anyone uploading a file by hand. Where
[uploading products](/data-ingestion/uploading-products) is a one-time action you
take, a connector runs on a schedule and keeps your catalog in sync with an
upstream source.

Connectors are a generic pattern: any recurring source that can deliver a data
file — most commonly a **file drop over SFTP** — can drive one. The rest of this
page describes that pattern with a file/SFTP feed as the reference example.

## The pattern

<Steps>
  <Step title="A feed lands on a schedule">
    The upstream system drops a file — for example a nightly catalog export
    placed in an SFTP folder — on its own schedule. MerchantOps picks it up when
    it arrives.
  </Step>

  <Step title="The file is parsed and mapped">
    Each row is parsed and its columns are mapped to product fields and
    [attributes](/catalog/product-types-properties), the same way a
    [CSV upload](/data-ingestion/uploading-products) maps columns — just applied
    automatically instead of interactively.
  </Step>

  <Step title="Products are created or updated">
    New rows become new [products](/catalog/products-variants); rows that match
    an existing product update it. Re-importing an unchanged row is treated as a
    no-op, so a feed that mostly repeats itself doesn't churn your catalog.
  </Step>

  <Step title="The run is tracked as a Job">
    Every run creates a [Job](/jobs/overview) with counts of created, updated,
    and failed rows, plus per-row error detail — the same tracking you get from a
    manual upload.
  </Step>
</Steps>

<Note>
  Connectors are configured per organization for your specific upstream source and
  schedule. Talk to your MerchantOps contact to set one up.
</Note>

## When to use a connector

Reach for a connector when the source of truth for your catalog lives in another
system and changes regularly:

* A partner or vendor sends a catalog export on a fixed cadence.
* An ERP or PIM produces a nightly or hourly extract.
* You want new and changed items to flow in without a person running an upload.

For a single batch, or data you're preparing by hand, a
[CSV upload](/data-ingestion/uploading-products) is simpler. For programmatic,
on-demand ingestion from your own code, use the [API](/tools/cli).

## Enrichment on import

Like other ingestion paths, an import can hand new and changed products to
[enrichment](/enrichment/how-it-works) so they arrive filled in rather than bare.
Enrichment runs in the background and is tracked under the import's Job.

<CardGroup cols={2}>
  <Card title="Uploading products" icon="file-csv" href="/data-ingestion/uploading-products">
    The manual, one-time counterpart to a scheduled connector.
  </Card>

  <Card title="Jobs" icon="list-check" href="/jobs/overview">
    Monitor each connector run and review per-row errors.
  </Card>

  <Card title="How enrichment works" icon="wand-magic-sparkles" href="/enrichment/how-it-works">
    What happens to products a connector brings in.
  </Card>

  <Card title="The API & CLI" icon="code" href="/tools/cli">
    Programmatic, on-demand ingestion from your own systems.
  </Card>
</CardGroup>
