Ferramentas
Ferramentas disponíveis no AnyMarket que facilitam o processo de integração
Ferramentas disponíveis no AnyMarket que facilitam o processo de integração
Para permitir que o integrador teste suas funcionalidades e assegure de que irá operar sem erros no ambiente de produção, o AnyMarket disponibiliza o ambiente de sandbox. Os testes realizados nesse ambiente certificam a aplicação de que todas as regras de API estão sendo aplicadas.
O ambiente de sandbox do AnyMarket possui as mesmas operações do ambiente de produção, no entanto, as informações são distintas do ambiente de produção. Os ambientes de sandbox e produção são isolados e não possuem acesso um ao outro.
Os tokens de acesso obtidos através do contato com o AnyMarket dão acesso aos dois ambientes, porém cada ambiente requisita seu próprio token. Não é possível acessar o ambiente de produção com o token da sandbox e vice-versa.
Uma vez obtido o Token de Sandbox, a Aplicação opera de forma idêntica ao ambiente de produção. A principal diferença é que a Aplicação deve apontar para o ambiente de Sandbox ao invés de Produção.
URL de sandbox:
http://sandbox-api.anymarket.com.br/v2
URL de produção:
http://api.anymarket.com.br/v2
A API do AnyMarket V1 será desativada no futuro. Por favor, verifique a versão 2. Caso esteja utilizando, verifique a possibilidade de migração e caso tenha dúvidas, entre em contato com o nosso suporte.
Durante a utilização do explorador de API é importante notar que pode haver diferença no JSON de resposta do JSON de envio. O JSON de resposta deve ser observado através da opção Classe de Resposta, enquanto o JSON de envio deve ser observado através do parâmetro body na opção Parâmetros.
Todo Atributo que receba uma Data deve ser informada passando o Fuso Horario.
Se o parceiro controla o Fuso Horário deverá controlar também o horário de verão, fazendo as alterações necessárias.
Exemplo:
08/03/2018 10:00:00 Fuso Horário GMT-3
Deve ser informado da seguinte forma 2018-03-08T10:00:00-03:00
Para a execução dos testes da parte de pedidos, realize o download do documento de apoio abaixo.
Documento de Apoio a criação de Pedidos.Caso deseje realizar testes em nossa API insira um token válido para o Ambiente Sandbox no campo abaixo e clique em Tente agora! do metodo desejado.
O AnyMarket possuí a funcionalidade de notificação de eventos: Quando um evento ocorre, por exemplo o status do pedido for modificado, nós iremos notificar sua aplicação.
Para receber as notificações do AnyMarket, é necessário que sua aplicação aceite requisições POST no
formato JSON. As notificações serão enviadas no seguinte formato:
{
"type" : "PRODUCT",
"content" : {
"id":"10",
"oi":"99999."
}
}
A URL informada é o endereço do serviço REST da aplicação desenvolvida pelo parceiro. Todas as chamadas deverão ter suporte ao método POST e deverão retornar o status 200 ou 201 em caso de sucesso.
Para cadastro da URL de notificação, acesse o aplicativo AnyMarket e navegue até a tela de parâmetros. Informe a URL no campo Callback URL.
Se a URL de retorno estiver cadastrada corretamente, informaremos a sua aplicação quando ocorrer os seguintes eventos no AnyMarket:
Quando houver uma alteração/inclusão de produto
{
"type" : "PRODUCT",
"content" : {
"id":"10",
"oi":"99999."
}
}
Quando houver uma alteração/inclusão de pedido
{
"type" : "ORDER",
"content" : {
"id":"10",
"oi":"99999."
}
}
Quando houver uma alteração/inclusão de SKU. As transmissões só são notificadas caso o SKU possua
publicação ativa. A mesma regra se aplica ao FEED.
{
"type" : "TRANSMISSION",
"content" : {
"id":"10",
"oi":"99999."
}
}
O AnyMarket tentará notificar o parceiro 3 vezes em intervalos regulares. Se após as 3 tentativas não houver sucesso, o AnyMarket envia o pedido, produto ou anúncio para o seu respectivo feed.
Após a disponibilização no feed, o AnyMarket manterá o item disponível por 30 dias.
Durante a utilização dessa ferramenta é necessario informar o Host e o Código do Pedido. Essa funcionalidade esta disponivel apenas para o ambiente Sandbox.
Você pode encontrar nosso modulo para o Magento nas seguintes URL´s:
Você pode encontrar as classes para a integração na seguinte URL:
O ANYMARKET permite ao seller fornecer sua própria implementação de consulta de frete. Quando habilitada essa implementação, o ANYMARKET passará a realizar chamadas para a URL fornecida, e caso o a API do seller responder um tempo hábil (até 500ms) o ANYMARKET irá enviar esses dados para o marketplace. Caso contrário, a tabela de frete configurada/criada no ANYMARKET será utilizada como contingência.
Para habilitar a consulta de frete em API, o seller deve acessar a tela de parâmetros do ANYMARKET, selecionar a opção de cálculo de frete por API e informar a URL da API conforme ilustrado na imagem a seguir.
A imagem abaixo apresenta como é realizado o fluxo da consulta de frete, desde a chama do marketplace até o retorno do resultado para o mesmo.
Quando a integração está habilitada o ANYMARKET irá realizar uma chamada POST para o endpoint
informado nos parâmetros do sistema, enviando como corpo da requisição um JSON no seguinte formato:
{
"zipCode" : "87100000",
"marketplace": "Mercado Livre",
"products" : [
{
"sku" : "A1512",
"height" : 10,
"width" : 20,
"weight" : 20,
"length" : 20,
"amount" : 1,
"value" : 149.90,
"metadata": {
"idInMarketplace": "MLB1039413612",
"official_store_id": "224"
}
},
{
"sku" : "B1510",
"height" : 20,
"width" : 35,
"weight" : 35,
"length" : 10,
"amount" : 2,
"value" : 299.90,
"metadata": {
"idInMarketplace": "MLB1039413643",
"official_store_id": "224"
}
}
]
}
Os tipos de frete aceitos pelo ANYMARKET são NORMAL e EXPRESSA. Como retorno, o ANYMARKET espera um JSON no seguinte formato:
{
"items" : [
{
"serviceName" : "Transporte Terrestre",
"carrierName" : "Seller Transporte",
"deliveryTime" : 12,
"price" : 23.99,
"freightType" : "NORMAL"
},
{
"serviceName" : "SEDEX",
"carrierName" : "Seller Transporte",
"deliveryTime" : 6,
"price" : 35.90,
"freightType" : "EXPRESSA"
}
]
}
Atenção! Caso seja retornado um array vazio no json de retorno, o ANYMARKET verificará se existe algum valor de frete configurado dentro do próprio sistema, caso haja, retornaremos para o marketplace o valor configurado no sistema, caso contrário, será retornado que para aquela determinada cotação feita, não existe frete atendido para realizar a entrega.
O ANYMARKET permite ao seller fornecer sua própria implementação de consulta de preço. Quando habilitada essa implementação, o ANYMARKET passará a realizar chamadas para a URL fornecida.
Ao criar um novo anúncio, ele utilizará os preços retornados desta chamada para os campos de "Preço Por" e "Preço De".
A imagem abaixo apresenta como é realizado o fluxo da consulta de preço, desde o início da criação do anúncio até sua conclusão.
Para habilitar a consulta de preço em API, o seller deve acessar a tela de parâmetros do ANYMARKET, selecionar a opção de Utilizar cálculo de preço por API e informar a URL da API conforme ilustrado na imagem a seguir.
Quando a integração está habilitada, o ANYMARKET irá realizar uma chamada POST para o endpoint informado nos parâmetros do sistema, enviando como parâmetro (Query String) o seguinte:
Parâmetro | Descrição |
---|---|
token | TOKEN de autenticação da conta que está fazendo a chamada. Serve para identificar qual a conta do ANYMARKET está chamando o serviço. |
oi | Código interno de identificação da loja no ANYMARKET. |
sku | O id do SKU para o qual o anúncio está sendo criado. |
marketplace | Qual o MARKETPLACE que está sendo criado o anúncio. |
E como body, encaminharemos informações que temos sobre o anúncio que está sendo criado:
Algumas dessas informações são:
{
"fields": [{
"key": "string",
"value": "string"
}]
}
Tendo como resposta esperada:
{
"price": 123.45,
"discount": 123.45
}
Preenchimento de ambos os valores: os 2 campos são de retorno obrigatório.
Preços inválidos: Preço DE (price) deve ser maior que o Preço POR (discount).