Carrinho de Compra
Através da API de Carrinho de compra é possível incluir e remover produtos e resgatar as informações para exibição ao cliente.
URL de Acesso
https://{sualojavirtual}.commercesuite.com.br/web_api/cart
Protocolo
Rest/HTTP
Sessão do Usuário
Na API de Carrinho de Compra também será necessário resgatar a informação da sessão do usuário no carrinho. Esta informação poderá ser capturada através de um código javascript.
Apesar da sessão do usuário já existir no dataLayer, algumas páginas possuem cache e poderão trazer as informações de forma incorreta. Para evitar este problema, caso seja necessário, disponibilizamos a sessão também no código fonte das páginas do sistema para que possa ser recuperado.
Abaixo apresentamos um código exemplo para que seja feita a captura da sessão:
<script type="text/javascript">
var dataSession = $("html").attr("data-session");
</script>
Consultar Informações do Carrinho de Compra
Para retornar as informações do Carrinho de Compra, basta realizar uma requisição via GET, enviando na URL o código da sessão do carrinho.
Para a integração com esta API, deverá ser realizada uma requisição via GET, concatenando o código da sessão do usuário no final da URL.
Veja abaixo uma chamada de exemplo para consultar informações do carrinho de compra:
<script type="text/javascript">
var dataSession = $("html").attr("data-session");
$.ajax({
method: "GET",
url: "/web_api/cart/"+dataSession
}).done(function( response, textStatus, jqXHR ) {
console.log(response);
}).fail(function( jqXHR, status, errorThrown ){
var response = $.parseJSON( jqXHR.responseText );
console.log(response);
});
</script>
A consulta de informações do carrinho de compra retorna uma resposta em JSON.
Abaixo um detalhamento de cada nó do JSON de resposta:
Cart
Nó principal da resposta
Cart.session_id
Código da Sessão do Carrinho
Cart.product_id
Código do Produto
Cart.product_name
Nome do Produto
Cart.quantity
Quantidade
Cart.price
Preço do Produto
Cart.weight
Peso do Produto
Cart.date
Data
Cart.variant_id
Código da Variação
Cart.user_id
ID do usuário
Cart.user_cod
Código do Usuário
Cart.hour
Hora
Cart.product_url
Objeto com as URLs do Produto
Cart.product_url.http
URL Simples do Produto
Cart.product_url.https
URL Segura do Produto
Cart.product_image
Objeto com as imagens do Produto
Cart.product_image.http
URL Simples da Imagem do produto
Cart.product_image.https
URL Segura da Imagem do produto
Cart.product_image.thumbs
Miniatura da Imagem do Produto
Cart.product_image.thumbs.30
Miniatura de Tamanho 30px
Cart.product_image.thumbs.30.http
URL Simples da Miniatura de 30px
Cart.product_image.thumbs.30.https
URL Segura da Miniatura de 30px
Cart.product_image.thumbs.90
Miniatura de Tamanho 90px
Cart.product_image.thumbs.90.http
URL Simples da Miniatura de 90px
Cart.product_image.thumbs.90.https
URL Segura da Miniatura de 90px
Cart.product_image.thumbs.180
Miniatura de Tamanho 180px
Cart.product_image.thumbs.180.http
URL Simples da Miniatura de 180px
Cart.product_image.thumbs.180.https
URL Segura da Miniatura de 180px
Cart.email
Email do Usuário
Cart.additional_information
Informações Adicionais
Exemplo de resposta com sucesso baseando no envio do exemplo acima:
[
{
"Cart": {
"email": "",
"session_id": "pfhqg4ekivc5hqrdh3me2e8dp4",
"product_id": "6",
"product_name": "Nome do Produto",
"quantity": "1",
"price": "50.00",
"weight": "100",
"date": "2016-09-30",
"variant_id": "0",
"additional_information": "",
"user_id": "0",
"customer_id": "0",
"user_cod": "0",
"hour": "13:55:43",
"product_url": {
"http": "http://urldaloja.commercesuite.com.br/acessorios/sleeves-protetores/dragon-shield-fusion",
"https": "https://urldaloja.commercesuite.com.br/acessorios/sleeves-protetores/dragon-shield-fusion"
},
"product_image": {
"http": "http://images2.tcdn.com.br/img/img_prod/888/6_1_20141201121139.jpg",
"https": "https://images2.tcdn.com.br/img/img_prod/888/6_1_20141201121139.jpg",
"thumbs": {
"30": {
"http": "http://images1.tcdn.com.br/img/img_prod/888/30_6_1_20141201121139.jpg",
"https": "https://images1.tcdn.com.br/img/img_prod/888/30_6_1_20141201121139.jpg"
},
"90": {
"http": "http://images3.tcdn.com.br/img/img_prod/888/90_6_1_20141201121139.jpg",
"https": "https://images.tcdn.com.br/img/img_prod/888/90_6_1_20141201121139.jpg"
},
"180": {
"http": "http://images2.tcdn.com.br/img/img_prod/888/180_6_1_20141201121139.jpg",
"https": "https://images2.tcdn.com.br/img/img_prod/888/180_6_1_20141201121139.jpg"
}
}
}
}
}
Attrs
Caso deseje exibir apenas alguns atributos da API, pode-se utilizar o parâmetro attrs
O parâmetro Attrs deve ser passado pela url da requisição da API, nela você deve passar os atributos da qual deseja exibir separados por (,).
Exemplo:
https://{URL_LOJA}/web_api/cart/dataSession?attrs=Cart.product_name
Terá como resposta o conteúdo abaixo:
"Cart": {
"id": "660",
"product_name": "Camisa basica<br /><strong>Cor</strong> Vermelho"
}
Abaixo um exemplo de utilização desse parâmetro:
var dataSession = $("html").attr("data-session");
var params = {};
params["attrs"] = "Cart.product_name,Cart.product_id";
$.ajax({
method: "GET",
url: "/web_api/cart/"+dataSession,
data: params
}).done(function( response, textStatus, jqXHR ) {
console.log(response);
}).fail(function( jqXHR, status, errorThrown ){
var response = $.parseJSON( jqXHR.responseText );
console.log(response);
});
Incluir Produto no Carrinho de Compra
Para incluir produtos no carrinho de compra, basta realizar uma requisição via POST, enviando os parâmetros com informações do produto.
A requisição para a integração será via POST, onde segue abaixo os dados necessários para envio:
Cart
Sim
Objeto
Nó principal da resposta
Cart.session_id
Sim
Texto / 32
Código da Sessão
Cart.product_id
Sim
Número
Código do Produto
Cart.quantity
Sim
Número
Quantidade
Cart.variant_id
Não
Número
Código da Variação
Exemplo de um JSON de envio baseando nos dados de envio acima:
{
"Cart": {
"session_id": "rkqeli8b00a697r4q9jnbi6il6",
"product_id": "100",
"quantity": "2",
"variant_id": "0"
}
}
Veja abaixo uma chamada de exemplo para incluir produtos no carrinho de compra:
<script type="text/javascript">
var dataSession = $("html").attr("data-session");
$.ajax({
method: "POST",
url: "/web_api/cart/",
contentType: "application/json; charset=utf-8",
data: '{"Cart":{"session_id":"'+dataSession+'","product_id":"100","quantity":"2","variant_id":"0"}}'
}).done(function( response, textStatus, jqXHRH ) {
console.log(response);
}).fail(function( jqXHR, status, errorThrown ){
var response = $.parseJSON( jqXHR.responseText );
console.log(response);
});
</script>
Ao incluir produtos do carrinho de compra, é retornada uma resposta em JSON.
Abaixo um detalhamento de cada nó do JSON de resposta:
message
Mensagem de Retorno
id
Código do Carrinho
session_id
Código da Sessão do Carrinho
cart_url
URL do Carrinho
code
HTTP Code de Resposta
Exemplo de resposta com sucesso baseando no envio do exemplo acima:
{
'message': 'Created',
'id': '615440',
'session_id': 'rkqeli8b00a697r4q9jnbi6il6',
'cart_url': 'https://sualojavirtual.commercesuite.com.br/loja/carrinho.php?loja=12&transID=rkqeli8b00a697r4q9jnbi6il6,
'code': '201'
}
Excluir Produto do Carrinho de Compra
Para excluir um produto especifico no carrinho de compra, basta realizar uma requisição utilizando o método DELETE, passando na url o session_id
e o product_id
do produto.
Esta requisição exclui um produto inteiro do carrinho. Caso ele tenha uma ou mais variações, todas serão excluídas do carrinho.
URL de Acesso
https://{sualojavirtual}.commercesuite.com.br/web_api/carts/{session_id}/{product_id}
Protocolo
Rest/HTTP
Veja abaixo uma chamada de exemplo para excluir produtos no carrinho de compra:
<script type="text/javascript">
var dataSession = $("html").attr("data-session");
var productID = 6
$.ajax({
method: "DELETE",
url: "/web_api/carts/"+dataSession+"/"+productID
}).done(function( response, textStatus, jqXHR ) {
console.log(response);
}).fail(function( jqXHR, status, errorThrown ){
var response = $.parseJSON( jqXHR.responseText );
console.log(response);
});
</script>
Ao excluir produtos do carrinho de compra, é retornada uma resposta em JSON.
Abaixo um detalhamento de cada nó do JSON de resposta:
message
Mensagem de Retorno
id
Código do Carrinho
session_id
Código da Sessão do Carrinho
cart_url
URL do Carrinho
code
HTTP Code de Resposta
Exemplo de resposta com sucesso baseando no envio do exemplo acima:
{
'message': 'Deleted',
'id': '615440',
'session_id': 'rkqeli8b00a697r4q9jnbi6il6',
'cart_url': 'https://sualojavirtual.commercesuite.com.br/loja/carrinho.php?loja=12&transID=rkqeli8b00a697r4q9jnbi6il6,
'code': '201'
}
Excluir Variação de um Produto no Carrinho de Compra
Para excluir uma variação especifica do produto no carrinho de compra, basta realizar uma requisição utilizando o método DELETE, passando na url o session_id
e o product_id
e o variant_id
do produto.
Esta requisição exclui uma variação específica do carrinho.
URL de Acesso
https://{sualojavirtual}.commercesuite.com.br/web_api/carts/{session_id}/{product_id}/{variant_id}
Protocolo
Rest/HTTP
Veja abaixo uma chamada de exemplo para excluir produtos no carrinho de compra:
<script type="text/javascript">
var dataSession = $("html").attr("data-session");
var productID = 6;
var variantID = 122;
$.ajax({
method: "DELETE",
url: "/web_api/carts/"+dataSession+"/"+productID+"/"+variantID,
contentType: "application/json; charset=utf-8",
}).done(function( response, textStatus, jqXHR ) {
console.log(response);
}).fail(function( jqXHR, status, errorThrown ){
var response = $.parseJSON( jqXHR.responseText );
console.log(response);
});
</script>
Ao excluir uma variação do carrinho de compra, é retornada uma resposta em JSON.
Abaixo um detalhamento de cada nó do JSON de resposta:
message
Mensagem de Retorno
id
Código do Carrinho
session_id
Código da Sessão do Carrinho
cart_url
URL do Carrinho
code
HTTP Code de Resposta
Exemplo de resposta com sucesso baseando no envio do exemplo acima:
{
'message': 'Deleted',
'id': '615440',
'session_id': 'rkqeli8b00a697r4q9jnbi6il6',
'cart_url': 'https://sualojavirtual.commercesuite.com.br/loja/carrinho.php?loja=12&transID=rkqeli8b00a697r4q9jnbi6il6,
'code': '201'
}
Excluir Carrinho de Compra
Para excluir o carrinho de compra, basta realizar uma requisição utilizando o método DELETE.
Esta requisição exclui o carrinho com id passado por parâmetro. A exclusão só será feita caso o id tenha a sessão também passada.
URL de Acesso
https://{sualojavirtual}.commercesuite.com.br/web_api/carts/{session_id}
Protocolo
Rest/HTTP
Veja abaixo uma chamada de exemplo para excluir produtos no carrinho de compra:
<script type="text/javascript">
var dataSession = $("html").attr("data-session");
$.ajax({
method: "DELETE",
url: "/web_api/carts/"+dataSession
}).done(function( response, textStatus, jqXHR ) {
console.log(response);
}).fail(function( jqXHR, status, errorThrown ){
var response = $.parseJSON( jqXHR.responseText );
console.log(response);
});
</script>
Ao excluir o carrinho de compra, é retornada uma resposta em JSON.
Abaixo um detalhamento de cada nó do JSON de resposta:
message
Mensagem de Retorno
session_id
Código da Sessão do Carrinho
cart_url
URL do Carrinho
code
HTTP Code de Resposta
Exemplo de resposta com sucesso baseando no envio do exemplo acima:
{
'message': 'Deleted',
'session_id': 'rkqeli8b00a697r4q9jnbi6il6',
'cart_url': 'https://sualojavirtual.commercesuite.com.br/loja/carrinho.php?loja=12&transID=rkqeli8b00a697r4q9jnbi6il6,
'code': '200'
}
Para mais detalhes sobre as APIs de carrinho de compra acesse o link da documentação https://developers.tray.com.br/#apis-de-carrinho-de-compra
Last updated
Was this helpful?