(Ruby) Egypt ITIDA Generate eReceipt UUID
Demonstrates how to generate the eReceipt UUID for Egypt ITIDA.
Note: This example requires Chilkat v9.5.0.92 or greater.
require 'chilkat'
# This example assumes the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.
# Note: This example requires Chilkat v9.5.0.92 or greater.
# (In v9.5.0.92, the "itida" encoding was added to StringBuilder's Encode method.)
sb = Chilkat::CkStringBuilder.new()
# Load the eReceipt JSON into a StringBuilder object.
success = sb.LoadFile("qa_data/itida/EReceipt_ex.json","utf-8")
if (success == false)
print "Failed to load input file." + "\n";
exit
end
# Convert the contents of sb to the ITIDA canonical form.
# Always pass utf-8 for the 2nd arg.
sb.Encode("itida","utf-8")
# Get the lowercase hex encoded SHA256 hash of the canonicalized JSON
# (always use utf-8)
uuid = sb.getHash("sha256","hex_lower","utf-8")
print "eInvoicing UUID = " + uuid + "\n";
|