EnviarDadosVenda(aNumeroSessao, aDadosVenda)
Este método é utilizado para realizar o envio do XML do CF-e para o SAT.
Método
EnviarDadosVenda(const aNumeroSessao: integer; const aDadosVenda : AnsiString): string;
Parâmetros
Argumento | Tipo | Detalhes |
aNumeroSessao | Integer | Número da sessão para a requisição |
aDadosVenda | String | Conteúdo do XML de envio de um CF-e-Sat |
Retorno
O retorno terá o seguinte formato:
numeroSessao|EEEEE|CCCC|mensagem|cod|mensagemSEFAZ|arquivoCFeBase64|timeS tamp|chaveConsulta|valorTotalCFe|CPFCNPJValue|assinaturaQRCODE
Campo | Descrição | Exemplo |
numeroSessao | Número aleatório gerado pelo AC para controle da comunicação. | “000000”, “002101” |
EEEEE | O código EEEEE é substituído por um dentre os possíveis códigos de retorno. | “16000”, “16098” |
CCCC | Em caso de alerta (EEEEE = 06000) ou rejeição nos dados de venda (EEEEE = 06010) o código CCCC será substituído por um dentre os possíveis códigos de retorno. Nos demais casos este campo retornará o código “0000”. | “0000”, “1025”, “1232” |
mensagem | São as descrições dos códigos EEEEE. Em caso de alerta (EEEEE = 06000) ou rejeição nos dados de venda (EEEEE = 06010) este campo retornará a descrição da mensagem. | “Emitido com sucesso + conteúdo notas.” |
cod | O “cod” é o código de referência de cada mensagemSEFAZ. | “002”, “999” |
mensagemSEFAZ | Mensagem de texto enviada pela SEFAZ referente ao “Envio de avisos ao usuário” | “Existem atualizações para o SAT, porém o prazo para instalação é menor que 30 dias” |
arquivoCFeBase64 | Arquivo em XML assinado pelo SAT em formato idêntico ao que o SAT enviará para a SEFAZ. Arquivo codificado em base64. | Segue exemplo em anexo (ExemploCFeBase64.txt). |
timeStamp | Data e hora da emissão no formato: AAAAMMDDHHMMSS | “20110101170101” |
chaveConsulta | Chave de acesso do CF-e-SAT precedida do literal ‘CFe’. | CFe351112027675790001485 98583801050151865833992 |
valorTotalCFe | Valor total do CF-e calculado pelo SAT. Campo presente no leiaute do arquivo de venda. | Valor a ser informado referente ao valor R$ 65,53 será 65.53 |
CPFCNPJValue | Número do CPF ou CNPJ do adquirente no seguinte sem pontos, traços e barras. | CPF: 12345678912 CNPJ:12345678912345 |
assinaturaQRCODE | Conteúdo do Campo “assinaturaQRCODE” presente no leiaute do arquivo de venda. | Segue exemplo em anexo ExemploAssinaturaQRCODE.txt |
Atenção! Em caso de erro na função, deverão ser retornados apenas os seis primeiros campos da tabela acima (tabela de descrição dos campos do retorno). O retorno ficará da seguinte forma:
numeroSessao|EEEEE|CCCC|mensagem|cod|mensagemSEFAZ
Observações
Ao emitir um cupom com sucesso, é gerado um arquivo de cópia de segurança no diretório Copia de Segurança configurado (DiretorioCopiaSeguranca). Esse arquivo é nomeado com o prefixo AD, seguido da chave de acesso.
Exemplo:
AD41150461099008000141599000012710000398690296.xml
Segue anexo um XML de exemplo de envio para o equipamento SAT e um arquivo de cópia de segurança AD. Versão esquema 00.06.
O arquivo exemplo anexado está com dados de exemplo do SAT usado na homologação do componente. Para fins de teste com qualquer equipamento SAT, procure na documentação os dados da Softwarehouse e emitente cadastrados para o uso do SAT em questão e modifique no XML.
Exemplos
Delphi
mmRetorno := spdCFeSat.EnviarDadosVenda(getNumeroSessao,mmReturn.Text);
C#
tbRetorno.Text = spdCFeSat.EnviarDadosVenda(getNumeroSessao(), tbRetorno.Text);
Visual Basic 6
mmRetorno.Text = spdCFeSat.EnviarDadosVenda(NumeroSessao, mmRetorno.Text)
Comentários
0 comentário
Por favor, entre para comentar.