Oi @gabernardone Tudo bem?
Atualmente, não existe um endpoint público na API da VTEX que retorne diretamente o valor configurado da opção “Quantidade máxima de um mesmo SKU no Carrinho” que você vê na imagem (Configurações da loja > Configurações > Gerais).
Alternativas e soluções possíveis:
1. Controle no backend com valor fixo, criando um arquivo de configuração e validando a partir dele
Como essa configuração é estática e administrada manualmente via VTEX Admin, a abordagem mais comum é replicar esse valor no backend como um parâmetro de ambiente ou em uma tabela de configuração. Por exemplo:
{
"maxSkuQtyInCart": 50
}
Exemplo prático:
1. Crie um arquivo config.json com o valor
Coloque esse arquivo no seu app VTEX IO, por exemplo dentro da pasta /assets ou /config.
// config/config.json
{
"maxSkuQtyInCart": 50
}
2. Consuma esse valor no backend
Se você estiver usando um app custom com Node.js:
const config = require('./config/config.json');
function validarQuantidadeSku(carrinho) {
for (const item of carrinho.items) {
if (item.quantity > config.maxSkuQtyInCart) {
throw new Error(`Quantidade do SKU ${item.skuId} excede o máximo permitido de ${config.maxSkuQtyInCart}.`);
}
}
}
3. Ou use no frontend VTEX IO (React)
Você pode importar com fetch ou require no React, dependendo de onde está o arquivo.
import config from '../config/config.json';
const maxQty = config.maxSkuQtyInCart;
// agora pode comparar com item.quantity
Alternativa: expor via GraphQL ou REST
- Você pode expor esse valor como um endpoint interno (GraphQL ou REST), retornando o valor do JSON, e o frontend consulta.
- Assim, se o cliente mudar esse número no JSON, já reflete na lógica.
Ideia de resposta extraída a partir de Quantidade máx de um mesmo sku - #4 by fabio.santos
Espero que ajude.
Abs,
Diretoria Four2One