Overview of Smart Contract Integration in SAP ABAP

Enabling SAP ABAP to call EVM smart contracts through PRVD Nchain

Basics of smart contract integration in provide-abap

In addition to simplifying the creation of zero-knowledge proofs upon SAP data, provide-abap also introduces a generic framework for ABAP to call smart contracts on EVM-based blockchains such as Ethereum, Polygon Matic, or Provide Network through PRVD Nchain.

For programming languages such as Javascript, Python - or in our case ABAP - to call smart contracts, ABI files (Application Binary Interface) are required. The ABI file is referenced at the time of smart contract execution to define the smart contract's inputs, outputs, types etc. The ABI can also be commonly found in the related blockchain's block explorer as well.

PRVD NChain introduces an API middleware to use the ABI and the PRVD Ident configuration to enable smart contract integration. provide-abap essentially offers an ABAP-based client to PRVD NChain as a RPC server - and should your needs go beyond ABAP, many other languages are supported as well. We've included a Javascript-based example for comparisons sake!

The ABI files required for the smart contract call to PRVD Nchain and proUBC are currently maintained through the SAP transaction code AL11. An additional Z-table ZPRVDABIREGISTRY is used to index the AL11 entry to a specific smart contract on an EVM network. provide-abap's NChain helper classes reference the ABI data within files along with the ABI registry table data to enable smart contract execution in SAP ABAP.

Example

In the following steps - we'll show how the ABI registry and proUBCs PRVD Nchain helper classes can be used to create a smart contract integration in ABAP using the Chainlink ETH/USD Price Feed on the Polygon Mumbai testnet as an example.

Last updated