Boa tarde” Estou tentando transmitir para a Url de produção restrita (modo assíncrono) um evento mas estou recebendo a mensagem: “O servidor remoto retornou um erro: (422) Unprocessable Entity.”. Poderia ajudar? Veja a estrutura do XML de postagem:
<Reinf xmlns=”http://www.reinf.esocial.gov.br/schemas/envioLoteEventosAssincrono/v1_00_00″>
<loteEventos>
<evento id=”ID1764840130000002022081509070700001″>
<Reinf xmlns=”http://www.reinf.esocial.gov.br/schemas/envioLoteEventosAssincrono/v1_05_01″>
<evtServTom id=”ID1764840130000002022081509070700001″>
…
</evtServTom>
<Signature>
…
</Signature>
</Reinf>
</evento>
</loteEventos>
</Reinf>
Paulo, o layout do envio no modo assíncrono é diferente. Você pode baixar o XSD no link http://sped.rfb.gov.br/arquivo/show/5977
Segue um exemplo:
<?xml version=”1.0″ encoding=”UTF-8″?>
<Reinf xmlns=”http://www.reinf.esocial.gov.br/schemas/envioLoteEventosAssincrono/v1_00_00″>
<envioLoteEventos>
<ideContribuinte>
<tpInsc>1</tpInsc>
<nrInsc>00000000</nrInsc>
</ideContribuinte>
<eventos>
<evento Id=”ID0000000000000000000000000000000000″>
<Reinf xmlns=”http://www.reinf.esocial.gov.br/schemas/evt4099FechamentoDirf/v2_01_01″>
<evtFech id=”ID0000000000000000000000000000000000″>
…
</evtFech>
<Signature xmlns=”http://www.w3.org/2000/09/xmldsig#”>
….
</Signature>
</Reinf>
</evento>
</eventos>
</envioLoteEventos>
</Reinf>
Bom dia Paulo, estou fazendo um dev para empresa e estou com muita dificultado de enviar o r1000 no modelo assincrono na v2. Seria possivel você postar um exemplo aqui se um item postado a receita? Muito obrigado
Olá Luciana! Realmente precisei fazer correções no layout. Obrigado pela dica.
Para ajudar quem possa estar com a mesma dificuldade relato que o Erro 422 (U}nprocessable Entity), na linguagem C#, pode ser ultrapassado utilizando a instrução Catch (WebException ex) ao invés de utilizar a instrução Catch(Exception ex) após a tentativa de download da resposta XML dos servidores da RFB.
Olhe a solução 2 transcrita abaixo de https://9to5answer.com/webexception-how-to-get-whole-response-with-a-body
try {
WebClient client = new WebClient();
client.Encoding = Encoding.UTF8;
string content = client.DownloadString(“https://sandiegodata.atlassian.net/wiki/pages/doaddcomment.action?pageId=524365”);
Console.WriteLine(content);
Console.ReadKey();
} catch (WebException ex) {
var resp = new StreamReader(ex.Response.GetResponseStream()).ReadToEnd();
Console.WriteLine(resp);
Console.ReadKey();
}
Boa sorte!
Paulo,
Tenho a comunicação do REINF síncrona, trabalho com C#, não estou conseguindo fazer a assíncrona, estou com o prazo. Você poderia gentilmente ceder seu código, ou me ajudar nesse? Muito agradecida desde já.
var handler = new WebRequestHandler();
handler.ClientCertificates.Add(cert);
HttpClient client;
client = new HttpClient(handler);
client.BaseAddress = new Uri(“https://pre-reinf.receita.economia.gov.br/recepcao/lotes”);
client.DefaultRequestHeaders.Accept.Clear();
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue(“application/xml”));
var httpContent = new StringContent(elemDoc.ToString(), Encoding.UTF8, “application/xml”);
HttpResponseMessage response = await client.PostAsync(client.BaseAddress.ToString(), httpContent);
Olá Renata, infelizmente a empresa para a qual eu trabalho não permite publicação do código. Sinto muito.
ReceberLoteEventos
loteEventos
Reinf
loteEventos
evento
Reinf
evtServTom
“”
” ”
” ”
” ”
” ”
” ”
” “
Tenta seguir esta ordem. A ordem está certa, mas o meu conteúdo está errado.