LIB CURL + HARBOUR + BCC 7.7 (AHORA SOLUCION CHILKAT - ACTIVEX)
-
- Posts: 288
- Joined: Sun Jan 31, 2010 3:30 pm
- Location: Bucaramanga - Colombia
- Been thanked: 1 time
Re: LIB CURL + HARBOUR + BCC 7.7
le agregue el archivo firmado... y responde con "0" y vacio el response
-
- Posts: 288
- Joined: Sun Jan 31, 2010 3:30 pm
- Location: Bucaramanga - Colombia
- Been thanked: 1 time
Re: LIB CURL + HARBOUR + BCC 7.7 (SOLUCIONADO )
Buena noche.. he logrado enviar facturas electrónicas a la DIAN COLOMBIA, con
el siguiente código
Nota : solo me falta firmar desde harbour el archivo a enviar en : curl_easy_setopt( hCurl, HB_CURLOPT_POSTFIELDS, cXmlStr )
Requiero ayuda de expertos en el tema de firmar xml---
Gracias
JONSSON RUSSI
el siguiente código
Nota : solo me falta firmar desde harbour el archivo a enviar en : curl_easy_setopt( hCurl, HB_CURLOPT_POSTFIELDS, cXmlStr )
Requiero ayuda de expertos en el tema de firmar xml---
Gracias
JONSSON RUSSI
Code: Select all | Expand
#include "hbcurl.ch"
PROCEDURE main()
local nError, cResponse
//local cXmlStr := hb_memoread( "peticion.xml" )
local aHeader := {}
local cUrl := "https://vpfe.dian.gov.co/WcfDianCustomerServices.svc"
local cCertFile := "CERTIFICADO.p12"
local cCertType := "P12" // o "PFX"
local cCertPass := "xxxxxxxxx"
local cNomZip := "z006331767200025SP104100000250.zip"
local cFacturaXml,cXmlStr := ""
local aHasRes := hash()
local cFilRes := ""
local cSignedXmlFile := "E:\TEMP\XML_FIRMADO\z006331767200025SP104100000250_fv_B64"
local hCurl
cFacturaXml = MemoRead( cSignedXmlFile )
// cFacturaXml := "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"
// Crear la solicitud SOAP
cXmlStr := ;
'<?xml version="1.0" encoding="UTF-8"?>' + ;
'<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:wcf="http://wcf.dian.colombia">' + ;
'<soap:Header xmlns:wsa="http://www.w3.org/2005/08/addressing"><wsse:Security soap:mustUnderstand="true" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"><wsu:Timestamp wsu:Id="TS-BD40368ECABC33A9ED174242532066842"><wsu:Created>2025-03-19T23:02:00.668Z</wsu:Created><wsu:Expires>2025-03-20T15:42:00.668Z</wsu:Expires></wsu:Timestamp><wsse:BinarySecurityToken EncodingType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary" ValueType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509v3" wsu:Id="X509-BD40368ECABC33A9ED174242532063237">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</wsse:BinarySecurityToken><ds:Signature Id="SIG-BD40368ECABC33A9ED174242532066441" xmlns:ds="http://www.w3.org/2000/09/xmldsig#"><ds:SignedInfo><ds:CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"><ec:InclusiveNamespaces PrefixList="wsa soap wcf" xmlns:ec="http://www.w3.org/2001/10/xml-exc-c14n#"/></ds:CanonicalizationMethod><ds:SignatureMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#rsa-sha256"/><ds:Reference URI="#id-BD40368ECABC33A9ED174242532063240"><ds:Transforms><ds:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"><ec:InclusiveNamespaces PrefixList="soap wcf" xmlns:ec="http://www.w3.org/2001/10/xml-exc-c14n#"/></ds:Transform></ds:Transforms><ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"/><ds:DigestValue>qJh6cLlCnqq3wbelPQpLrHWjF1DckDtAd6nImSnuk0A=</ds:DigestValue></ds:Reference></ds:SignedInfo><ds:SignatureValue>QfUTEIbjYSlsBrTjWPwzciZvY/je5La75j8yZrRhxUDHqYHt/09erTS6o6Cd8kMFg4cLoleY1VF1P0xiFMLJCIQYvb9TKYmQPuV2y4vw2B7fAkKNRxSW5JRjeIaAWN3WZ3XjIZiKZMzNKXKVLuM6hKNQ1mtnKBHqc3QpRikmekRwpJ7hDACB+LCbwHQywG9aAdaKzELHO3zzc1khju1YvcRb+eN9Dll7I0CVSX7RUklUfdUtdcyumZPmsgRmPMAZp0PG9owrbOd24tLKDD8QJQM9duNrv+EghPzsBmhYe70CzVlJ7Q3JtiWPctn6O5+Skb2DIsSuyJ6+wkyMNXfdVQ==</ds:SignatureValue><ds:KeyInfo Id="KI-BD40368ECABC33A9ED174242532063238"><wsse:SecurityTokenReference wsu:Id="STR-BD40368ECABC33A9ED174242532063239"><wsse:Reference URI="#X509-BD40368ECABC33A9ED174242532063237" ValueType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509v3"/></wsse:SecurityTokenReference></ds:KeyInfo></ds:Signature></wsse:Security><wsa:Action>http://wcf.dian.colombia/IWcfDianCustomerServices/SendBillSync</wsa:Action><wsa:To wsu:Id="id-BD40368ECABC33A9ED174242532063240" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">https://vpfe.dian.gov.co/WcfDianCustomerServices.svc</wsa:To></soap:Header>'+;
'<soap:Body>' + ;
'<wcf:SendBillSync>' + ;
'<wcf:fileName>' + cNomZip +'</wcf:fileName>' + ;
'<wcf:contentFile>' + cFacturaXml + '</wcf:contentFile>' + ;
'</wcf:SendBillSync>' + ;
'</soap:Body>' + ;
'</soap:Envelope>'
// HB_MEMOWRIT( "PRUEBA.XML", cXmlStr )
// Establecer cabeceras requeridas por el WS
aadd( aHeader, "Content-Type: application/soap+xml; charset=UTF-8" )
aadd( aHeader, "SOAPaction=http://wcf.dian.colombia/IWcfDianCustomerServices/SendBillSync" )
aadd( aHeader, "Connection: Keep-Alive" )
aadd( aHeader, "Cache-Control: private" )
hCurl := curl_easy_init()
curl_easy_setopt( hCurl, HB_CURLOPT_URL, cUrl )
curl_easy_setopt( hCurl, HB_CURLOPT_SSL_VERIFYPEER, .f. )
curl_easy_setopt( hCurl, HB_CURLOPT_SSL_VERIFYHOST, .f. )
curl_easy_setopt( hCurl, HB_CURLOPT_SSLCERT, cCertFile )
curl_easy_setopt( hCurl, HB_CURLOPT_SSLCERTTYPE, cCertType )
curl_easy_setopt( hCurl, HB_CURLOPT_KEYPASSWD, cCertPass )
curl_easy_setopt( hCurl, HB_CURLOPT_POSTFIELDS, cXmlStr )
curl_easy_setopt( hCurl, HB_CURLOPT_DL_BUFF_SETUP )
curl_easy_setopt( hCurl, HB_CURLOPT_HTTPHEADER, aHeader )
// echo server, para depurar .T.
curl_easy_setopt( hCurl, HB_CURLOPT_VERBOSE, .T. )
curl_easy_setopt( hCurl, HB_CURLOPT_ENCODING, "" )
curl_easy_setopt( hCurl, HB_CURLOPT_MAXREDIRS, 10 )
curl_easy_setopt( hCurl, HB_CURLOPT_CUSTOMREQUEST, "POST" )
// No reutilizar conexiones
curl_easy_setopt( hCurl, HB_CURLOPT_FRESH_CONNECT, .T.)
curl_easy_setopt( hCurl, HB_CURLOPT_FORBID_REUSE, .T.)
// Conexion
nError := curl_easy_perform( hCurl )
cResponse := curl_easy_dl_buff_get( hCurl )
if nError == 0
hb_memowrit( "respuesta.xml", cResponse )
else
MSGINFO( curl_easy_strerror( nError ) )
endif
curl_easy_cleanup( hCurl )
curl_global_cleanup()
return
-
- Posts: 288
- Joined: Sun Jan 31, 2010 3:30 pm
- Location: Bucaramanga - Colombia
- Been thanked: 1 time
Re: LIB CURL + HARBOUR + BCC 7.7 (SOLUCIONADO)
requiero que el header despues de firmado quede asi :
Code: Select all | Expand
<soap:Header
xmlns:wsa="http://www.w3.org/2005/08/addressing">
<wsse:Security soap:mustUnderstand="true"
xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"
xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
<wsu:Timestamp wsu:Id="TS-938EB38DEFEBD26652174243018444012">
<wsu:Created>2025-03-20T00:23:04.440Z</wsu:Created>
<wsu:Expires>2025-03-20T17:03:04.440Z</wsu:Expires>
</wsu:Timestamp>
<wsse:BinarySecurityToken EncodingType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary" ValueType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509v3" wsu:Id="X509-938EB38DEFEBD2665217424301843837">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</wsse:BinarySecurityToken>
<ds:Signature Id="SIG-938EB38DEFEBD26652174243018442611"
xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
<ds:SignedInfo>
<ds:CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#">
<ec:InclusiveNamespaces PrefixList="wsa soap wcf"
xmlns:ec="http://www.w3.org/2001/10/xml-exc-c14n#"/>
</ds:CanonicalizationMethod>
<ds:SignatureMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#rsa-sha256"/>
<ds:Reference URI="#id-938EB38DEFEBD26652174243018438610">
<ds:Transforms>
<ds:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#">
<ec:InclusiveNamespaces PrefixList="soap wcf"
xmlns:ec="http://www.w3.org/2001/10/xml-exc-c14n#"/>
</ds:Transform>
</ds:Transforms>
<ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"/>
<ds:DigestValue>buQfAhluXZsKUO9HlDLCSFgl0MeGNpeG7bWGlApVNL8=</ds:DigestValue>
</ds:Reference>
</ds:SignedInfo>
<ds:SignatureValue>GMgcY6ADnFAlGnWNQqOsOOQDd+WicYhZwabfkWsZlcNiUacKLvpr7+K1akLjls7ZaP6XNj/3LwQOcFWB+it5rwuVbyC7DMGNYDMVih99dz6HiChUggeTZdDO7t+G2e/VHr+BQobqsrhn1Pj4X/WbFu+MFPtwRralxyZvCe/SamkidyQb2aNyXXI6PHZsW507o7aGmAF/MFYAk4b/8xf6QXYnRrkYUWoAsOjAO2vzILl8Lk7ppBCbYa6Q4AUzdsCnDqr9iKgC+nXw40gQ0Q/EeOzV/oSQ9VQDkLcDrYvWG8hsjFYBmF4F+AGfwC5yovuljrvDM82sG+D3yNMcLv+Ofg==</ds:SignatureValue>
<ds:KeyInfo Id="KI-938EB38DEFEBD2665217424301843858">
<wsse:SecurityTokenReference wsu:Id="STR-938EB38DEFEBD2665217424301843859">
<wsse:Reference URI="#X509-938EB38DEFEBD2665217424301843837" ValueType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509v3"/>
</wsse:SecurityTokenReference>
</ds:KeyInfo>
</ds:Signature>
</wsse:Security>
<wsa:Action>http://wcf.dian.colombia/IWcfDianCustomerServices/SendBillSync</wsa:Action>
<wsa:To wsu:Id="id-938EB38DEFEBD26652174243018438610"
xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">https://vpfe.dian.gov.co/WcfDianCustomerServices.svc
</wsa:To>
</soap:Header>
Re: LIB CURL + HARBOUR + BCC 7.7 (SOLUCIONADO)
La firma de documentos XML es un tema complejo, necesitas conocer muy bien los requerimientos de la DIAN
Puedes revisar el post que publiqué para entender un poco los formatos a que te enfrentas
viewtopic.php?t=44888
Como he comentado en otras ocasiones, con Chilkat puedes hacer casi de todo, lo que no consigues con las herramientas disponibles en FiveWin y harbour, puedes conseguirlo con Chilkat, además tienes ejemplos en código foxpro o vbasic muy parecido a nuestro codigo
https://tools.chilkat.io/soap_wsdl_gene ... oxpro&mr=f
Puedes revisar el post que publiqué para entender un poco los formatos a que te enfrentas
viewtopic.php?t=44888
Como he comentado en otras ocasiones, con Chilkat puedes hacer casi de todo, lo que no consigues con las herramientas disponibles en FiveWin y harbour, puedes conseguirlo con Chilkat, además tienes ejemplos en código foxpro o vbasic muy parecido a nuestro codigo
https://tools.chilkat.io/soap_wsdl_gene ... oxpro&mr=f
Fivewinner desde 1.9, programador PHP y Javascript, PWA & HTML5 evangelista
-
- Posts: 288
- Joined: Sun Jan 31, 2010 3:30 pm
- Location: Bucaramanga - Colombia
- Been thanked: 1 time
Re: LIB CURL + HARBOUR + BCC 7.7 (SOLUCIONADO)
Buen día...
Si he leído tu post...
Y por practicidad creo que la solución es con Chilkat ... seria ver si en el foro podemos comprar la licencia para 4 programadores---
? la lib Chilkat , se puede usar directamente en (x)harbour o tocaría en c ?
Gracias...
Si he leído tu post...
Y por practicidad creo que la solución es con Chilkat ... seria ver si en el foro podemos comprar la licencia para 4 programadores---
? la lib Chilkat , se puede usar directamente en (x)harbour o tocaría en c ?
Gracias...
-
- Posts: 288
- Joined: Sun Jan 31, 2010 3:30 pm
- Location: Bucaramanga - Colombia
- Been thanked: 1 time
Re: LIB CURL + HARBOUR + BCC 7.7 (SOLUCIONADO)
Ya estoy usando la dll demo de clilkat.. pero no veo como pasar el certificado p12 para la firma..
Code: Select all | Expand
FUNCTION CLILKAT(cFilNam, xDocB64)
LOCAL loXml
LOCAL lcSoapRequestBody
LOCAL lcEndpoint
LOCAL lcSoapAction
LOCAL lcContentType
LOCAL loHttp
LOCAL loResp
LOCAL loResponseXml
LOCAL lnStatusCode
LOCAL lcV_string
LOCAL lcIsValid
LOCAL lcStatusCode
LOCAL lcStatusDescription
LOCAL lcStatusMessage
LOCAL lcXmlBase64Bytes
LOCAL lcXmlBytes
LOCAL lcXmlDocumentKey
LOCAL lcXmlFileName
local cFilXml
* For versions of Chilkat < 10.0.0, use CreateObject('Chilkat_9_5_0.Xml')
loXml = CreateObject('Chilkat.Xml')
loXml:Tag = "soap:Envelope"
loXml:AddAttribute("xmlns:soap","http://www.w3.org/2003/05/soap-envelope")
loXml:AddAttribute("xmlns:wcf","http://wcf.dian.colombia")
loXml:UpdateChildContent("soap:Header","")
loXml:UpdateChildContent("soap:Body|wcf:SendBillSync|wcf:fileName",cFilNam)
loXml:UpdateChildContent("soap:Body|wcf:SendBillSync|wcf:contentFile",xDocB64)
* In a SOAP HTTP request, including the XML declaration (<?xml version="1.0" encoding="UTF-8"?>) in the XML body is generally not required.
loXml:EmitXmlDecl = 0
lcSoapRequestBody = loXml:GetXml()
lcEndpoint = "https://vpfe-hab.dian.gov.co/WcfDianCustomerServices.svc"
lcSoapAction = "http://wcf.dian.colombia/IWcfDianCustomerServices/SendBillSync"
* For SOAP requests, the standard Content-Type is usually set to "text/xml" or "application/soap+xml"
lcContentType = "application/soap+xml"
* For versions of Chilkat < 10.0.0, use CreateObject('Chilkat_9_5_0.Http')
loHttp = CreateObject('Chilkat.Http')
loHttp:ClearHeaders()
loHttp:SetRequestHeader("Content-Type",lcContentType)
loHttp:SetRequestHeader("SOAPAction",lcSoapAction)
loResp = loHttp:PostXml(lcEndpoint,lcSoapRequestBody,"utf-8")
IF (loHttp:LastMethodSuccess = 0)
alert( loHttp:LastErrorText)
alert( "Failed to send SOAP request." )
RELEASE loXml
RELEASE loHttp
CANCEL
ENDIF
* Get the XML response body.
* For versions of Chilkat < 10.0.0, use CreateObject('Chilkat_9_5_0.Xml')
loResponseXml = CreateObject('Chilkat.Xml')
loResp:GetBodyXml(loResponseXml)
lnStatusCode = loResp:StatusCode
alert( "response status code: " + STR(lnStatusCode) )
RELEASE loResp
cFilXml := loResponseXml:GetXml()
hb_memowrit( "respuestaCli.xml", cFilXml )
* If the status code does not indicate succcess, then show the response XML,
* which probably contains error information.
IF (lnStatusCode <> 200)
alert( cFilXml )
RELEASE loXml
RELEASE loHttp
RELEASE loResponseXml
CANCEL
ENDIF
* Parse the successful SOAP response XML.
* This is a sample of the response XML, but the namespace prefixes will be different.
* We can parse the result using "*" for the namespace prefixes (see below).
lcV_string = loResponseXml:GetChildContent("*:Body|*:SendBillSyncResponse|*:SendBillSyncResult|*:ErrorMessage|*:string")
lcIsValid = loResponseXml:GetChildContent("*:Body|*:SendBillSyncResponse|*:SendBillSyncResult|*:IsValid")
lcStatusCode = loResponseXml:GetChildContent("*:Body|*:SendBillSyncResponse|*:SendBillSyncResult|*:StatusCode")
lcStatusDescription = loResponseXml:GetChildContent("*:Body|*:SendBillSyncResponse|*:SendBillSyncResult|*:StatusDescription")
lcStatusMessage = loResponseXml:GetChildContent("*:Body|*:SendBillSyncResponse|*:SendBillSyncResult|*:StatusMessage")
lcXmlBase64Bytes = loResponseXml:GetChildContent("*:Body|*:SendBillSyncResponse|*:SendBillSyncResult|*:XmlBase64Bytes")
lcXmlBytes = loResponseXml:GetChildContent("*:Body|*:SendBillSyncResponse|*:SendBillSyncResult|*:XmlBytes")
lcXmlDocumentKey = loResponseXml:GetChildContent("*:Body|*:SendBillSyncResponse|*:SendBillSyncResult|*:XmlDocumentKey")
lcXmlFileName = loResponseXml:GetChildContent("*:Body|*:SendBillSyncResponse|*:SendBillSyncResult|*:XmlFileName")
RELEASE loXml
RELEASE loHttp
RELEASE loResponseXml
RETURN cFilXml
-
- Posts: 288
- Joined: Sun Jan 31, 2010 3:30 pm
- Location: Bucaramanga - Colombia
- Been thanked: 1 time
Re: LIB CURL + HARBOUR + BCC 7.7 (SOLUCIONADO)
Ya pude firmar el xml de envio a la dian con CHILKAT - ActiveX
Ahora estoy mirando con firmar un xml tipo invoice (factura o notas electronicas)
Ahora estoy mirando con firmar un xml tipo invoice (factura o notas electronicas)
-
- Posts: 288
- Joined: Sun Jan 31, 2010 3:30 pm
- Location: Bucaramanga - Colombia
- Been thanked: 1 time
Re: LIB CURL + HARBOUR + BCC 7.7 (SOLUCIONADO)
Buen día...
Estuve trabajando el ActiveX de CHILKAT y ya logre los 4 procesos críticos para enviar facturas electrónicas a la DIAN Colombia
1. Creación de XML
2. Firmar XML : INVOICE, CREDITNOTE, ETC
3. Firmar XML de petición o ejecución de WS DIAN
4. Envió de petición o ejecución de WS DIAN (para no usar LIBCURL)
Estuve trabajando el ActiveX de CHILKAT y ya logre los 4 procesos críticos para enviar facturas electrónicas a la DIAN Colombia
1. Creación de XML
2. Firmar XML : INVOICE, CREDITNOTE, ETC
3. Firmar XML de petición o ejecución de WS DIAN
4. Envió de petición o ejecución de WS DIAN (para no usar LIBCURL)
Re: LIB CURL + HARBOUR + BCC 7.7 (SOLUCIONADO)
Hola a todos,russimicro wrote: Fri Mar 21, 2025 11:43 am Buen día...
Estuve trabajando el ActiveX de CHILKAT y ya logre los 4 procesos críticos para enviar facturas electrónicas a la DIAN Colombia
1. Creación de XML
2. Firmar XML : INVOICE, CREDITNOTE, ETC
3. Firmar XML de petición o ejecución de WS DIAN
4. Envió de petición o ejecución de WS DIAN (para no usar LIBCURL)
No estoy muy al corriente del proceso para Colombia pero:
1. Creación de XML -->> precisa de firma?
2. Firmar XML : INVOICE, CREDITNOTE, ETC -->> Para España creo que se puede hacer por comandos con Autofirma, creo que podría valer para Colombia (se trata de firmar un fichero con una firma digital, entiendo).
3. Firmar XML de petición o ejecución de WS DIAN -->> Esto lo desconozco.
4. Envió de petición o ejecución de WS DIAN (para no usar LIBCURL) -->> Yo los envío con CURL.EXE bajado de la red; por tanto me desvinculo del programa por si hay actualizaciones futuras de Windows o de no sé qué, y fuercen a recompilar el programa; sería suficiente con buscar la versión adecuada de CURL.EXE
Cuantas más utilidades estén fuera del programa mejor.
Hay quién aún está usando mi programa de hace 23 años (en pesetas y euros), gracias a no tener cosas 'complicadas' en él. Hoy en día compilado con FWH 25.01 32b y quizás este año a 64b. Pero no me pidan cosas bonitas.
Un Saludo
Carlos G.
FiveWin 25.01 + Harbour 3.2.0dev (r2502110321), BCC 7.7 Windows 10
Carlos G.
FiveWin 25.01 + Harbour 3.2.0dev (r2502110321), BCC 7.7 Windows 10
- wilsongamboa
- Posts: 621
- Joined: Wed Oct 19, 2005 6:41 pm
- Location: Quito - Ecuador
- Has thanked: 1 time
- Been thanked: 5 times
Re: LIB CURL + HARBOUR + BCC 7.7 (AHORA SOLUCION CHILKAT - ACTIVEX)
buenas tardes para mi la clave esta en firmar el XML con una firma electronica el resto ya hay ejemplos sencillos con harbour
en mi pais Ecuador yo tuve que comprar un componente activex hecho en c# que me firma
Seria de agradecer si ponen ejemplos con la aotufirma con chilkat con openssl ya que si podemos controlar nosotros todo el rpoceso mucho mejor ya que a veces hay cambios inesperados de la parte tributaria y toca iniciar de nuevo con otro producto en firmado de xml
saludos
y se agradece de antemano
en mi pais Ecuador yo tuve que comprar un componente activex hecho en c# que me firma
Seria de agradecer si ponen ejemplos con la aotufirma con chilkat con openssl ya que si podemos controlar nosotros todo el rpoceso mucho mejor ya que a veces hay cambios inesperados de la parte tributaria y toca iniciar de nuevo con otro producto en firmado de xml
saludos
y se agradece de antemano
Wilson 'W' Gamboa A
Wilson.josenet@gmail.com
Wilson.josenet@gmail.com
-
- Posts: 288
- Joined: Sun Jan 31, 2010 3:30 pm
- Location: Bucaramanga - Colombia
- Been thanked: 1 time