cobranÇa site - helpfacil.com.br · cobranÇa site instruções de instalação e utilização...

14
COBRANÇA SITE Instruções de Instalação e Utilização Manual Técnico do Desenvolvedor Segunda via do Bloqueto Digital

Upload: donga

Post on 18-Jan-2019

248 views

Category:

Documents


0 download

TRANSCRIPT

COBRANÇA SITE Instruções de Instalação e Utilização

Manual Técnico do Desenvolvedor

Segunda via do Bloqueto Digital

Janeiro 2012 Cobrança Site – Manual Técnico do Desenvolvedor 2

Índice

1. INFORMAÇÕES TÉCNICAS - Windows ......................................................................... 3 1.1 – URL DA 2A VIA DO BLOQUETO DIGITAL ................................................. 3 1.2 – CRIPTOGRAFIA ........................................................................................... 3

1.3 – CHAMADA À TELA DA 2A VIA DO BLOQUETO DIGITAL ........................ 3 2. LAYOUT DOS CAMPOS ................................................................................................ 5

2.1 – Layout XML ................................................................................................... 5 3. EXEMPLOS DE CÓDIGO ............................................................................................... 6

3.1 – CRIPTOGRAFIA DOS DADOS – CÓDIGO ASP ........................................ 6 3.2 – CRIPTOGRAFIA DOS DADOS – CÓDIGO ASP/XML XSL........................ 7 3.2.1 – Página ASP/XML ....................................................................................... 7

3.2.2 – Página XSL ................................................................................................ 8 4. INFORMAÇÕES TÉCNICAS – Unix ou Linux............................................................... 11

4.1 – URL DA 2A VIA DO BLOQUETO DIGITAL ............................................... 11 4.2 – CRIPTOGRAFIA ......................................................................................... 11

4.3 – CHAMADA À TELA DA 2A VIA DO BLOQUETO DIGITAL ...................... 11 5. LAYOUT DOS CAMPOS .............................................................................................. 13

5.1 – CRIPTOGRAFIA DOS DADOS – CÓDIGO ............................................... 13

Qualquer dúvida sobre o conteúdo deste manual consulte:

Itaú Empresas no Telefone: 0300 100 7575

Janeiro 2012 Cobrança Site – Manual Técnico do Desenvolvedor 3

1. INFORMAÇÕES TÉCNICAS - Windows

Para a instalação da segunda via do Bloqueto Digital, deve-se executar os passos descritos a

seguir.

1.1 – URL DA 2A VIA DO BLOQUETO DIGITAL Os dados criptografados deverão ser enviados para a URL abaixo:

https://ww2.itau.com.br/2viabloq/pesquisa.asp

Caso queira utilizar a tecnologia XML, enviar para a URL abaixo:

https://ww2.itau.com.br/2viabloq/2ViaXMLWebSvc.asmx/PesquisaXML

1.2 – CRIPTOGRAFIA Deverá ser feito o download do ―Componente Itaú‖ de criptografia – Itaucripto.dll - disponível no link

http://www.itaushopline.com.br/cadastrado/download/itaucripto.dll. Após este procedimento, deve-se

registrar o componente no equipamento que for executar a aplicação e chamar o método geraCripto. Os

procedimentos para registrá-lo, são:

1° - Menu "Iniciar" ("Start") do WindowsNT

2° - Menu "Executar" ("Run")

3° - Digitar na caixa "Abrir" ("Open") o comando: regsvr32 c:\....\Itaucripto.dll

1.3 – CHAMADA À TELA DA 2A VIA DO BLOQUETO DIGITAL A página ASP que irá criptografar os dados para enviá-los a 2a via do Bloqueto Digital, deverá seguir as

seguintes regras:

( 1 ) Para chamar a tela da 2a via de Bloqueto Digial, a criptografia dos dados deve seguir a ordem

abaixo:

dadosCripto = obj.geraCripto(codEmp,codSacado,Chave)

( 2 ) Todos os campos são criptografados e enviados pelo lojista, exceto o campo ―Chave‖.

( 3 ) Todos os campos são obrigatórios

( 4 ) A página que contiver a URL do Itaú deverá ser desenvolvida em linguagem ASP, e apresentar:

Formulário (FORM) com as propriedades:

- method=‖post‖

- action=‖https://ww2.itau.com.br/2viabloq/pesquisa.asp―

Campo (INPUT) para os dados criptografados, com as propriedades:

- name="DC"

- type=‖hidden‖

- value=‖Dados Criptografados‖

Campo (INPUT) para informar se deverá (value=―S‖) ou não (value=―N‖) ser apresentada no bloqueto

a mensagem ―Emissão de segunda via do bloqueto por solicitação do sacado‖ , com as propriedades:

Janeiro 2012 Cobrança Site – Manual Técnico do Desenvolvedor 4

- name=‖msg"

- type=‖hidden‖

- value=‖S‖ OU value=‖N‖

EXEMPLO:

<FORM action="https://ww2.itau.com.br/2viabloq/pesquisa.asp" method="post" name="form"

onsubmit=carregabrw() target="BLOQUETO">

<INPUT type="hidden" name="DC" value="<%= dadosCripto %>">

<INPUT type="hidden" name=‖msg" value="S">

<INPUT type="submit" name="Bloqueto" value="Segunda Via Bloqueto">

</form>

( 5 ) Para o correto funcionamento da 2a via do Bloqueto Digital nos browsers: AOL, Netscape e Internet

Explorer – versões 4.x ou superior – a instância do browser a ser aberto deve possuir o JavaScript

abaixo, com as seguintes características:

• TOOLBAR = YES

• MENUBAR=YES

• RESIZABLE = YES

• STATUS = NO

• SCROLLBARS = YES

• WIDTH = 600 (sugestão)

• HEIGHT = 430 (sugestão)

<script language="JavaScript">

<!--

function carregabrw() {

window.open(‗‘,'BLOQUETO',

‗toolbar=yes,menubar=yes,resizable=yes,status=no,scrollbars=yes,left=0, top=0,width=600,height=430‘);

}

//-->

</script>

Janeiro 2012 Cobrança Site – Manual Técnico do Desenvolvedor 5

2. LAYOUT DOS CAMPOS

Os dados que serão utilizados na Segunda Via do Bloqueto Digital são:

Campos Descrição Critério

Dados obrigatórios

CodEmp Código da empresa Alfanumérico com 26 posições

codSacado Código do Sacado Numérico com: - CNPJ - 14 posições (99999999999999) - CPF - 11 posições (99999999999)

Chave Chave de criptografia (senha) Alfanumérico com 16 posições em maiúscula.

2.1 – Layout XML <SegundaVia>

<cedente>string</cedente> <sacado>string</sacado> <erro>string</erro>

<ListadeBloquetos> <Bloqueto>

<AGENCIA>string</AGENCIA> <CONTA>string</CONTA> <DAC>string</DAC> <NUMERODOCUMENTO>string</NUMERODOCUMENTO> <VENCIMENTO>string</VENCIMENTO> <VALOR>string</VALOR> <NOSSONUMERO>string</NOSSONUMERO> <LINK>string</LINK>

</Bloqueto> <Bloqueto>

<AGENCIA>string</AGENCIA> <CONTA>string</CONTA> <DAC>string</DAC> <NUMERODOCUMENTO>string</NUMERODOCUMENTO> <VENCIMENTO>string</VENCIMENTO> <VALOR>string</VALOR> <NOSSONUMERO>string</NOSSONUMERO> <LINK>string</LINK>

</Bloqueto> </ListadeBloquetos>

</SegundaVia>

Importante: Em <LINK></LINK> só conterá o parâmetro para emissão do bloqueto. Esse

valor deverá ser enviado via post para https://ww2.itau.com.br/2viabloq/frames.asp, como no exemplo abaixo. Ver código exemplo XSL no final deste manual. <form id="f1" name="f1" action="https://ww2.itau.com.br/2viabloq/frames.asp" method="post"> <input id="strTranc" type="hidden" name="strTranc" value="VALOR RECEBIDO NO CAMPO LINK">

</form>

Janeiro 2012 Cobrança Site – Manual Técnico do Desenvolvedor 6

3. EXEMPLOS DE CÓDIGO

3.1 – CRIPTOGRAFIA DOS DADOS – CÓDIGO ASP

<HTML>

<BODY>

<CENTER>Exemplo de código ASP</CENTER>

<%

Dim dadosCripto, obj

codEmp = "J0123456789012345678901234" 'Coloque aqui o código da empresa

Chave = "ABCD123456ABCD12" 'Coloque aqui a chave de criptografia

codSacado = request("codSacado")

Set obj = server.createobject("Itaucripto.cripto")

dadosCripto = obj.geraCripto(codEmp, codSacado, Chave)

Set obj = nothing

%>

<FORM ACTION=‖https://ww2.itau.com.br/2viabloq/pesquisa.asp‖ METHOD=‖Post‖ name=‖form‖

onsubmit=‖carregabrw()‖ target=‖BLOQUETO‖>

<INPUT type=hidden name=DC value="<%= dadosCripto %>">

<INPUT type=hidden name=msg value="S">

<INPUT type="submit" name="Bloqueto" value="Segunda Via Bloqueto">

</form>

<script language="JavaScript">

<!--

function carregabrw() {

window.open('','BLOQUETO',

'toolbar=yes,menubar=yes,resizable=yes,status=no,scrollbars=yes,left=0,top=0,width=600,height=430

');

}

//-->

</script>

</BODY>

</HTML>

Janeiro 2012 Cobrança Site – Manual Técnico do Desenvolvedor 7

3.2 – CRIPTOGRAFIA DOS DADOS – CÓDIGO ASP/XML XSL

3.2.1 – Página ASP/XML

<%

Option Explicit

Dim xmlhttp 'Página XML a Coletar

Dim vCod_cedente 'Código do cedente

Dim vChave 'Chave

Dim vCod_sacado 'Código do Sacado

Dim dadosCripto 'Dados Criptografados para envia

Dim cripto 'Objeto Cripto

Dim TimeOut

Dim HTMLRead 'Página recebida

Dim xmlSource 'Código XML recebido

Dim ElemRoot 'Elemento XML

Dim currNodeRoot 'Nó do XML

Dim xslDoc 'Doc XSL

'Dados fornecidos pelo Banco Itaú

vCod_cedente = "J0123456789012345678901234"

vChave = "ABCD123456ABCD12"

'CPF ou CNPJ do SACADO

vCod_sacado = request("codSacado")

'Criptografia de dados

Set cripto = server.createobject("Itaucripto.cripto")

dadosCripto = cripto.geraCripto(vCod_cedente,vCod_sacado,vChave)

Set cripto = nothing

'Envio de dados via post

Set xmlhttp = CreateObject("MSXML2.ServerXMLHTTP")

xmlhttp.Open "POST", "https://ww2.itau.com.br/2viabloq/2ViaXMLWebSvc.asmx/PesquisaXML", False

xmlhttp.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"

xmlhttp.send "dados=" & dadosCripto

TimeOut = 0

While ((xmlhttp.readyState <> 4) And (TimeOut < 10))

TimeOut = TimeOut + 1

xmlhttp.waitForResponse 1000

Wend

Janeiro 2012 Cobrança Site – Manual Técnico do Desenvolvedor 8

If Err.Number = 0 Then

HTMLRead = xmlhttp.responseText

Else

HTMLRead = ""

End If

Set xmlhttp = Nothing

Set xmlSource = CreateObject("MSXML2.DOMDocument")

xmlSource.validateOnParse = True

xmlSource.async = False

xmlSource.loadXML HTMLRead

Set ElemRoot = xmlSource.getElementsByTagName("SegundaVia")

currNodeRoot = ElemRoot.item(0).childNodes.item(0).nodeName

'Recebimento de Erro no XML

If Trim(currNodeRoot) = "erro" Then

Response.write ElemRoot.item(0).childNodes.item(0).text

Response.end

End If

Set xslDoc = Server.CreateObject("Microsoft.XMLDOM")

xslDoc.Load(Server.MapPath("table.xsl"))

HTMLRead = xmlSource.transformNode(xslDoc)

response.write HTMLRead

Set xmlSource = Nothing

%>

3.2.2 – Página XSL

<?xml version="1.0" encoding="iso-8859-1"?>

<xsl:template xmlns:xsl="http://www.w3.org/TR/WD-xsl">

<html>

<head>

<title>Segunda Via de Bloquetos - Sua Empresa</title>

<script language="JavaScript">

function envia(tranc)

{

document.f1.strTranc.value=tranc;

document.f1.submit();

}

</script>

<style type="text/css">

Janeiro 2012 Cobrança Site – Manual Técnico do Desenvolvedor 9

a:link { color:FFFFFF; text-decoration:none; font-size:9pt; font-weight:bold; fontfamily:

arial;}

a:visited { color:FFFFFF; text-decoration:none; font-size:9pt; font-weight:bold; fontfamily:

arial;}

a:hover { color:FF6600; text-decoration:underline; font-size:9pt; font-weight:bold; fontfamily:

arial;}

</style>

</head>

<body bgcolor="#c0c0c0">

<!—IMPORTANTE: Form para geração de Bloquetos Itaú -->

<form id="f1" name="f1" action="https://ww2.itau.com.br/2viabloq/frames.asp" method="post"

target="_blank">

<input id="strTranc" type="hidden" name="strTranc"></input>

<input id="S" type="hidden" name="msg"></input>

</form>

<TABLE border="1" bordercolordark="#0000ff" bordercolorlight="#0000ff" bordercolor="#0000ff"

cellpadding="1" cellspacing="0">

<xsl:for-each select="SegundaVia">

<TR>

<TD colspan="3" bordercolordark="#000000"><FONT face="Verdana" size="6"

color="#2222ff"><xsl:value-of select="cedente"/></FONT></TD>

</TR>

<TR>

<TD colspan="3" bordercolordark="#000000"><FONT face="Verdana" size="2"

color="#2222ff">Sacado:<xsl:value-of select="sacado"/></FONT></TD>

</TR>

</xsl:for-each>

<TR>

<TD width="33%"><FONT face="Verdana" size="-1">Nosso Número</FONT></TD>

<TD width="33%"><FONT face="Verdana" size="-1">Vencimento</FONT></TD>

<TD width="33%"><FONT face="Verdana" size="-1">Valor</FONT></TD>

</TR>

<xsl:for-each select="SegundaVia/ListadeBloquetos/Bloqueto">

<TR>

<TD width="33%"><FONT face="Verdana"><a><xsl:attribute

name="href">JavaScript:envia('<xsl:value-of select="LINK"/>')</xsl:attribute><xsl:value-of

select="NOSSONUMERO"/></a></FONT></TD>

<TD width="33%"><FONT face="Verdana"><a><xsl:attribute

name="href">JavaScript:envia('<xsl:value-of select="LINK"/>')</xsl:attribute><xsl:value-of

select="VENCIMENTO"/></a></FONT></TD>

Janeiro 2012 Cobrança Site – Manual Técnico do Desenvolvedor 10

<TD width="33%"><FONT face="Verdana"><a><xsl:attribute

name="href">JavaScript:envia('<xsl:value-of select="LINK"/>')</xsl:attribute><xsl:value-of

select="VALOR"/></a></FONT></TD>

</TR>

</xsl:for-each>

</TABLE>

</body>

</html>

</xsl:template>

Janeiro 2012 Cobrança Site – Manual Técnico do Desenvolvedor 11

4. INFORMAÇÕES TÉCNICAS – Unix ou Linux

Para a instalação da segunda via do Bloqueto Digital, deve-se executar os passos descritos a seguir

4.1 – URL DA 2A VIA DO BLOQUETO DIGITAL

Os dados criptografados deverão ser enviados para a URL abaixo:

https://ww2.itau.com.br/2viabloq/pesquisa.asp

4.2 – CRIPTOGRAFIA

Deverá ser feito o download do ―Componente Itaú‖ de criptografia – Itaucripto.class:

http://www.itaushopline.com.br/cadastrado/download/itaucripto.class.

Esta classe utilizará os três parâmetros descritos na tabela abaixo e retornará os dados critografados.

Campos Descrição Critérios

Dados obrigatórios

codEmp Código da empresa Alfanumérico com 26 posições

codSacado Código do Sacado Numérico com: - CNPJ - 14 posições (99999999999999) - CPF - 11 posições (99999999999)

Chave Chave de criptografia (senha)

Alfanumérico com 16 posições em Maiúscula

Exemplo do código em java:

//Inicializa parâmetros necessários ao componente de criptografia

String codEmp = " J0123456789012345678901234";

String codSacado = "00000000000001";

String chave = "ABCD123456ABCD12";

//Criptografa dados para serem enviados ao WebService

Itaucripto cripto = new Itaucripto();

String dadosCriptografados = cripto.geraCripto(codEmp,dadosBloq,chave);

4.3 – CHAMADA À TELA DA 2A VIA DO BLOQUETO DIGITAL

A página que irá criptografar os dados para enviá-los a 2a via do Bloqueto Digital deverá seguir as

seguintes regras:

( 1 ) Para chamar a tela da 2a via de Bloqueto Digital, a criptografia dos dados deve seguir a ordem

abaixo:

Janeiro 2012 Cobrança Site – Manual Técnico do Desenvolvedor 12

String dadosCriptografados = cripto.geraCripto(codEmp,dadosBloq,chave);

( 2 ) Todos os campos, com exceção do campo ―Chave‖, são criptografados e enviados pelo lojista.

( 3 ) Todos os campos são obrigatórios

( 4 ) A página que contiver a URL do Itaú deverá ser desenvolvida, e apresentar:

Formulário (FORM) com as propriedades:

- method=‖post‖

- action=‖https://ww2.itau.com.br/2viabloq/pesquisa.asp―

Campo (INPUT) para os dados criptografados, com as propriedades:

- name="DC"

- type=‖hidden‖

- value=‖Dados Criptografados‖

Campo (INPUT) para informar se deverá (value=―S‖) ou não (value=―N‖) ser apresentada no bloqueto a

mensagem ―Emissão de segunda via do bloqueto por solicitação do sacado‖ , com as propriedades:

- name=‖msg"

- type=‖hidden‖

- value=‖S‖ OU value=‖N‖

( 5 ) Para o correto funcionamento da 2a via do Bloqueto Digital nos browsers: AOL, Netscape e

Internet Explorer – versões 4.x ou superior – a instância do browser a ser aberto deve possuir o

JavaScript abaixo, com as seguintes características:

• TOOLBAR = YES

• MENUBAR=YES

• RESIZABLE = YES

• STATUS = NO

• SCROLLBARS = YES

• WIDTH = 600 (sugestão)

• HEIGHT = 430 (sugestão)

<script language="JavaScript">

<!--

function carregabrw() {

window.open(‗‘,'BLOQUETO', ‗toolbar=yes,menubar=yes,resizable=yes,status=no,scrollbars=yes,left=0,

top=0,width=600,height=430‘);

}

//-->

</script>

Janeiro 2012 Cobrança Site – Manual Técnico do Desenvolvedor 13

5. LAYOUT DOS CAMPOS

5.1 – CRIPTOGRAFIA DOS DADOS – CÓDIGO

import java.text.*;

import java.io.*;

import java.util.*;

import javax.servlet.*;

import javax.servlet.http.*;

import Itau.Itaucripto;

public class ServletCripto2ViaBloq extends HttpServlet

{

private String codEmp; // Código de identificação da empresa

private String chave; // Chave de criptografia da empresa

private String codSacado; // Código do Sacado - CNPJ/CPF

public void destroy()

{

}

public void doGet(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException

{

service(request, response);

}

public void doPost(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException

{

service(request, response);

}

public void init()

{

}

public void service(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException

{

PrintWriter out = response.getWriter();

String dados; //Armazena os dados criptografados

//Inicializa as variáveis

// <- Coloque aqui seu Código de Empresa (26 posições)

codEmp = "J0123412341123412341234123";

// <- Coloque aqui sua chave de criptografia (16 posições)

chave = "KEY123412341234R";

// <- Coloque aqui o CNPJ/CPF do sacado

codSacado = "10987654321";

Janeiro 2012 Cobrança Site – Manual Técnico do Desenvolvedor 14

//Inicializa a classe de criptografia

Itaucripto cripto = new Itaucripto();

//Criptografa os dados chamando o método geraCripto da classe Itaucripto

dados = cripto.geraCripto(codEmp,dadosBloq,chave);

//Inicia a construção da página de resposta

response.setContentType("text/html");

out.println("<html>");

out.println("<body bgcolor=\"white\">");

out.println("<head>");

out.println("<title> Segunda Via de Bloquetos </title>");

out.println("</head>");

out.println("<body>");

out.println("<FORM METHOD=\"POST\"

ACTION=\"https://ww2.itau.com.br/2viabloq/pesquisa.asp\"

name=\"form\" target=\"novajanela\">");

out.println("<INPUT TYPE=\"hidden\" NAME=\"DC\" VALUE=\""

+ dados + "\">");

out.println("<INPUT TYPE=\"submit\" name=\"2via\"

value=\"Segunda via de Bloquetos\">");

out.println("</FORM>");

out.println("<script language=\"JavaScript\">");

out.println("<!--");

out.println("function carregabrw() { ");

out.println("window.open('','novajanela',\"toolbar=yes,menubar=yes,

resizable=yes,status=no,scrollbars=yes, width=675,height=485\"); ");

out.println("}");

out.println("//-->");

out.println("</script>");

out.println("</body>");

out.println("</html>");

}

}