Skip to main content
Use OAuth quando o seu app vai ser instalado por outros vendedores, não só operar na sua própria loja — cada um autoriza o acesso à própria loja, sem nunca te dar a senha nem uma API Key permanente da conta dele. Se você só precisa integrar a sua própria loja, uma API Key é mais simples e você pode pular esse guia.

Visão geral do fluxo

0. Registre o seu app

Antes de tudo, você precisa de um client_id e client_secret. Isso é feito no painel da Lojou (não por uma chamada de API) — fale com o suporte ou registre o app em Configurações → Apps/Integrações pra receber as credenciais e cadastrar o(s) redirect_uri autorizado(s).

1. Mande o vendedor autorizar

Redirecione o navegador do vendedor pra tela de autorização da Lojou, com o client_id do seu app e o redirect_uri (precisa bater exatamente com o que foi cadastrado no passo 0):
O vendedor loga na própria conta Lojou (se ainda não estiver logado) e vê uma tela com o nome do seu app e os escopos pedidos, pra aprovar ou recusar.
Confirme a URL exata dessa tela com o time da Lojou ao registrar seu app (passo 0) — o que importa pro seu integração é o par client_id/redirect_uri, que é validado pela API independente de qual página os hospeda.

2. Receba o callback

Se o vendedor aprovar, a Lojou redireciona de volta pro seu redirect_uri com dois parâmetros:
  • code — de uso único, expira em 10 minutos.
  • state — o mesmo valor que a Lojou gerou nesse fluxo; sirva-se dele pra confirmar que a resposta corresponde a uma autorização que você mesmo iniciou (proteção contra CSRF).

3. Troque o code por um token

Guarde o access_token e o refresh_token associados a esse vendedor (um por loja conectada) — nunca ao seu app como um todo.

4. Chame a API em nome do vendedor

Todo endpoint /v1/* funciona igual, seja o token vindo de OAuth ou de uma API Key — a diferença é só na forma como o token foi emitido.

Erros comuns

Escopos

O vendedor só aprova os escopos que o seu app pediu — e pode ser um subconjunto deles, dependendo do que ele aceitar na tela de autorização. O campo permissions na resposta do token diz exatamente o que foi concedido; chame GET /v1/scopes a qualquer momento pra conferir de novo.