add genReceipt