una ayuda para configurar un soap con autenticacion token

760 views
Skip to first unread message

Marcelo Barberis

unread,
Mar 6, 2022, 11:54:45 AM3/6/22
to publicesvfoxpro
Hola buenas tardes, les comento que durante varios meses estuve realizando pruebas para facturacion electronica consumiendo soap con token pero no tuve problemas, resulta que ahora debo pasar el proceso a produccion y la renta me paso las rutas que debo usar, pero al realizar la primera prueba me devuelve un error API KEY NO VALIDO.
Este es el codigo que he usando antes y sin problemas, solo le cambie el WS nada mas. Revisando la documentacion que esta disponible parece haber algun cambio a lo que habia antes. Esto extraje de la web de la renta -->> https://siatanexo.impuestos.gob.bo/index.php/implementacion-servicios-facturacion/autenticacion/token-de-autenticacion
Para realizar el consumo de los servicios que solicitan la autenticación mediante el uso de token, se debe considerar en el header del servicio el parámetro: Authorization y el valor: “Token VALORTOKEN”. Donde la variable “VALORTOKEN” es el Token que se obtuvo a través del servicio de autenticación.
Nota.- La inclusión del Token de la petición SOAP debe hacerse en la cabecera HTTP y no así en la cabecera XML del request 

Esto hacia antes y no tuve problemas, solo cambie el ws, esta variable lcURL
lnAmbiente = 1
lnModalidad = 2
lnPuntoVenta = 0
lcCodSistema = "6D164EA787F55BD39DFEFBF"
lnSucursal = 0
lnNroNit = 1899832011

lcURL = "https://siatrest.impuestos.gob.bo/v2/FacturacionCodigos?wsdl"

*--- XML de peticion
TEXT TO lcXMLRequest TEXTMERGE PRETEXT 7 NOSHOW
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:siat="https://siat.impuestos.gob.bo/">
<soapenv:Header/>
<soapenv:Body>
<siat:cuis>
<SolicitudCuis>
<codigoAmbiente><<lnAmbiente>></codigoAmbiente>
<codigoModalidad><<lnModalidad>></codigoModalidad>
<!--Optional:-->
<codigoPuntoVenta><<lnPuntoVenta>></codigoPuntoVenta>
<codigoSistema><<lcCodSistema>></codigoSistema>
<codigoSucursal><<lnSucursal>></codigoSucursal>
<nit><<lnNroNit>></nit>
</SolicitudCuis>
</siat:cuis>
</soapenv:Body>
</soapenv:Envelope>
ENDTEXT

*--- TOKEN
TEXT TO lcToken TEXTMERGE NOSHOW PRETEXT 15
<<ALLTRIM(THIS.Paginas.Page2.Token_Sistema.Value)>>
ENDTEXT

*--- Consulta Web Service
lcRespXML = ""
TRY
oHTTP = CREATEOBJECT('Microsoft.XMLHTTP')
oHTTP.OPEN("POST", lcURL, .F.)
oHTTP.setRequestHeader("Content-Type", "text/xml;charset=utf-8")
oHTTP.setRequestHeader("Apikey ","TokenApi " + lcToken)    
oHTTP.SEND(lcXMLRequest)
lcRespXML = oHTTP.responsetext
CATCH TO loErr
lcError="Error: " + TRANSFORM(loErr.ErrorNo) +  " Mensaje: " + loErr.Message
MESSAGEBOX_RB(lcError,16,"Error")
RETURN .F.
ENDTRY

El Token que tengo es este:
eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzUxMiJ9.eyJzdWIiOiIxODk5ODMyRHQiLCJjb2RpZ29TaXN0ZW1hIjoiNkQxNjRFQTc4N0Y1NUJEMzlERkVGQkYiLCJuaXQiOiJINHNJQUFBQUFBQUFBRE8wc0xTME1EWXlNRFFFQU1uZVNiRUtBQUFBIiwiaWQiOjIwMTExNywiZXhwIjoxNjc4MDYwODAwLCJpYXQiOjE2NDY1NTYwMTQsIm5pdERlbGVnYWRvIjoxODk5ODMyMDExLCJzdWJzaXN0ZW1hIjoiU0ZFIn0.zon7Ewof-gI6E1vUisVWy53ryad4a5zDDfkvmvjmkUBCEo8G30wQjX4t4_iPH9Jo73tGrkI9p2rqJFC2lweeJQ

Desde ya agradecido que me puedan dar una mano, he probado de varias formas, hasta inactive un token y he creado otro token, es el que esta arriba, para ver si era que el token estaba mal pero igual, estoy a destiempo, tengo que presentar esto el lunes y estoy ya como una semana viendo de una forma a otra y nada, usando soapui igual me devuelve el mismo resultado NO SE PUEDE CREAR CUIS por APIKEY INVALIDO
--
Marcelo Barberis Gutierrez
Sistemas Informaticos
Villa Montes - Bolivia
Telef.: +591-76830544

Zarlu

unread,
Mar 6, 2022, 3:45:34 PM3/6/22
to Comunidad de Visual Foxpro en Español
Buenas tardes Marcelo!

Quizá cambiar esto:
oHTTP.setRequestHeader("Apikey ","TokenApi " + lcToken)  

Por esto:
oHTTP.setRequestHeader("Authorization",  "Token " + lcToken)

Suerte
zarlu
Chetumal, Quintana Roo, México

Marcelo Barberis

unread,
Mar 6, 2022, 8:43:54 PM3/6/22
to publicesvfoxpro
Hola estimado amigo, te comento que la forma que tu pones yo ya lo probe igual -->>  oHTTP.setRequestHeader("Authorization",  "Token " + lcToken)

error fact1.jpg
con la forma que ya venia usando -->> oHTTP.setRequestHeader("Apikey ","TokenApi " + lcToken)

error fact2.jpg

Despues probe mesclando pero de igual manera me dio error, ya nose a quien mas consultar, pero seguire viendo algunas variantes mas


--
Blog de la Comunidad Visual FoxPro en Español: http://comunidadvfp.blogspot.com
---
Has recibido este mensaje porque estás suscrito al grupo "Comunidad de Visual Foxpro en Español" de Grupos de Google.
Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a publicesvfoxp...@googlegroups.com.
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/publicesvfoxpro/5dda4ec3-70ed-4d8b-803f-e4213a46ebadn%40googlegroups.com.
Reply all
Reply to author
Forward
0 new messages