• 1
felipe.ksw

Envio do XML da NFe usando PHP

Question

Boa noite pessoal,

Estou com uma dificuldade para enviar o XML da NFe via API. Estou usando o código abaixo e recebo a mensagem que o "XML está mal formado" se codifico com o JSON ou que "está faltando o corpo do POST" se não codifico com o JSON.

O XML está OK, pois o mesmo XML que dá problemas na API, depois envio ele pela interface e ele vai normal (faço a consulta de validação via API)

Provavelmente alguma coisa do CURL que não estou sabendo montar... Alguma Sugestão?

Obrigado

Felipe

 

	$xmlfile = file_get_contents ( '35190112612913000148550010000436961611034429_v4.00-procnfe.xml' );
	
	//echo $xmlfile.PHP_EOL;
	
	$cabecalho = array (
		'Content-Type: application/xml'
	);

	$arrCampos = array (
		'data' => $xmlfile
	);

	//$arrCampos	= json_encode ( $arrCampos );

	$ch = curl_init();
	curl_setopt($ch, CURLOPT_URL,            'https://api.mercadolibre.com/shipments/'.$shippingId.'/invoice_data/?access_token='.$accessToken.'&siteId=MLB');	
	curl_setopt($ch, CURLOPT_HTTPHEADER,     $cabecalho);
	curl_setopt($ch, CURLOPT_POSTFIELDS,     $arrCampos);
	curl_setopt($ch, CURLOPT_POST,           true);
	curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
	curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
	$resposta = curl_exec($ch);
	curl_close($ch);
	
	//echo curl_error ( $ch ).PHP_EOL;
	
	$arrRet = json_decode($resposta, true);
	
	print_r ( $arrRet );
Array
(
    [status] => 400
    [message] => Malformed XML
    [error] => malformed_XML
    [cause] => 
    [internal_cause] => Array
        (
        )

)


Array
(
    [status] => 400
    [message] => Required request body is missing
    [error] => empty_body
    [cause] => 
    [internal_cause] => Array
        (
        )

)

 

Edited by felipe.ksw

Share this post


Link to post
Share on other sites

0 answers to this question

Recommended Posts

There have been no answers to this question yet

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