Settings

Blockchain
Network
Unit
Language
Theme
Sound New Block

Transaction

9b1a5e40cf9620a379cf4e91c375e32febb8ebfdf103643709eb9a6504d9032a
Timestamp (utc)
2021-08-11 07:18:36
Fee Paid
0.00001930 BSV
(
0.05306609 BSV
-
0.05304679 BSV
)
Fee Rate
500.1 sat/KB
Version
1
Confirmations
284,257
Size Stats
3,859 B

4 Outputs

Total Output:
0.05304679 BSV
  • jrunMø {"in":0,"ref":["native://Jig"],"out":["7b34705a6aa1a26f450ce5b1f5e768da9d207fa0a59e5325e66783aa832f979b","cf656770299e4788af15041e979382c8165752766687221f3d9a4966ba77d966"],"del":[],"cre":["n4EoRXnDVdG5PvZpsa5DLCY1SNVDrnRkJ7","n4EoRXnDVdG5PvZpsa5DLCY1SNVDrnRkJ7"],"exec":[{"op":"DEPLOY","data":["class InvoiceMate extends Jig {\n init() {\n this.Invoices = [];\n this.Workflows = [];\n this.InvoiceWorkflows = [];\n this.Payments = [];\n }\n async createInvoice(invoice) {\n const release = await mutex.acquire();\n\n try {\n console.log(\"Invoice data: \", invoice);\n\n this.Invoices.push(invoice);\n return true;\n } catch (error) {\n return false;\n } finally {\n release();\n }\n }\n getInvoiceHistory(id) {\n try {\n return this.Invoices.filter((inv) => inv.invoiceId == id);\n } catch (error) {\n return false;\n }\n }\n getInvoice(id) {\n try {\n let data = this.Invoices.filter((inv) => inv.invoiceId == id);\n data.reverse();\n return data[0];\n } catch (error) {\n return false;\n }\n }\n invoices() {\n return this.Invoices;\n }\n appendTxIdInvoice(obj) {\n this.Invoices[this.Invoices.length - 1] = obj;\n return true;\n }\n\n async createWorkflow(workflow) {\n const release = await mutex.acquire();\n\n try {\n console.log(\"Workflow data: \", workflow);\n\n this.Workflows.push(workflow);\n return \"Workflow posted to the Blockchain!\";\n } catch (error) {\n return false;\n } finally {\n release();\n }\n }\n getWorkflowHistory(id) {\n try {\n let data = this.Workflows.filter((wfl) => wfl.WorkflowID == id);\n return data;\n } catch (error) {\n return false;\n }\n }\n getWorklfow(id) {\n try {\n let data = this.Workflows.filter((wfl) => wfl.WorkflowID == id);\n data.reverse();\n return data[0];\n } catch (error) {\n return false;\n }\n }\n\n appendTxIdWorkflow(obj) {\n this.Workflows[this.Workflows.length - 1] = obj;\n return true;\n }\n\n createInvoiceWorkflow(event) {\n try {\n console.log(\"Event data: \", event);\n\n this.InvoiceWorkflows.push(event);\n return true;\n } catch (error) {\n return false;\n }\n }\n getInvoiceWorkflowHistory(id) {\n try {\n return this.InvoiceWorkflows.filter((event) => event.invoiceID == id);\n } catch (error) {\n return false;\n }\n }\n getInvoiceWorkflow(id) {\n try {\n let data = this.InvoiceWorkflows.filter((event) => event.invoiceID == id);\n data.reverse();\n return data[0];\n } catch (error) {\n return false;\n }\n }\n appendTxIdEvent(obj) {\n this.InvoiceWorkflows[this.InvoiceWorkflows.length - 1] = obj;\n return true;\n }\n\n makePayment(payment) {\n try {\n console.log(\"Payment data: \", payment);\n\n this.Payments.push(payment);\n return true;\n } catch (error) {\n return false;\n }\n }\n getPaymentHistory(id) {\n try {\n return this.Payments.filter((payment) => payment.invoiceID == id);\n } catch (error) {\n return false;\n }\n }\n getPayment(id) {\n try {\n let data = this.Payments.filter((payment) => payment.invoiceID == id);\n data.reverse();\n return data[0];\n } catch (error) {\n return false;\n }\n }\n appendTxIdPayment(obj) {\n this.Payments[this.Payments.length - 1] = obj;\n return true;\n }\n}",{"deps":{"Jig":{"$jig":0}}}]},{"op":"NEW","data":[{"$jig":1},[]]}]}
    https://whatsonchain.com/tx/9b1a5e40cf9620a379cf4e91c375e32febb8ebfdf103643709eb9a6504d9032a