Sample code for 30+ languages & platforms
PHP Extension

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 PHP Extension Downloads

PHP Extension
<?php

include("chilkat.php");

$success = false;

// 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 
$sbXml = new CkStringBuilder();
$success = $sbXml->LoadFile('qa_data/xml_dsig/sii_cl/signed1.xml','iso-8859-1');
if ($success == false) {
    print 'Failed to load input file.' . "\n";
    exit;
}

$dsig = new CkXmlDSig();

$success = $dsig->LoadSignatureSb($sbXml);
if ($success != true) {
    print $dsig->lastErrorText() . "\n";
    exit;
}

$bVerifyReferenceDigests = true;
$bVerified = $dsig->VerifySignature($bVerifyReferenceDigests);
if ($bVerified == false) {
    print $dsig->lastErrorText() . "\n";
    exit;
}

print 'Signature verified = ' . $bVerified . "\n";

?>