Sample code for 30+ languages & platforms
Tcl

Verify Factura Electronica Chile SII (iso-8859-1)

See more XAdES Examples

Demonstrates how to verify SII XML stored as iso-8859-1 having just a single signature.

Chilkat Tcl Downloads

Tcl

load ./chilkat.dll

set success 0

# This example requires the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.

# The signed XML to be verified in this example contains the following:

# <?xml version="1.0" encoding="ISO-8859-1"?>
# <DTE version="1.0" xmlns="http://www.sii.cl/SiiDte">
# <Documento ID="F13T34">
# ...
# </Documento>
# <Signature xmlns="http://www.w3.org/2000/09/xmldsig#">
# ....
# </Signature>
# </DTE>

# Load the signed XML into sbXml -- telling Chilkat to interpret the bytes as iso-8859-1 
set sbXml [new_CkStringBuilder]

set success [CkStringBuilder_LoadFile $sbXml "qa_data/xml_dsig/sii_cl/signed1.xml" "iso-8859-1"]
if {$success == 0} then {
    puts "Failed to load input file."
    delete_CkStringBuilder $sbXml
    exit
}

set dsig [new_CkXmlDSig]

set success [CkXmlDSig_LoadSignatureSb $dsig $sbXml]
if {$success != 1} then {
    puts [CkXmlDSig_lastErrorText $dsig]
    delete_CkStringBuilder $sbXml
    delete_CkXmlDSig $dsig
    exit
}

set bVerifyReferenceDigests 1
set bVerified [CkXmlDSig_VerifySignature $dsig $bVerifyReferenceDigests]
if {$bVerified == 0} then {
    puts [CkXmlDSig_lastErrorText $dsig]
    delete_CkStringBuilder $sbXml
    delete_CkXmlDSig $dsig
    exit
}

puts "Signature verified = $bVerified"

delete_CkStringBuilder $sbXml
delete_CkXmlDSig $dsig