I wanted to know the integration state of ERP system (like SAP) and Ethereum.

Is there an API that allow a smart contract to fetch information from a ERP to store that data?

Thanks in advance



Not specifically. However you could write your own server side daemon program which would basically act as an oracle:

  1. Wait until triggered either by a timer (e.g. Chron Job) or a smart contract (in which case it would have to watch the contract)
  2. Connect to the ERP system and gets the data e.g. SAP Netweaver
  3. Process the data to extract the parts of it you want.
  4. Call a function on your contract which sets the data. (Obviously you want to secure your function so that only authorised parties can call it)

As far as building the server side daemon is concerned there are several options for step (3):

You should probably pick one for which a good SAP connector library exists. Personally I would try python with sapnwrfc

Other thing to note is that storing large amounts of data on the blockchain is expensive so consider uploading data to SWARM or IPFS and storing the hash of the data in the contract.

  • 1
    In my example you could store the data directly a function like SetStockLevel(string sku, uint location, uint number) which sets some data. Also you could just do Update(bytes hash) which stores hash where hash is the hash of data uploaded to IPFS or SWARM Nov 22 '16 at 21:39
  • 1
    Finally you could use the blockchain to set permissions on a web service. But that is really a different question See this paper healthit.gov/sites/default/files/… Nov 22 '16 at 21:43
  • 1
    ipfs add (see) returns a hash e.g. QmbFMke1KXqnYyBBWxB74N4c5SBnJMVAiMNRcGu6x1AwQH which can be used to retrieve whatever you added to IPFS. You store this in a bytes variable in the contract so that others can use ipfs object get QmbFMke1KXqnYyBBWxB74N4c5SBnJMVAiMNRcGu6x1AwQH to get whatever you added. Nov 22 '16 at 22:09
  • 1
    See github.com/AdrianClv/ethereum-ipfs for an example of using IPFS in a Dapp (you need to adapt it for server side but the principle is the same) Nov 22 '16 at 22:14
  • 2
    BTW if you get this working please consider open sourcing and sharing the result with the community as a github project. Nov 22 '16 at 22:17

sap is a complex database, but these guys at finlync have managed direct integration for sap to ethereum. suggest you reach out to them...



First of all, you can't really make an API call in blockchain the way you normally can in a python/java/go/other programming language. You have to make a call through an oracle like Chainlink.

You can then, go ahead and make these API calls through these Chainlink oracles. You can do this for any API, and integrate it with any platform (like SAP).

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.