# Integração WCPOS com ATUM

Integra o [ATUM Multi-Inventory](https://www.stockmanagementlabs.com/addons/atum-multi-inventory/) com o [WCPOS Pro](/pt-BR/getting-started/pro-license.md), permitindo estoque, preços e SKUs por local no ponto de venda.

O ATUM Multi-Inventory permite dividir o estoque de um produto entre vários locais de inventário — armazéns, lojas físicas e assim por diante. Este plugin conecta esses locais do ATUM às [lojas](/pt-BR/stores/.md) do WCPOS Pro para que cada terminal de ponto de venda exiba os níveis de estoque, preços e SKUs corretos para o seu local físico.

## Recursos[​](#features "Link direto para Recursos")

#### Estoque por Local

Cada loja obtém as quantidades de estoque do local de inventário ATUM atribuído, em vez do estoque agregado do WooCommerce.

#### Preços Flexíveis

Escolha entre os preços padrão do WooCommerce, os preços por loja do WCPOS Pro ou os preços específicos por local do ATUM.

#### SKUs por Local

Opcionalmente, substitua o SKU principal do produto por um SKU específico de localização ATUM no POS.

#### Movimentação de Estoque Segura para Auditoria

Os pedidos deduzem e restauram o estoque na localização ATUM correta, com trilha de auditoria completa em `atum_inventory_orders`.

#### Sincronização de Edição de Produto

Edições de estoque, preço e SKU feitas no POS são sincronizadas de volta para a linha de inventário ATUM correspondente àquela localização.

## Instalação[​](#installation "Link direto para Instalação")

1

#### Instale o ATUM e o Multi-Inventory

Instale o [ATUM Inventory Management](https://wordpress.org/plugins/atum-stock-manager-for-woocommerce/) e o [complemento ATUM Multi-Inventory](https://www.stockmanagementlabs.com/addons/atum-multi-inventory/). Configure suas localizações de inventário no ATUM.

2

#### Instale a Integração WCPOS ATUM

Instale a partir de `WP Admin > POS > Configurações > Extensões`, ou baixe a versão mais recente na [página de releases do GitHub](https://github.com/wcpos/wcpos-atum/releases) e envie via `Plugins > Adicionar novo > Enviar plugin`.

3

#### Mapeie lojas para localizações ATUM

Vá até `POS > Lojas`, edite uma loja e configure a seção lateral **Inventário ATUM**. Escolha a localização de inventário que a loja deve utilizar, selecione uma origem de preço e, opcionalmente, ative a substituição de SKU.

## Configuração da Loja[​](#store-configuration "Link direto para Configuração da Loja")

O plugin adiciona uma seção **Inventário ATUM** à barra lateral do editor de lojas do WCPOS Pro com três configurações por loja:

* **Localização do Inventário** — de qual localização ATUM esta loja obtém o estoque.

* **Origem de Preços** — de onde vêm os preços dos produtos:

  <!-- -->

  * *Padrão* — preços padrão do WooCommerce
  * *WCPOS Pro* — preços por loja definidos no WCPOS Pro
  * *ATUM* — preços específicos por localização do inventário ATUM

* **Substituição de SKU** — opcionalmente usa SKUs específicos por localização do ATUM em vez do SKU principal do produto.

## Comportamento no POS[​](#pos-behavior "Link direto para Comportamento no POS")

Quando uma loja tem uma localização ATUM atribuída, os dados de produtos fornecidos ao POS são ajustados automaticamente:

* **Quantidades em estoque** refletem o inventário da localização específica, não o estoque agregado do WooCommerce.
* **Status do estoque** é recalculado com base na quantidade da localização.
* **Preços** vêm da fonte de preços configurada.
* **SKUs** são substituídos pelo SKU da localização ATUM se a substituição estiver habilitada.

Todos os ajustes acontecem de forma transparente pela API REST do WCPOS — nenhuma alteração é necessária no lado do aplicativo POS. Edições de produtos feitas no POS também são gravadas de volta na linha de inventário ATUM mapeada; consulte [Gravação de Edição de Produto](#product-edit-write-back) abaixo.

## Gerenciamento de Estoque[​](#stock-management "Link direto para Gerenciamento de Estoque")

Para pedidos POS realizados em lojas com uma localização ATUM mapeada, o plugin permite que o fluxo nativo de dedução de estoque do ATUM execute a gravação — mas direciona para a localização correta:

1. **Injeção de payload REST.** Quando o POS cria ou atualiza um pedido, o plugin injeta uma entrada `mi_inventories` em cada item de linha para que o ATUM saiba de qual localização retirar. Sem isso, o ATUM usaria o inventário principal como fallback.
2. **Filtro de inventário por localização.** O plugin filtra a lista de inventários candidatos do ATUM para incluir apenas aqueles vinculados ao termo de localização mapeado da loja, garantindo que o correto seja selecionado tanto na redução quanto na restauração.

O próprio ATUM realiza a alteração real de estoque no pedido e no reembolso, gravando linhas em `atum_inventory_orders` com o `order_id` real — preservando a trilha de auditoria do ATUM.

## Gravação de Edição de Produto[​](#product-edit-write-back "Link direto para Gravação de Edição de Produto")

Quando um operador de caixa ou gerente edita um produto ou variação no POS, as alterações são sincronizadas de volta para a linha de inventário ATUM mapeada para a localização daquela loja — não apenas para o produto principal do WooCommerce. Isso mantém o estoque, preço e SKU de cada localização sincronizados com o ATUM sem atualizações manuais no `WP Admin`.

A gravação é acionada em atualizações REST de produtos e variações do WCPOS (`POST`, `PUT`, `PATCH` em `/wcpos/v1/products/...`) que incluem um `store_id`. O plugin busca a localização ATUM mapeada da loja e atualiza apenas a linha de inventário daquela localização — outras localizações não são afetadas.

### O que é Sincronizado[​](#what-syncs "Link direto para O que é Sincronizado")

A gravação de volta respeita a configuração de cada loja, de modo que os dados do ATUM só são alterados quando a loja realmente é proprietária desses dados:

| Campo                                         | Quando sincroniza                                                                                 |
| --------------------------------------------- | ------------------------------------------------------------------------------------------------- |
| **Quantidade em estoque**                     | Sempre — toda loja com uma localização ATUM mapeada mantém sua linha de localização sincronizada. |
| **Preço regular / Preço promocional / Preço** | Somente quando a **Origem de Preço** da loja está definida como *ATUM*.                           |
| **SKU**                                       | Somente quando a **Substituição de SKU** está habilitada para a loja.                             |

Se a loja usa a precificação *Padrão* ou *WCPOS Pro*, os campos de preço do ATUM não são alterados, de modo que o ATUM continua servindo como preço de referência em vez de fonte da verdade. O mesmo se aplica aos SKUs quando a substituição está desativada.

### O Que Não Aciona a Gravação de Volta[​](#what-doesnt-trigger-write-back "Link direto para O Que Não Aciona a Gravação de Volta")

* Criação de produtos (somente atualizações acionam a gravação de volta — produtos novos seguem o fluxo normal de salvamento do WooCommerce).
* Requisições sem um `store_id` — o POS precisa informar ao plugin em qual localização gravar.
* Lojas sem uma localização ATUM mapeada.
* Produtos sem uma linha de inventário ATUM existente para a localização da loja — o plugin não cria novas linhas de inventário, apenas atualiza as existentes.

## Requisitos[​](#requirements "Link direto para Requisitos")

WordPress

<!-- -->

: WordPress 5.9+ com PHP 7.4+

WooCommerce

<!-- -->

: WooCommerce instalado e ativado

ATUM

<!-- -->

: ATUM Inventory Management e complemento ATUM Multi-Inventory

WCPOS

<!-- -->

: WCPOS Pro — multilojas é um recurso Pro

## Relacionados[​](#related "Link direto para Relacionados")

* [Multilojas](/pt-BR/stores/.md) — preços por loja, endereços e atribuição de operadores de caixa
* Código-fonte: [github.com/wcpos/wcpos-atum](https://github.com/wcpos/wcpos-atum)
