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

# Sincronize seu catálogo

> Registre sua integração, envie o catálogo e confirme o processamento.

Use este fluxo para publicar ou atualizar categorias, produtos, preços e disponibilidade.

<Steps>
  <Step title="Registre as URLs da integração">
    Use `PUT /v1/merchantOnboarding` antes da primeira sincronização ou quando suas URLs mudarem.

    ```bash Sandbox theme={null}
    curl --request PUT \
      --url https://api.dev.connect.onbeefapp.com.br/v1/merchantOnboarding \
      --header 'Authorization: Bearer <access_token>' \
      --header 'Content-Type: application/json' \
      --data '{
        "merchantId": "<merchant_id>",
        "getMerchantURL": {
          "baseURL": "https://seu-pdv.example.com",
          "apiKey": "<api_key>"
        },
        "ordersWebhookURL": "https://seu-pdv.example.com/webhooks/orders"
      }'
    ```
  </Step>

  <Step title="Envie o catálogo">
    Use `PUT /v1/merchantUpdate`. Escolha o `entityType` conforme o tamanho da atualização:

    | Valor        | Uso                                                     |
    | ------------ | ------------------------------------------------------- |
    | `MERCHANT`   | Envia o merchant, as categorias, os itens e as ofertas. |
    | `ITEM`       | Atualiza itens.                                         |
    | `ITEM_OFFER` | Atualiza preço e disponibilidade das ofertas.           |

    A resposta `204` indica que o payload foi recebido para processamento.

    <Card title="Ver o payload completo" icon="code" href="/api-reference/merchant/sync-catalog">
      Consulte todos os campos e o exemplo de sincronização.
    </Card>
  </Step>

  <Step title="Confirme o resultado">
    Consulte `GET /v1/merchantStatus` com o `merchantId`:

    ```bash Sandbox theme={null}
    curl --request GET \
      --url 'https://api.dev.connect.onbeefapp.com.br/v1/merchantStatus?merchantId=<merchant_id>' \
      --header 'Authorization: Bearer <access_token>'
    ```

    Aguarde `SUCCESS`. Use `moreInfo` para entender uma resposta `FAIL`.
  </Step>
</Steps>

## Quando atualizar

Envie uma atualização quando mudar:

* o preço de um produto;
* a disponibilidade de uma oferta;
* a composição de uma categoria;
* os dados ou o status da loja.

<Warning>
  `merchantStatus: "UNAVAILABLE"` deixa a loja indisponível na Onbeef.
</Warning>
