Blockchain in Frappe with ERPNext

The term “trust” in blockchain refer first to “custody” then to “believe/confidence”.

Blockchain is trust-free (i.e. “custody” free) because it doesn’t need certain (and fixed) party/node to keep the information. They are distributed among (freely maintained) party/nodes (in so called distributed ledger → which has nothing to do with financially termed ledger)
And these information is encrypted with a block and chain method.

That makes the information (distributed and chained-encrypted) can be “believed” as reliable.
Blockchain is trusted because it is trust-free :slight_smile:

And I see that blockchain is good for data that is transactional, not static (use static encryption for this: PGP, SSL, PKI, etc).
In crypto-currency the important information kept in blockchain is the transaction, not the coin itself, i.e who buys how much at what time from whom. This proves the ownership of the coins.

For the university certificate discussion above, I see blockchain is good not for keeping the certificate per se. But for the issuance of the certificate (from univ to student) like @f_deryckel said, and for proof-of-ownership when the student needs to show it to third party, for example when he applies for job. Or if he wants to pawn it… :smiley:

Back to ERP.
So what is hypothetically good to be blockchained is the transactional (or as @max_morais_dmm mentioned as process) in the system such as creation or amendment of a document (not necessary the data inside the document itself, which can be kept in conventional database). This creates immutable transaction (transaction records that only goes forward).
Or use smart-contract to create self-release transactions when certain conditions are fulfilled, e.g. salary payment, purchase payment, quality approval, etc.
Hence blockchain can be good for audit.

@alkuhlani so if you want to make something, maybe you can create a SaaS which ERPNext user can send a document (e.g PO) to his account in your SaaS to be stamped (i.e put in blockchained) before sending it to the vendor.

But again… implementing distributed-ledger must consider the need of many nodes, which might make it not practical for internal or single-party use.

Finally, my view regarding ERPNext is don’t do it… at least not now. Maybe for version 20 is ok :slight_smile:

1 Like

This is the question of enough and enhanced. :slight_smile:
Is it enough? Yes
Can we enhance it? Yes
So the next question is should… should we do it?

Here’s some real world use case of using Blockchain for supply chain management I came across last year:

Personally, would love to see this start with something small. Eg: Customer accepting a quote/contract within a system that acts digital signature or pretty much replaces it.

At this point, it is pretty much experimentation without a 100% solid use case to back implementing blockchain or crypto in the system right now.

1 Like

Hammer looking for a nail.

While I understand the attraction the word Blockchain brings, it largely stands to be a very specific solution to specific problems. Most original “success” stories of blockchain have failed the test of time. Here’s an article that should bring some context to what I mean,

3 Likes

The postal service’s app that tracking package by blockchain.

Came across this article. Worth a read

1 Like

Block chain might be useful for archive purposes.
To make 100% sure, that no document is going to be modified afterwards.
But that’s the only valid use case I can see for now inside a company.

In business practice it might be to secure all information after closing a fiscal year or if other regulations (internal or external) apply.

I first downloaded bitcoin because some farmer was accepting magic internet money (bitcoin) for Alpaca socks. Since then I’ve always thought the real point of blockchain was being able to provide a transparent, distributed, and auditable global exchange for food and agriculture products that provides a stable price discovery function.

So now I see ERPnext (which seems to have some ag users) and some discussion of an article pointing out the embarrassing hype coming from blockchain. Maybe this is the right place to build a web store that I can sell electric tractors and soybeans using a distributed consensus ledger currency.

For anyone still interested in this topic:

General Ledger Dialtone :slight_smile:

2 Likes

This seems to be what I was thinking would be an obvious use of a blockchain with ERPNext. You could envisage Frappe being part of its own blockchain which could be used to exchange documents. So instead of emailing a Sales Invoice, it just gets published (e.g. as json) onto the blockchain. Then if the other company also uses ERPNext, it would pick it up automatically and insert it as a purchase invoice. You could implement public key encryption too.

You could only publish certain document types, and Frappe could sign company info (e.g. domain name) into the blockchain, so the trust you have with the physical company business card that was handed to you by the sales guy is extended onto the blockchain. Then Frappe ‘knows’ that the company is already available on the network.

This could be extremely useful for logistics where stock and warehouses are also published. A global ERP/MRP. Also for searching for products/services, kind of an inherently structured internet.

The reason I came was to see if anyone was interested in a bitcoin payment gateway integration. I would love to accept bitcoin instead of this increasingly worthless government stuff :laughing:

1 Like
  • Just install IPFS, and save to that folder. $0. Be sure to refresh occasionally.
  • Install ARWeave, and save to that folder. One time payment of AR coin. Immutably stored for ever.

0 customization or adaptation required of ERPNext in either case. You might want to send the hash identifier to your counterparties, however.

1 Like

Sharing a folder is not really the same thing and is the same as Google Drive, OneDrive, etc. They still require manual intervention to save in the right place, tell the other party and enter the information. Arguably more difficult than emailing, but interesting technologies.

Blockchain does have a very specific usage like most things. You don’t put a screw in with a hammer, doesn’t make the hammer less useful. And yes bitcoin isn’t perfect in terms of energy, transaction capacity and cost. But look how long it took to perfect the engine. Nobody complains about that.

Recording transactions globally without any central trust is a huge deal, especially given the growing mistrust in governments and organisations. He’s wrong about banks removing funds from accounts. In Spain it is legal for the government to deduct whatever they want from your account without notice. And I’m pretty sure there are quite a few Russians who wished their funds were in bitcoin right now.

I’m still struggling to understand why we’d want to use a blockchain for invoicing. What advantages would there be over, say, direct notification with digitally signed certificates?

ERPNext’s Event Streaming layer can already do a lot of the peer-to-peer work. If this is a use case that is important to people, I think it’d be relatively straight forward to add a discovery layer to automate the process.

Not one of those three issues is actually true.

  • Energy Bitcoiner miners are finding that national grid electricity is far too expensive at the scale they require. Solar and wind farms are preferred. But there are many, many other options; natural gas flare offs are a great example. With no need for off-site power transmission, only a good Internet connection, gas turbines can provide enormous amounts of energy at the well head. Plus, of course, the gas is utilized, and the heat turned, literally, into money rather than simply burned off, into our overheated atmosphere.

  • Capacity and cost Bitcoin can be used for, but does not target, transactional situations. It is seen, more and more, as a potential international key currency. Increasingly, dollar pegged stable coins are adopting BitCoin as their backing asset in the same sense that central banks stockpile gold, silver and treasury bonds of lead countries (USA, Japan, China, Canada, Australia, etc.) It is easily traded for Solana, Avalanche, Matic, etc, not mention the stable coins (USDT, USDC, UST, DAI, FRAX, etc) that have negligible transaction costs and far shorter transaction times.

I also see little point in that.

More and more national revenue services are requiring electronic invoicing. Not as an option, but as a requirement to staying in business. You shall deliver a signed XML copy of every invoice to the revenue service, and may only deliver it to the customer after revenue service approval. Under these regimes, they can literally put you out of business in minutes if they so choose.

Meanwhile, Non-Fungible Tokens (NFTs) have great scope for business solutions. A clear example is digital ownership certificates. If your company sells complex products with serial numbers, warranties, etc. transferable NFT ownership certificates can track owners, transfers, maintenance, warranty status changes, royalties and more. NFT management would be a terrific capability for ERPNext.

I didn’t restrict it to just invoicing did I? It was an example amongst others.

Imagine a lot of a company’s suppliers and customers using ERPNext. Then imagine configuring the Event Streaming. Doesn’t sound like fun to me.

Like a decentralised network perhaps? You could do it with multicast or a central server, depends if there’s an application for seeing the history or offline instances or trust or…

Your points actually prove it is true. The article mentioned says BTC and ETH use the same energy as Austria. I don’t think you can claim a solution to that is: “electricity is far too expensive at the scale they require”. Maybe the technology needs to be tweaked to be less hungry?

Which is what you then allude to in your second point. Other currencies have been developed that use less energy, larger blocks and therefore more capacity and less cost. However bitcoin remains with the same problems.

The idea of blockchain is a but complex remember bitcoin minners and remember the system have to create some code each time someone does a transaction in order to alter n make the code difficult to hack so l don’t see any relationship with Erpnext it’s as good as starting from a scratch

Nope, you didn’t restrict it to invoicing. I don’t think I suggested you had. It’s just the example we’re talking about, no?

It sounds like a lot more fun than managing the bandwidth and overhead of a blockchain, at least to me. I still don’t see any advantages of a blockchain over other, simpler encryption and peer-to-peer technologies, but to each their own. :beers:

1 Like