Sample code for 30+ languages & platforms
Lua Requires Chilkat v9.5.0.92+

Egypt ITIDA Generate eReceipt UUID

See more Egypt ITIDA Examples

Demonstrates how to generate the eReceipt UUID for Egypt ITIDA.

Chilkat Lua Downloads

Lua
local chilkat = require("chilkat")

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

local sb = chilkat.StringBuilder.new()

-- Load the eReceipt JSON into a StringBuilder object.
local success = sb:load_file("qa_data/itida/EReceipt_ex.json", "utf-8")
if not success then
    print("Failed to load input file.")
    return
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)
local uuid = sb:get_hash("sha256", "hex_lower", "utf-8")
print("eInvoicing UUID = " .. uuid)