• 0
FerreiraC

Etiquetas Zebra

Question

8 answers to this question

Recommended Posts

  • 0

Hi in the same way that you use the PDF label http://developers.mercadolibre.com/listing-with-me2/you can use the shipping labels for zebra

http://developers.mercadolibre.com/zebra-printer/

 

/shipment_labels?shipment_ids={shipping_id}&response_type=zpl2&access_token={access_token}

 

any error status 500 is a MercadoLivre error, yersterday was Fix, please try now and let us know if you can do it now

 

Regards

Leandro

Share this post


Link to post
Share on other sites
  • 0

já consegui, mas como as etiquetas do ML não permitem alteração de informação pouco me adianta. Pois se usuário compra mais de um produto, ou pede alteração do modelo ou quantidade, eu não tenho como fazer a mudança;

Share this post


Link to post
Share on other sites
  • 0

 

Facilitaria muito se estes dois campos estivessem na API, pois não seria necessário ter que fazer a leitura do PDF para obter estas informações.

Hoje no meu processo tenho que gerar o PDF completo e obter o numero da PLP, e depois ler etiqueta por etiqueta para obter a NF.

 

Para quem faz a própria etiqueta isto faz falta.

Share this post


Link to post
Share on other sites
  • 0

FerreiraC, 

 

ignore o número da NF. o pessoal do Correio não liga para isso.

Há etiqueta que sai com a NF e etiqueta que não sai, então deixa para lá

 

Até mais

Rodrigo

Share this post


Link to post
Share on other sites
  • 0

FerreiraC, 

 

ignore o número da NF. o pessoal do Correio não liga para isso.

Há etiqueta que sai com a NF e etiqueta que não sai, então deixa para lá

 

Até mais

Rodrigo

 

Já aconteceu de um produto que era eSedex, excedeu o peso e a agência dos correios trocaram para Sedex, 

e a agencia informa a NF da etiqueta com o novo número de rastreio.

 

de qualquer forma esta informação tinha que ter.

Share this post


Link to post
Share on other sites
  • 0

Consegui essas informações (NF, PLP, logotipo do Sigep Correios, QR code) com PHP, da seguinte forma:

 

<?php
function dados_etiqueta_mercado_livre() {
    $url = 'https://api.mercadolibre.com/shipment_labels?shipment_ids='.$id.'&response_type=zpl2&access_token='.$_GET['token_mercadolivre']; // URL do arquivo .zip que contém um .txt com os dados necessários

    $arquivo_temporario = 'temp_arquivo-'. ( time().rand(0, 99999) ) .'.zip'; // Nome do arquivo .zip que será copiado temporariamente para o servidor
    if(@!copy($url, $arquivo_temporario)) return array('status'=>'ERRO', 'conteudo'=>'Erro ao criar cópia temporária do arquivo Zip no servidor');

    $zip = zip_open($arquivo_temporario); // Abre o arquivo .zip copiado
    if(!$zip) return array('status'=>'ERRO', 'conteudo'=>'Erro ao abrir arquivo Zip temporário no servidor');

    while($arquivo_zip_aberto = zip_read($zip)) { // Percorre cada arquivo dentro do Zip
      if( zip_entry_name($arquivo_zip_aberto)=='Etiqueta de envio.txt' ) { // Continua se for o arquivo "Etiqueta de envio.txt", que contém os dados necessários
        $conteudo = zip_entry_read($arquivo_zip_aberto, zip_entry_filesize($arquivo_zip_aberto)+100); // Lê os dados do arquivo "Etiqueta de envio.txt"
        $conteudo = explode("\n", $conteudo); // Cada linha de conteúdo do arquivo "Etiqueta de envio.txt" é armazenado em uma posição de uma array

        // QR CODE (string que será usada para gerar o QR Code)
        $dados['qrcode'] = str_replace(array('^FD', '^FS'), '', $conteudo[18]); // Captura na linha 18 o QR Code, e remove os caractéres desnecessários

        // LOGOTIPO DO SIGEP CORREIOS (em formato de ZPL. Usar outro webservice para converter em imagem)
        $dados['correios_logotipo_zpl'] = '^XA'. str_replace('^FO60,100', '^FO0,0', $conteudo[3]) .'^PQ1,0,1,Y^XZ';

        // CÓDIGO PLP DOS CORREIOS (Pré Lista de Postagem)
        $dados['correios_plp'] = substr($conteudo[19], 0, -3);
        $dados['correios_plp'] = explode('PLP: ', $dados['correios_plp']);
        $dados['correios_plp'] = $dados['correios_plp'][1];

        // CÓDIGO NOTA FISCAL GERADO PELO MERCADO LIVRE
        $dados['nota_fiscal'] = substr($conteudo[20], 0, -3);
        $dados['nota_fiscal'] = explode('NF: ', $dados['nota_fiscal']);
        $dados['nota_fiscal'] = $dados['nota_fiscal'][1];
      }
    }

    zip_close($zip);

    if(isset($dados)) return array('status'=>'OK', 'conteudo'=>$dados);
}
?>

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now