Sample code for 30+ languages & platforms
Ruby

Egypt ITIDA Generate eReceipt UUID

See more Egypt ITIDA Examples

Demonstrates how to generate the eReceipt UUID for Egypt ITIDA.

Note: This example requires Chilkat v9.5.0.92 or greater.

Chilkat Ruby Downloads

Ruby
require 'chilkat'

success = false

# 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";