erpl-pyrfc
A drop-in replacement for SAP's archived PyRFC,
built on erpl-proto — a pure-Rust implementation of the RFC protocol.
pip uninstall pyrfc
pip install erpl-pyrfc
Your code does not change:
from pyrfc import Connection
with Connection(ashost="sap.example.com", sysnr="00", client="001",
user="RFCUSER", passwd="...", lang="EN") as conn:
print(conn.call("STFC_CONNECTION", REQUTEXT="hello")["ECHOTEXT"])
Why
PyRFC is archived and frozen against one patch level of the SAP NW RFC SDK — a licence-gated download of roughly 30 MB of C libraries and ICU that may not be redistributed, which is why PyRFC never shipped Linux wheels.
erpl-pyrfc has no SDK dependency and no ICU. The wheel is self-contained: it
works in a bare container with nothing else installed and no environment
variables set.
Version
Calendar versioning, YYYY.M.D, as the erpl projects use: a release tells
you when it was cut, which for a library tracking someone else's wire protocol
is the useful fact. A second release on one day takes a .N suffix.
Two namespaces, one package
import pyrfc is the compatibility surface. import erpl_pyrfc is the same
objects under a name that says which implementation is running. Both ship in the
same wheel.
Do not install SAP's pyrfc distribution alongside this one — both own the
pyrfc/ directory, and pip cannot prevent the collision. Importing pyrfc will
tell you so, with the command that fixes it.
What is and is not supported
See MIGRATION.md — one page telling you whether your code will run, including the deliberate non-goals and the handful of places behaviour differs.
Licence
BUSL-1.1, inherited from erpl-proto, and a change from PyRFC's Apache-2.0.
If you are embedding this package in a product you distribute, read
LICENSE and the Additional Use Grant before you ship: the
terms are not the ones PyRFC came with, and that difference is deliberate rather
than an oversight. For a package-specific grant, contact DataZoo.
Development
uv venv .venv
VIRTUAL_ENV=$PWD/.venv uvx maturin develop --release
# Offline tests only:
.venv/bin/python -m pytest tests/
# Against a live system (skips cleanly without credentials):
SAP_USER=DEVELOPER SAP_PASSWD=... .venv/bin/python -m pytest tests/
Live tests read SAP_ASHOST, SAP_SYSNR, SAP_CLIENT, SAP_LANG and skip with
a SKIP(live): line when SAP_USER/SAP_PASSWD are unset, matching the
convention in the Rust crates.
Some data-type and server tests need ABAP fixtures on the system. They are
created by one script, deployed without Eclipse or SAP GUI — see
abap/README.md. Tests needing them skip cleanly when they are
absent.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file erpl_pyrfc-2026.9.2.tar.gz.
File metadata
- Download URL: erpl_pyrfc-2026.9.2.tar.gz
- Upload date:
- Size: 490.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b8f776a2b5cb1dd79c295fc621ede07eb464eb553165a07acde46fd0886899c6
|
|
| MD5 |
b25ec89d332ac1322b7450a268935c1e
|
|
| BLAKE2b-256 |
bcb6ff49c3b5814b3a48cfb3b92304de27e1b01d48dba3c261b2d05c730263d3
|
Provenance
The following attestation bundles were made for erpl_pyrfc-2026.9.2.tar.gz:
Publisher:
bindings-pyrfc.yml on DataZooDE/erpl-proto
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
erpl_pyrfc-2026.9.2.tar.gz -
Subject digest:
b8f776a2b5cb1dd79c295fc621ede07eb464eb553165a07acde46fd0886899c6 - Sigstore transparency entry: 2678147469
- Sigstore integration time:
-
Permalink:
DataZooDE/erpl-proto@93a366dd87453b0a0aacdae9d6cd204495557da7 -
Branch / Tag:
refs/tags/v2026.9.2 - Owner: https://github.com/DataZooDE
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
bindings-pyrfc.yml@93a366dd87453b0a0aacdae9d6cd204495557da7 -
Trigger Event:
push
-
Statement type:
File details
Details for the file erpl_pyrfc-2026.9.2-cp39-abi3-win_amd64.whl.
File metadata
- Download URL: erpl_pyrfc-2026.9.2-cp39-abi3-win_amd64.whl
- Upload date:
- Size: 1.2 MB
- Tags: CPython 3.9+, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f0aaee31e35b43b7bef5f4219b8840befb5df66a78dfcbe579e4f86e87b5a1a4
|
|
| MD5 |
5e865791ce33f3d3bb9ccfe5a0078550
|
|
| BLAKE2b-256 |
1c8af128bca8263b6037d916314cc8e72b2ed3e7a2fca8fc13f4484332200ee3
|
Provenance
The following attestation bundles were made for erpl_pyrfc-2026.9.2-cp39-abi3-win_amd64.whl:
Publisher:
bindings-pyrfc.yml on DataZooDE/erpl-proto
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
erpl_pyrfc-2026.9.2-cp39-abi3-win_amd64.whl -
Subject digest:
f0aaee31e35b43b7bef5f4219b8840befb5df66a78dfcbe579e4f86e87b5a1a4 - Sigstore transparency entry: 2678147838
- Sigstore integration time:
-
Permalink:
DataZooDE/erpl-proto@93a366dd87453b0a0aacdae9d6cd204495557da7 -
Branch / Tag:
refs/tags/v2026.9.2 - Owner: https://github.com/DataZooDE
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
bindings-pyrfc.yml@93a366dd87453b0a0aacdae9d6cd204495557da7 -
Trigger Event:
push
-
Statement type:
File details
Details for the file erpl_pyrfc-2026.9.2-cp39-abi3-musllinux_1_2_x86_64.whl.
File metadata
- Download URL: erpl_pyrfc-2026.9.2-cp39-abi3-musllinux_1_2_x86_64.whl
- Upload date:
- Size: 1.7 MB
- Tags: CPython 3.9+, musllinux: musl 1.2+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ed63f8dfa4095a24a994f837b237f0e39196e9099301db85188ca00ddc781b0a
|
|
| MD5 |
b8c1174337bb9c0ceb126f8efec93aa4
|
|
| BLAKE2b-256 |
a22248446353428aa5af967919ecdf10d21601b6489fe8b1c9f6fe9771f2f3b1
|
Provenance
The following attestation bundles were made for erpl_pyrfc-2026.9.2-cp39-abi3-musllinux_1_2_x86_64.whl:
Publisher:
bindings-pyrfc.yml on DataZooDE/erpl-proto
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
erpl_pyrfc-2026.9.2-cp39-abi3-musllinux_1_2_x86_64.whl -
Subject digest:
ed63f8dfa4095a24a994f837b237f0e39196e9099301db85188ca00ddc781b0a - Sigstore transparency entry: 2678148028
- Sigstore integration time:
-
Permalink:
DataZooDE/erpl-proto@93a366dd87453b0a0aacdae9d6cd204495557da7 -
Branch / Tag:
refs/tags/v2026.9.2 - Owner: https://github.com/DataZooDE
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
bindings-pyrfc.yml@93a366dd87453b0a0aacdae9d6cd204495557da7 -
Trigger Event:
push
-
Statement type:
File details
Details for the file erpl_pyrfc-2026.9.2-cp39-abi3-musllinux_1_2_aarch64.whl.
File metadata
- Download URL: erpl_pyrfc-2026.9.2-cp39-abi3-musllinux_1_2_aarch64.whl
- Upload date:
- Size: 1.6 MB
- Tags: CPython 3.9+, musllinux: musl 1.2+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1a4b7ddb4585f00b813e9ff1efae16cf5242dcf038691e535c727e88bf5de91b
|
|
| MD5 |
811a848a5aaf22bad2d9a248230ceea0
|
|
| BLAKE2b-256 |
e53a538764244c799cfcdc1e76242fe013288d3d758e821d971da9e286978dee
|
Provenance
The following attestation bundles were made for erpl_pyrfc-2026.9.2-cp39-abi3-musllinux_1_2_aarch64.whl:
Publisher:
bindings-pyrfc.yml on DataZooDE/erpl-proto
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
erpl_pyrfc-2026.9.2-cp39-abi3-musllinux_1_2_aarch64.whl -
Subject digest:
1a4b7ddb4585f00b813e9ff1efae16cf5242dcf038691e535c727e88bf5de91b - Sigstore transparency entry: 2678147938
- Sigstore integration time:
-
Permalink:
DataZooDE/erpl-proto@93a366dd87453b0a0aacdae9d6cd204495557da7 -
Branch / Tag:
refs/tags/v2026.9.2 - Owner: https://github.com/DataZooDE
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
bindings-pyrfc.yml@93a366dd87453b0a0aacdae9d6cd204495557da7 -
Trigger Event:
push
-
Statement type:
File details
Details for the file erpl_pyrfc-2026.9.2-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: erpl_pyrfc-2026.9.2-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 1.5 MB
- Tags: CPython 3.9+, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fd385864a1d4116af108e84fb45b960a8032469beef4219e81203bf9331fb772
|
|
| MD5 |
a3e75f8bb8acf95bd6511c79b44bd655
|
|
| BLAKE2b-256 |
d1ec865ac8677cc97f31baf59561a1547e8b22d17bc45f33ba88e8d9cbe260d9
|
Provenance
The following attestation bundles were made for erpl_pyrfc-2026.9.2-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:
Publisher:
bindings-pyrfc.yml on DataZooDE/erpl-proto
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
erpl_pyrfc-2026.9.2-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl -
Subject digest:
fd385864a1d4116af108e84fb45b960a8032469beef4219e81203bf9331fb772 - Sigstore transparency entry: 2678147561
- Sigstore integration time:
-
Permalink:
DataZooDE/erpl-proto@93a366dd87453b0a0aacdae9d6cd204495557da7 -
Branch / Tag:
refs/tags/v2026.9.2 - Owner: https://github.com/DataZooDE
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
bindings-pyrfc.yml@93a366dd87453b0a0aacdae9d6cd204495557da7 -
Trigger Event:
push
-
Statement type:
File details
Details for the file erpl_pyrfc-2026.9.2-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.
File metadata
- Download URL: erpl_pyrfc-2026.9.2-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- Upload date:
- Size: 1.5 MB
- Tags: CPython 3.9+, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8908f6f536165baefba67ab25e7f4c19805f54e31130fccc1c0f05e567a4d422
|
|
| MD5 |
dfdbf09dfbb694121360fe69eb8268ca
|
|
| BLAKE2b-256 |
a9d62e3d48575febba0015697f660fb6a2de7b4d377a65abab5b4e622d038afb
|
Provenance
The following attestation bundles were made for erpl_pyrfc-2026.9.2-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:
Publisher:
bindings-pyrfc.yml on DataZooDE/erpl-proto
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
erpl_pyrfc-2026.9.2-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl -
Subject digest:
8908f6f536165baefba67ab25e7f4c19805f54e31130fccc1c0f05e567a4d422 - Sigstore transparency entry: 2678147775
- Sigstore integration time:
-
Permalink:
DataZooDE/erpl-proto@93a366dd87453b0a0aacdae9d6cd204495557da7 -
Branch / Tag:
refs/tags/v2026.9.2 - Owner: https://github.com/DataZooDE
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
bindings-pyrfc.yml@93a366dd87453b0a0aacdae9d6cd204495557da7 -
Trigger Event:
push
-
Statement type:
File details
Details for the file erpl_pyrfc-2026.9.2-cp39-abi3-macosx_11_0_arm64.whl.
File metadata
- Download URL: erpl_pyrfc-2026.9.2-cp39-abi3-macosx_11_0_arm64.whl
- Upload date:
- Size: 1.3 MB
- Tags: CPython 3.9+, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bc7c60437740183a909d75a8f73fb6192b1a4c0f479d661a9c875671a4c75987
|
|
| MD5 |
edf59ec85936a930b2d5ee8897e0026c
|
|
| BLAKE2b-256 |
695de779a65435a076f648db423e6cc2900b026309255295edc658b3704e4bbf
|
Provenance
The following attestation bundles were made for erpl_pyrfc-2026.9.2-cp39-abi3-macosx_11_0_arm64.whl:
Publisher:
bindings-pyrfc.yml on DataZooDE/erpl-proto
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
erpl_pyrfc-2026.9.2-cp39-abi3-macosx_11_0_arm64.whl -
Subject digest:
bc7c60437740183a909d75a8f73fb6192b1a4c0f479d661a9c875671a4c75987 - Sigstore transparency entry: 2678148125
- Sigstore integration time:
-
Permalink:
DataZooDE/erpl-proto@93a366dd87453b0a0aacdae9d6cd204495557da7 -
Branch / Tag:
refs/tags/v2026.9.2 - Owner: https://github.com/DataZooDE
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
bindings-pyrfc.yml@93a366dd87453b0a0aacdae9d6cd204495557da7 -
Trigger Event:
push
-
Statement type:
File details
Details for the file erpl_pyrfc-2026.9.2-cp39-abi3-macosx_10_12_x86_64.whl.
File metadata
- Download URL: erpl_pyrfc-2026.9.2-cp39-abi3-macosx_10_12_x86_64.whl
- Upload date:
- Size: 1.4 MB
- Tags: CPython 3.9+, macOS 10.12+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ffde372de5aa3cf460292c45b3327cb688bc303b51ff56418e8473c1ce10db6c
|
|
| MD5 |
c02a76dbdeadf405bd16fdb87e691ff9
|
|
| BLAKE2b-256 |
aff7f1a11df95b3e55ce8cd5689a77b8f38270bd17527226472e25051320e818
|
Provenance
The following attestation bundles were made for erpl_pyrfc-2026.9.2-cp39-abi3-macosx_10_12_x86_64.whl:
Publisher:
bindings-pyrfc.yml on DataZooDE/erpl-proto
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
erpl_pyrfc-2026.9.2-cp39-abi3-macosx_10_12_x86_64.whl -
Subject digest:
ffde372de5aa3cf460292c45b3327cb688bc303b51ff56418e8473c1ce10db6c - Sigstore transparency entry: 2678147635
- Sigstore integration time:
-
Permalink:
DataZooDE/erpl-proto@93a366dd87453b0a0aacdae9d6cd204495557da7 -
Branch / Tag:
refs/tags/v2026.9.2 - Owner: https://github.com/DataZooDE
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
bindings-pyrfc.yml@93a366dd87453b0a0aacdae9d6cd204495557da7 -
Trigger Event:
push
-
Statement type: