Ambiente de sandbox

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

API V1: Explorador

Aviso de desativação futura

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.

API V2: Explorador

Utilização do explorador

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.


Observações importantes:

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:
18/04/2016 10:00:00 Fuso Horário GMT-3
Deve ser informado da seguinte forma 2016-04-18T10:00:00-03:00

Outra opção é trabalhar sempre com GMT-0. Exemplo:
18/04/2016 10:00:00 Fuso Horário GMT-3
Deve ser informado da seguinte forma 2016-04-18T13:00:00Z


Validações para as Datas do Pedido:

  • A "DATA DE CRIAÇÃO" do pedido não pode ser vazia.
  • A "DATA DE EMISSÃO DE NOTA FISCAL" deve ser maior ou igual a "DATA DE CRIAÇÃO" do pedido.
  • A "DATA DE EMISSÃO DE NOTA FISCAL" deve ser maior ou igual a "DATA DE PAGAMENTO" do pedido.
  • A "DATA DE PAGAMENTO" deve ser maior que a "DATA DE CRIAÇÃO" do pedido.
  • A "DATA DE ENVIO" deve ser maior ou igual a "DATA DE EMISSÃO DE NOTA FISCAL" do pedido.
  • A "DATA DE ENVIO" deve ser maior ou igual a "DATA DE CRIAÇÃO" do pedido.
  • A "DATA DE ENTREGA" deve ser maior ou igual a "DATA DE ENVIO" do pedido.
  • A "DATA DE PREVISÃO DE ENTREGA" deve ser maior ou igual a "DATA DE ENVIO" do pedido.

Legenda:

  • {createdAt}
  • {date}Objeto[invoice]
  • {paymentDate}
  • {date}Objeto[tracking]
  • {deliveredDate}Objeto[tracking]
  • {estimateDate}Objeto[tracking]


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.

Notificações

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."
  }
}

URL de retorno

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.

Tipos de notificação

Se a URL de retorno estiver cadastrada corretamente, informaremos a sua aplicação quando ocorrer os seguintes eventos no AnyMarket:

Produto

Quando houver uma alteração/inclusão de produto

{
  "type" : "PRODUCT",
  "content" : {
    "id":"10",
    "oi":"99999."
  }
}

Pedido

Quando houver uma alteração/inclusão de pedido

{
  "type" : "ORDER",
  "content" : {
    "id":"10",
    "oi":"99999."
  }
}

Transmissão

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."
  }
}

Indisponibilidade e exceções

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.

Feeds

Utilização do Feed de Pedidos

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.

Módulo Magento

Utilização do Módulo para Magento

Você pode encontrar nosso modulo para o Magento nas seguintes URL´s:

Via github (instalação manual)

https://github.com/anymarket/magento

Via Magento Connect

https://www.magentocommerce.com/magento-connect/anymarket.html

Integração Protheus

Utilização da Integração com o Protheus

Você pode encontrar as classes para a integração na seguinte URL:

Github:

https://github.com/AnyMarket/Protheus

Integração com API de Frete

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.

Utilização da Integração com a API de Frete

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",
  "products" : [
    {
      "sku" : "A1512",
      "height" : 10,
      "width" : 20,
      "weight" : 20,
      "amount" : 1,
      "value" : 149.90
    },
    {
      "sku" : "B1510",
      "height" : 20,
      "width" : 35,
      "weight" : 35,
      "amount" : 2,
      "value" : 299.90
    }
  ]
}

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"
    }
  ]
}
Deve ser retornado apenas um registro para cada combinação Transportadora x Tipo de Frete. Ou seja, não deve ser retornado dois registros para a mesma transportadora e tipo de frete NORMAL, por exemplo.

Exemplos