ÍNDICE
1. ETAPA 1 - CREDENCIAIS NA SHOPIFY
Gerar Access Token, ID do local e Account Name
2. ETAPA 2 - ADIÇÃO DE CREDENCIAIS NO BANCO DE DADOS
3. ETAPA 3 - CRIAÇÃO DE METACAMPOS NA SHOPIFY
4. ETAPA 4 - CONFIGURAÇÃO DO WEBHOOK
5. ETAPA 5 - GERAR CARRIER SERVICE PARA FRETE
6. ETAPA 6 - REGISTRO NA COLLECTION DE CANAL
7. ETAPA 7 - CONFIGURAÇÃO DE FRETE PARA PRODUTOS 1P
8. ETAPA 8 - PONTO DE RETIRADA NO CHECKOUT
1. ETAPA 1 - CREDENCIAIS NA SHOPIFY
Passo 1: Gerar Access Token
Nesta fase, é criado um app privado para obter o token de acesso necessário para a integração.
2. ETAPA 2 - ADIÇÃO DE CREDENCIAIS NO BANCO DE DADOS
As informações obtidas na Shopify (Token, Name e ID) devem ser inseridas manualmente no sistema Wayhub.
3. ETAPA 3 - CRIAÇÃO DE METACAMPOS NA SHOPFY
ETAPA 3 - CRIAÇÃO DE METACAMPOS NA SHOPIFY
4. CONFIGURAÇÃO DE WEBHOOK
Configuração de notificações automáticas para criação, pagamento e cancelamento de pedidos.
Integração com Shopify
Neste tutorial, explicaremos o passo a passo para configurar a integração com a Shopify. Embora grande parte do processo ocorra na própria plataforma Shopify, também será necessário inserir algumas informações dentro do sistema Omnik.
É importante que o procedimento descrito seja seguido para garantir que todas as ações sejam executadas corretamente.
Etapa 1 - Credenciais na Shopify
Passo 1: Gerar Access Token
Entre na plataforma Shopify e clique no ícone de engrenagem no canto inferior da tela para acessar as Configurações (Settings).

Dentro das Configurações, no menu lateral, selecione a opção "Apps and sales channels". Em seguida, clique no botão "Develop Apps" no canto superior direito.

Na página de App Development, clique no botão "Create an app".

Um modal será exibido, solicitando o nome do aplicativo. Preencha com “Omnik” e continue o processo.

Com o aplicativo criado, vá para a aba Configuration e clique no botão Configurar dentro do card chamado Admin API Integration para conceder as permissões necessárias ao app.

Na seção Admin API Access Scopes, selecione todas as opções disponíveis e clique em Salvar.

Depois de salvar as permissões, vá até a aba API Credentials. No card Access Tokens, clique no botão "Install app".

Será exibida uma mensagem de confirmação para a instalação do aplicativo. Clique em "Install" para continuar com o processo.

Ao instalar o aplicativo, um token será gerado. Esse token deverá ser utilizado internamente na Omnik.
⚠️ Importante: O token só será exibido uma única vez. Certifique-se de copiá-lo e salvá-lo em um local seguro, como um bloco de notas.

Copie o token clicando no ícone de prancheta, conforme mostrado na imagem abaixo. Esse token será necessário na Etapa 2: Adicionando as Credenciais no Banco de Dados.

Passo 2 : Gerar ID do local de estoque
Ainda na tela de Configurações, no menu lateral, selecione a opção "Locations".
Por padrão, já existirá um local de estoque configurado, o qual pode ser utilizado. Clique sobre o nome do local para acessar a página com as informações detalhadas.

Na página de informações do local de estoque, o ID poderá ser encontrado no final da URL, conforme demonstrado na imagem abaixo.

Copie o ID do local de estoque, pois ele será necessário na Etapa 2: Adicionando as Credenciais no Banco de Dados.
Passo 3 : Gerar Account Name
O Account Name é o nome exibido na parte superior do menu da Shopify, conforme mostrado na imagem abaixo. Simplesmente copie o nome, pois ele será utilizado na Etapa 2: Adicionando as Credenciais no Banco de Dados.

Etapa 2: Adição das credenciais no banco de dados
Com as credenciais em mãos, é necessário inseri-las manualmente no banco de dados.
Acesse o Wayhub > hub
Encontre o operador correspondente ao qual deseja adicionar as credenciais.
No operador, insira as seguintes informações, conforme mostrado na imagem abaixo:
Nome da Plataforma Integradora
Access Token
Account Name (nome da loja)
ID do Local de Estoque

Após inserir todas as informações, salve as mudanças para garantir que a integração esteja corretamente configurada.
Etapa 3: Criação de Metacampos na Shopify
Nesta etapa, iremos criar campos personalizados para os módulos de produto e coleção utilizando Metacampos.
Produtos - Tenant:
Na tela de Configurações, no menu lateral, selecione a opção "Custom Data" e depois clique em "Products".

Você será direcionado para a página de Product Metafield Definitions. Clique no botão "Add definition" para iniciar a criação de um metacampo.

Na tela Add Product Metafield Definition, preencha as informações conforme indicado:
Name: Tenant
Namespace and key: produto.tenant
Descrição: Identificação do seller
Em seguida, clique em "Select Type" e escolha a opção "Single line text" para especificar o tipo de dado que esse campo receberá.

Por fim, no card Options, selecione a opção "Read" e ative as duas opções disponíveis:
Filter in product index
Automated collections

Após concluir as configurações, clique em Salvar para finalizar a criação do metacampo.
Produtos - Categoria:
Na tela de Configurações, no menu lateral, selecione a opção "Custom Data" e depois clique em "Products".

Você será direcionado para a página de Product Metafield Definitions. Clique no botão "Add definition" para iniciar a criação de um metacampo.

Na tela Add Product Metafield Definition, preencha as informações conforme indicado:
Name: Categoria
Namespace and key: produto.categoria
Descrição: Campo responsável por identificar a categoria do produto
Em seguida, clique em "Select Type" e escolha a opção "Single line text" para especificar o tipo de dado que esse campo receberá.

Por fim, no card Options, selecione a opção "Read" e ative as duas opções disponíveis:
Filter in product index
Automated collections

Após concluir as configurações, clique em Salvar para finalizar a criação do metacampo.
Collections - Tenant:
Na tela de Configurações, no menu lateral, selecione a opção "Custom Data" e depois clique em "Collections".

Você será direcionado para a página de Collection Metafield Definitions. Clique no botão "Add definition" para iniciar a criação de um metacampo.

Na tela Add Product Metafield Definition, preencha as informações conforme indicado:
Name: Tenant
Namespace and key: colecao.tenant
Descrição: Identificação do seller
Em seguida, clique em "Select Type" e escolha a opção "Single line text" para especificar o tipo de dado que esse campo receberá.

Por fim, no card Options, selecione a opção "No Access".

Após concluir as configurações, clique em Salvar para finalizar a criação do metacampo.
Collections - Tratar como Categoria:
Na tela de Configurações, no menu lateral, selecione a opção "Custom Data" e depois clique em "Collections".

Você será direcionado para a página de Collection Metafield Definitions. Clique no botão "Add definition" para iniciar a criação de um metacampo.
Na tela Add Product Metafield Definition, preencha as informações conforme indicado:
Name: Tratar como categoria no site
Namespace and key: colecao.tratarComoColategoria
Descrição: Responsável por identificar se a coleção é a página do seller ou categoria no front marketplace.
Em seguida, clique em "Select Type" e escolha a opção "True or False" para especificar o tipo de dado que esse campo receberá.

Por fim, no card Options, selecione a opção "No Access".

Após concluir as configurações, clique em Salvar para finalizar a criação do metacampo.
Etapa 4: Configuração do Webhook
Nesta etapa, vamos configurar os Webhooks na Shopify para automatizar notificações. Siga o procedimento abaixo para cadastrar três webhooks:
Na tela de Configurações, no menu lateral, selecione "Notifications" e depois clique em "Webhooks".

Para cadastrar um novo webhook, clique em "Create Webhook"

Configuração do Primeiro Webhook - Criação de pedido:
No modal que aparecerá, preencha as seguintes informações:
Event: Selecione a opção "Order creation".
Format: Escolha JSON.
URL: Insira a URL do sistema com o tenant da operação no final e adicione o endpoint necessário. O formato da URL deve ser: https://api.omnik.io/channels/P/{tenantOperador}/shopify/order/create
Webhook API version: Selecione a opção 2024-04
Após preencher todas as informações, clique em Salvar.

Configuração do Segundo Webhook - Criação de pagamento:
No modal que aparecerá, preencha as seguintes informações:
Event: Selecione a opção "Order payment".
Format: Escolha JSON.
URL: Insira a URL do sistema com o tenant da operação no final e adicione o endpoint necessário. O formato da URL deve ser: https://api.omnik.io/channels/P/{tenantOperador}/shopify/order/payment
Webhook API version: Selecione a opção 2024-04
Após preencher todas as informações, clique em Salvar.

Configuração do Terceiro Webhook - Criação de cancelamento:
No modal que aparecerá, preencha as seguintes informações:
Event: Selecione a opção "Order cancellation".
Format: Escolha JSON.
URL: Insira a URL do sistema com o tenant da operação no final e adicione o endpoint necessário. O formato da URL deve ser: https://api.omnik.io/channels/P/{tenantOperador}/shopify/order/cancellation
Webhook API version: Selecione a opção 2024-04
Após preencher todas as informações, clique em Salvar.

Agora, com os três webhooks configurados (Criação de Pedido, Pagamento e Cancelamento), deverá ser exibido os três webhooks cadastrados, conforme mostrado na imagem abaixo.
Etapa 5: Gerar Carrier Service para cotação de frete
Nesta etapa, vamos configurar o Carrier Service na Shopify para permitir que as cotações de frete sejam integradas ao sistema da OmniK. Isso será feito através de uma requisição HTTP, utilizando o Postman ou através da importação do cURL da requisição. Siga as instruções abaixo:
Acesse o Postman: Abra o Postman e crie uma nova requisição do tipo POST para enviar os dados do Carrier Service.
Defina a URL do Endpoint:
Substitua {nome-da-loja} pelo nome da sua loja Shopify no seguinte endpoint:
https://{nome-da-loja}.myshopify.com/admin/api/2024-04/carrier_services.json
Cabeçalhos da Requisição:
X-Shopify-Access-Token: Insira o Access Token que foi gerado anteriormente.
Content-Type: Defina como application/json.
Dados da Requisição: No corpo da requisição, adicione o seguinte JSON:
{
"carrier_service": {
"name": "OMNIK CARRIER SERVICE",
"callback_url": "https://api.omnik.io/v1/freight/{tenantOperador}/shopify/orderForms/simulation",
"service_discovery": true
}
}
Substitua {tenantOperador} pelo identificador correto da operação.
Exemplo cURL: Caso prefira utilizar o cURL diretamente, importe o seguinte comando:
curl --location 'https://{nome-da-loja}.myshopify.com/admin/api/2024-04/carrier_services.json' \
--header 'X-Shopify-Access-Token: {Acesse-token}' \
--header 'Content-Type: application/json' \
--data '{
"carrier_service": {
"name": "OMNIK CARRIER SERVICE",
"callback_url": "https://api.omnik.io/v1/freight/{tenantOperador}/shopify/orderForms/simulation",
"service_discovery": true
}
}'
Teste a Requisição: Execute a requisição e verifique se o Carrier Service foi configurado com sucesso. Isso permitirá que as cotações de frete sejam processadas automaticamente através do nosso sistema.
Agora, o Carrier Service está configurado, e as cotações de frete serão devolvidas de forma integrada sempre que um pedido for realizado na loja Shopify.
Etapa 6: Criar registro da shopify na collection de canal no banco de dados
Obs: Sempre que criar uma nova operação que utilizará shopify, o tenant do mesmo deve ser adicionado dentro do array lojista.

Etapa 7: Configuração de frete para produtos 1P
Nesta etapa, será configurada a cotação de frete para produtos 1P, ou seja, produtos cuja venda é de responsabilidade do próprio marketplace e que não estão cadastrados na Omnik.
Acesse a tela de Configurações. No menu lateral, clique em Shipping and Delivery e, posteriormente, selecione “Create a Custom Profile”.

Na página Create Shipping Profile, informe o nome da configuração desejada no campo Profile Name. Esse nome é interno e não será exibido ao consumidor final.

Adicione os produtos que farão parte dessa cotação clicando no botão “Add products” na seção Products. Em seguida selecione os produtos.
⚠️ Importante: A inserção dos produtos no momento da criação do perfil de cotação 1P não é obrigatória, eles poderão ser adicionados posteriormente. Vale ressaltar que a categorização desses produtos na modalidade 1P é feita manualmente. Assim, a partir do momento em que o marketplace desejar disponibilizar seus produtos para venda, será necessário incluí-los neste perfil.


Adicione as configurações de envio do marketplace clicando no botão “Add Shipping Zone”, localizado na seção Shipping Zones.

Selecione os estados disponíveis para envio e clique no botão “Done”. O nome atribuído às zonas de envio é interno e não será exibido ao consumidor.

Em seguida, clique em “Add rate”, para cadastrar o preço do envio.

Insira, no campo Custom Rate Name, o nome que será exibido na página de carrinho para essa configuração de frete. Caso deseje adicionar uma descrição, utilize o campo Custom Delivery Description (optional). Em seguida, defina o valor do frete:
Para um valor fixo, utilize o campo Price;
Caso o preço varie com base no peso do item ou valor da venda, insira as condições clicando em “Add Conditional Pricing”.
Por fim, clique em Done.

Salve as alterações. Após essa ação, o usuário será redirecionado para a tela Shipping and Delivery, onde será exibida a configuração de frete recém-criada.


Caso seja necessário adicionar novos produtos a essa modalidade de cotação, clique no perfil já configurado. Em seguida, acione o botão “Manage products”, selecione os produtos desejados e salve as alterações.



Etapa 8: Configuração de Ponto de Retirada do Marketplace no Checkout
Nesta etapa, será realizada a configuração dos pontos de retirada do marketplace na plataforma Omnik, com o objetivo de disponibilizá-los como uma opção adicional de entrega ao consumidor final, juntamente com as demais modalidades de envio.
É importante destacar que, uma vez que os pontos de retirada forem cadastrados pelo marketplace, os sellers que desejarem aderir a essa modalidade deverão configurar uma política de envio específica, vinculando os pontos de retirada disponibilizados.
Cadastro da opção ponto de retirada
Estando autenticado como operador, no menu lateral esquerdo, selecione a opção "Logística" e, posteriormente, "Métodos de Envio". Em seguida, acione o botão "Adicionar" para acessar a barra lateral de cadastro.

Insira o nome desejado para a opção de método de envio, e no campo tipo de entrega, selecione "Retirada no Local". Para finalizar, clique em "Salvar" e o usuário será redirecionado para a tela de listagem de opções de métodos de envio.


Cadastro do ponto de retirada
Após realizar o login como operador, no menu lateral esquerdo, selecione "Logística" e, posteriormente, "Pontos de Retirada". Em seguida, clique no botão "Adicionar Ponto de Retirada" para acessar a tela de cadastro.

Preencha as informações básicas do ponto de retirada, como nome, descrição e endereço, entre outros.

Acesse a aba "Horário de Funcionamento" para configurar os horários da loja e possíveis exceções que possam impactar a operação do ponto de retirada. Ao concluir, clique em "Salvar". O usuário será redirecionado para a tela de listagem de pontos de retirada cadastrados.



Cadastro da política de envio
Após realizar o login como seller, no menu lateral esquerdo, selecione "Logística" e, em seguida, "Políticas de Envio". Clique no botão "Adicionar Política de Envio" para acessar a tela de cadastro.

Preencha os dados da política de envio. Ao selecionar a opção referente ao ponto de retirada no campo "Método de Envio", o campo Pontos de Retirada será exibido para que você selecione os pontos previamente cadastrados pelo operador.
⚠️ Observação: No contexto geral do cadastro da política de envio, apenas a associação com os pontos de retirada e a tabela de frete já é suficiente para que a cotação seja possível.

Acesse a aba "Tabela de Frete", faça o download da planilha modelo e, após preenchê-la, realize o upload no sistema. Em seguida, clique em "Salvar" para que o usuário seja redirecionado à tela de listagem de políticas de envio.
⚠️Importante: O seller deve realizar o upload da tabela de frete para que o sistema possa calcular o valor do envio com base nas dimensões do produto, bem como no tempo estimado de entrega até o ponto de retirada do marketplace. O preço final será repassado ao consumidor.



Este artigo foi útil?
Que bom!
Obrigado pelo seu feedback
Desculpe! Não conseguimos ajudar você
Obrigado pelo seu feedback
Feedback enviado
Agradecemos seu esforço e tentaremos corrigir o artigo