Skip to main content
Com este recurso é possível conectar APIs externas de cálculo de frete para serviços que não são integrados nativamente na Yampi.

Como habilitar

Para habilitar este recurso, o lojista deve criar uma nova API de frete pelo painel da Yampi:
  1. Acesse o menu: Configurações > Logística > API de Frete
  2. Clique em Criar nova API de Frete
  3. Preencha os campos obrigatórios:
    • Nome da API
    • URL da API
    • Headers (opcional)

Requisição enviada pela Yampi

Quando um comprador solicitar o cálculo de frete, a Yampi enviará uma requisição POST para a URL cadastrada com o seguinte corpo:

Campos da requisção

CampoDescrição
zipcodeCEP de entrega
amountValor total do carrinho
skus[].idID do SKU na Yampi
skus[].product_idID do Produto na Yampi
skus[].skuCódigo do SKU
skus[].pricePreço do SKU multiplicado pela quantidade
skus[].unit_pricePreço unitário do SKU.
skus[].quantityQuantidade de itens
skus[].lengthComprimento unitário do SKU
skus[].widthLargura unitária do SKU
skus[].heightAltura unitária do SKU
skus[].weightPeso unitário do SKU (em KG)
skus[].availability_daysPrazo de postagem (em dias)
skus[].platform.nameNome da plataforma externa
skus[].platform.external_idID do SKU na plataforma externa
cart.promocodeCupom de desconto (opcional)
cart.customer.documentCPF ou CNPJ do cliente
cart.customer.emailE-mail do cliente

Resposta esperada

Sua API deverá obrigatoriamente responder no formato abaixo:

Campos da resposta

CampoDescrição
nameNome da opção de frete apresentada ao cliente.
serviceServiço de entrega (Alias de frete) utilizado (exemplo: PAC, SEDEX, LOGGI, etc.).
priceValor do frete em reais.
daysPrazo estimado de entrega em dias.
quote_idIdentificador único da cotação gerada para essa opção de frete.
free_shipmentIndica se o frete é grátis (true) ou não será grátis (false).

⚠️ Sua aplicação deve responder em até 4 segundos. Caso contrário, a Yampi abortará a requisição.

Segurança nas requisições

Para garantir que a requisição partiu da Yampi, é necessário validar a assinatura enviada no header.

Como validar:

  1. Pegue o valor do header X-Yampi-Hmac-SHA256
  2. Gere a assinatura localmente usando HMAC-SHA256 do corpo da requisição com a chave secreta da API de frete
  3. Codifique em base64
  4. Compare o resultado com o valor recebido no header
Se a assinatura for igual ao valor do header, ✅ requisição é legítima.

Conclusão

Com essa integração, você pode oferecer opções de frete personalizadas no checkout da Yampi, mantendo controle sobre prazos, preços e validação de segurança.