Professional Documents
Culture Documents
Manuais de integrao
Contedo
1
1.1
1.2
1.3
1.4
Headers ............................................................................................................................ 2
1.5
1.5.1
1.5.2
1.5.3
1.5.4
2.1
2.2
2.3
2.4
3.1
3.2
Criao de comprador..................................................................................................... 9
3.3
3.4
3.5
Dados de pedido............................................................................................................ 11
4.1
DOCUMENTAO - OCB
Manuais de integrao
1
1.1
PROTOCOLO BSICO
APIs RESTfull
Descrevemos aqui as diretrizes bsicas para comunicao com as APIs RESTfull do Bcash.
Explicamos quais so as informaes necessrias nos headers das chamadas, quais os retornos
esperados e qual o padro para a troca de mensagens.
1.2
URL Base
Para simplificar a descrio das chamadas RESTful nas demais sees do manual de integrao
usaremos a seguinte conveno:
URL_BASE = http[s]://${SEU_DOMINIO}/${SUA_RAIZ}/lojas/${ID_LOJA}
Ex.:
GET ${URL_BASE}/estoque/produtos/23423-234-38
1.3
Mensagens JSON
1.4
Headers
Para cada chamada de servio deve-se informar os headers de tipo de contedo e autorizao.
"Content-Type": "application/json"
"Authorization": "Basic " + Base64Encode(login + ":" senha)
1.5
Status retornados
Esta seo lista os status de retorno HTTP que sero devolvidos quando o servio for invocado.
DOCUMENTAO - OCB
Manuais de integrao
1.6
Retornos de sucesso
HTTP Code: 201 - Retorno de um POST de sucesso onde um recurso foi criado.
1.7
HTTP Code: 400 - Requisio mal formada, dados invlidos. Erro de regra de negcio.
1.8
[
{
"codigo": "MSG_00001",
"descricao": "O comprador informado no existe."
},
{
"codigo": "MSG_00002",
"descricao": "Formato de telefone invlido."
}
]
DOCUMENTAO - OCB
Manuais de integrao
1.9
[
{
"codigo": "MSG_10001",
"descricao": "Time out ao salvar recurso."
}
]
DOCUMENTAO - OCB
Manuais de integrao
APIS DE CARRINHOS
2.1
Criao de carrinho
Cria um novo carrinho com a lista de produtos informados. A lista pode conter um, nenhum ou
vrios produtos com suas respectivas quantidades.
POST ${URL_BASE}/logistica/carrinhos
Tabelle 3 Request:
{
"itens": [
{
"produto": {
"sku": "23423-235-39"
},
"quantidade": 2
}
]
}
{
"id": "WQERWE23655",
"itens": [
{
"id": "1"
}
]
}
DOCUMENTAO - OCB
Manuais de integrao
2.2
{
"produto": {
"sku": "23423-235-38"
},
"quantidade": 3
}
{
"id": "2"
}
2.3
Dados de um carrinho
{
"id": "WQERWE23655",
"itens": [
{
"produto": {
"sku": "23423-235-39"
},
"quantidade": 2
}
]
}
DOCUMENTAO - OCB
Manuais de integrao
2.4
Clculo de frete
Calcula os fretes por tipo de servio para o envio de todos os produtos do carrinho ao cep
informado.
GET ${URL_BASE}/logistica/carrinhos/WQERWE23655/calcula-frete?cepDestino=76582-906
Tabelle 8 Response: HTTP Code 200
[
{
"preco": 23.30,
"servico": {
"codigo": "SEDEX"
},
"prazo": {
"minimo": 2,
"maximo": 4,
"unidade": "DIAS"
}
},
{
"preco": 12.00,
"servico": {
"codigo": "PAC"
},
"prazo": {
"minimo": 5,
"maximo": 12,
"unidade": "DIAS"
}
},
{
"preco": 5.20,
"servico": {
"codigo": "Jamef"
},
"prazo": {
"maximo": 10,
"unidade": "DIAS"
}
},
{
"preco": 15.00,
"servico": {
"codigo": "Motoboy",
"descricao": "Apenas grande So Paulo para pedidos aprovados
antes do meio dia"
DOCUMENTAO - OCB
Manuais de integrao
},
"prazo": {
"maximo": 10,
"unidade": "HORAS"
}
}
]
DOCUMENTAO - OCB
Manuais de integrao
APIS DE SERVIOS
3.1
Verificao de comprador
{
"identificador": "64221571691",
"tipoIdentificador": "CPF",
"nome": "Antnio da Silva",
"email": "comprador@bcash.com.br",
"telefone": "11-978979689",
"endereco": {
"cep": "03422-002",
"logradouro": "Av. Paulista",
"numero": "2211",
"complemento": "ap 45",
"bairro": "Jardim Paulista",
"cidade": "So Paulo",
"uf": "SP"
}
}
3.2
Criao de comprador
Registra os dados de um comprador para ser usado posteriormente em uma reserva de pedido. Se
o registro do comprador j existe, sobrescreve as informaes.
POST ${URL_BASE}/logistica/compradores
DOCUMENTAO - OCB
Manuais de integrao
Tabelle 10 Request:
{
"identificador": "64221571691",
"tipoIdentificador": "CPF",
"nome": "Antnio da Silva",
"email": "comprador@bcash.com.br",
"telefone": "11-978979689",
"endereco": {
"cep": "03422-002",
"logradouro": "Av. Paulista",
"numero": "2211",
"complemento": "ap 45",
"bairro": "Jardim Paulista",
"cidade": "So Paulo",
"uf": "SP"
}
}
{
"identificador": "22092430840"
}
3.3
Criao de pedido
Cria um novo pedido usando um comprador e um carrinho. Este pedido deve reservar os produtos
para o comprador at que o pagamento seja feito. Se o pagamento no for feito o pedido deve ser
cancelado e os produtos do carrinho liberados para o estoque novamente.
POST ${URL_BASE}/logistica/pedidos
Tabelle 12 Request:
{
"comprador": {
"identificador": "22092430840"
},
"carrinho": {
"id": "WQERWE23655"
}
DOCUMENTAO - OCB
10
Manuais de integrao
}
{
"id": "76234673SDFG",
"comprador": {
"identificador": "22092430840"
},
"carrinho": {
"id": "WQERWE23655"
},
"status": "CRIADO"
}
3.4
Cancelamento de pedido
Usado quando o pagamento no puder ser realizado para liberar os produtos para o estoque da
loja.
PUT ${URL_BASE}/logistica/pedidos/76234673SDFG/cancela
Tabelle 14 Response: HTTP Code 204
/*vazio*/
3.5
Dados de pedido
{
"id": "76234673SDFG",
"comprador": {
"identificador": "22092430840"
DOCUMENTAO - OCB
11
Manuais de integrao
},
"carrinho": {
"id": "WQERWE23655"
},
"status": "EM_TRANSPORTE"
}
DOCUMENTAO - OCB
12
Manuais de integrao
APIS DE LISTAGEM DE
PRODUTOS
4.1
Hierarquia de um produto
Dado um SKU de produto retorna a hierarquia de produtos relacionados. O SKU informado pode
ser qualquer um presente na hierarquia retornada. O exemplo abaixo mostra uma hierarquia
complexa de sub-produtos baseados em variaes de cor e tamanho.
GET ${URL_BASE}/estoque/produtos/23423-235-39/hierarquia
Tabelle 16 Response: HTTP Code 200
{
"sku": "23423",
"preco": 540.20,
"descricao": {
"simples": "Tnis Mizuno Wave Creation 15",
"texto": "Desenhado com um olhar crtico para ..."
},
"caracteristica": {
"nome": "cor",
"produtosRelacionados": [
{
"sku": "23423-234",
"descricao": {
"simples": "Branco",
"completa": "Tnis Mizuno Wave Creation 15 branco"
},
"urlsImagem": [
"http://.../mizuno-branco-frente.jpg",
"http://.../mizuno-branco-lado.jpg"
],
"disponivel": true,
"caracteristica": {
"nome": "tamanho",
"produtosRelacionados": [
{
"sku": "23423-234-38",
DOCUMENTAO - OCB
13
Manuais de integrao
"descricao": {
"simples": "38"
},
"disponivel": true
},
{
"sku": "23423-234-39",
"descricao": {
"simples": "39"
},
"disponivel": false
},
{
"sku": "23423-234-40",
"descricao": {
"simples": "40"
},
"disponivel": true
}
]
}
},
{
"sku": "23423-235",
"descricao": {
"simples": "Preto",
"completa": "Tnis Mizuno Wave Creation 15 preto"
},
"urlsImagem": [
"http://.../mizuno-preto-frente.jpg",
"http://.../mizuno-preto-lado.jpg"
],
"disponivel": true,
"caracteristica": {
"nome": "tamanho",
"produtosRelacionados": [
{
"sku": "23423-235-38",
"descricao": {
"simples": "38"
},
"disponivel": true
},
{
"sku": "23423-235-39",
"descricao": {
"simples": "39"
},
DOCUMENTAO - OCB
14
Manuais de integrao
"disponivel": true
},
{
"sku": "23423-235-40",
"descricao": {
"simples": "40"
},
"disponivel": false
}
]
}
}
]
}
}
DOCUMENTAO - OCB
15