Erro ao adicionar itens ao carrinho - [ORD021]

Request:

vtexjs.checkout.getOrderForm().then(() => vtexjs.checkout.addToCart([{id: 3422, quantity: 1, seller: '1'}]))

Resultado:

Sem título

O que estou fazendo errado?

Me parece que está certo.

O erro continua?

@Nathan Prestes Sim, continua.

Abra um chamado neste caso

@Victor Hugo Schmidt​

Veja se esse exemplo te ajuda? o addToCart tem mais parametros para passar no vtexJs.... o básico é nesse formato que vc está tentando mesmo.

var item = {

id: 26,

quantity: 1,

seller: 1

};

vtexjs.checkout.addToCart([item])

.done(function(orderForm) {

alert('Item adicionado!');

console.log(orderForm);

});

https://github.com/vtex/vtex.js/tree/master/docs/checkout#addtocartitems-expectedorderformsections-saleschannel

****explicação mais completa no gitHub

OBS:

"id do item" é o idSku do seu ambiente ai...

Mais estranho é que semana passada, na sexta feira, quando o mesmo foi implementado, estava adicionando itens ao carrinho normalmente. Segunda feira parou de funcionar.

Outros erros que aparecem junto do console:

Sem título

O último erro ali representa o erro no qual comento sobre.

@Nathan Prestes​ Chamado aberto.

Eu executei esse seu comando em outras lojas e funcionou, possivelmente é algo com o Catalogo ou com a Politica Comercial, talvez não é o padrão SC=1, ai tem que declarar no addToCart, conforme está no gitHub.

Se eu tento passar (ex: item,null,2) dá erro 400 bad request em uma loja que usa SC=1. Veja se é isso no seu caso ou Declara dessa forma para testar.

Bem pensado, mas nossa loja é em sc=1

Sem título

Já tentei dessa forma, infelizmente sem resultado :(

@Victor Hugo Schmidt​ Conseguiu resolver o problema?

@Douglas araujo​ Sim.

só via chamado? consegue passar mais detalhes, algumas lojas estão enfrentando o msm problema.

Acontece que trabalho com multi-lojas, ao inserir um item no carrinho, eu precisava especificar a política comercial da loja na qual o código estava rodando. No meu caso deveria escrever assim:

vtexjs.checkout.getOrderForm().then(() => vtexjs.checkout.addToCart([{id: 3422, quantity: 1, seller: '1'}], null, 6))

6 é a política comercial da minha loja, por não colocar valor nenhum, o método addToCart assumiu outra política, no caso, a política 1. Assim gerando o erro acima.

Entendi, obrigado, infelizmente não é o erro que estamos enfrentando, valeu!!

Pessoa, boa noite. Adicionei mais um seller em minha loja e meu carrinho só funciona para os meus produtos. Eu pesquisei bastante e consegue chegar neste cenário:

Não sei como deixar a aopção para o scripit de add ao carrinho, usar ambos os sellers:

$(this).parent().find("input").val();var t={id:$(this).parents("li").find(".SKU .first input.insert-sku-checkbox").attr("rel"),quantity:"1",seller:"1"};

No script acima, eu gostaria de nao limitar ao Seller: 1, pois tenho outros sellers. Já tentei usar a string, mas nao consegui.

A mesma coisa neste trecho:

t="/checkout/cart/add?sku="+e.parents("li").find(".skus li.ativo").attr("rel")+"&qty=1&seller=1&seller=1&redirect=false&sc=1";$("#ajaxBusy").fadeIn(),

- Eu tentei suistibuir o numero "1" por "ID_SELLER" mas nao funcionou