Skip to main content

Stellar Python SDK

GitHub Workflow Status Read the Docs PyPI - Downloads Codecov PyPI Stellar Protocol

py-stellar-base is a Python library for communicating with a Stellar Horizon server and Stellar RPC server. It is used for building Stellar apps on Python. It supports Python 3.10+ as well as PyPy 3.11.

It provides:

  • a networking layer API for Horizon endpoints.
  • a networking layer API for Stellar RPC server methods.
  • facilities for building and signing transactions, for communicating with a Stellar Horizon and Stellar RPC instance, and for submitting transactions or querying network history.

Documentation

py-stellar-base's documentation can be found at https://stellar-sdk.readthedocs.io.

Installing

pip install --upgrade stellar-sdk

If you need to use asynchronous, please use the following command to install the required dependencies.

pip install --upgrade stellar-sdk[aiohttp]

If you need to Shamir backup support, please use the following command to install the required dependencies.

pip install --upgrade stellar-sdk[shamir]

We follow Semantic Versioning 2.0.0, and I strongly recommend that you specify its major version number in the dependency file to avoid the unknown effects of breaking changes.

A Simple Example

You can find more examples here.

# Alice pay 10.25 XLM to Bob
from stellar_sdk import Asset, Server, Keypair, TransactionBuilder, Network

alice_keypair = Keypair.from_secret("SBFZCHU5645DOKRWYBXVOXY2ELGJKFRX6VGGPRYUWHQ7PMXXJNDZFMKD")
bob_address = "GA7YNBW5CBTJZ3ZZOWX3ZNBKD6OE7A7IHUQVWMY62W2ZBG2SGZVOOPVH"

server = Server("https://horizon-testnet.stellar.org")
alice_account = server.load_account(alice_keypair.public_key)
base_fee = 100
transaction = (
    TransactionBuilder(
        source_account=alice_account,
        network_passphrase=Network.TESTNET_NETWORK_PASSPHRASE,
        base_fee=base_fee,
    )
    .add_text_memo("Hello, Stellar!")
    .append_payment_op(bob_address, Asset.native(), "10.25")
    .set_timeout(30)
    .build()
)
transaction.sign(alice_keypair)
response = server.submit_transaction(transaction)
print(response)

stellar-contract-bindings

stellar-contract-bindings allows you to generate Python bindings for Stellar Soroban smart contracts, it makes calling Stellar Soroban contracts easier. click here for more information.

stellar-model

stellar-model allows you to parse the JSON returned by Stellar Horizon into the Python models, click here for more information.

Contributing

Contributions are welcome! See CONTRIBUTING.md for more details.

Thank you to all the people who have already contributed to py-stellar-base!

Metadata

Release files for stellar-sdk 17.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for stellar-sdk 17.0.0
File Size Uploaded Provenance Actions
stellar_sdk-17.0.0.tar.gz 430.4 kB Without provenance Details for stellar_sdk-17.0.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for stellar-sdk 17.0.0
File Interpreter ABI Platform Actions
stellar_sdk-17.0.0-py3-none-any.whl Python 3 none any Details for stellar_sdk-17.0.0-py3-none-any.whl

Total release size: 1.4 MB

Release files / stellar_sdk-17.0.0.tar.gz

Download URL stellar_sdk-17.0.0.tar.gz
Size 430.4 kB
Tags Source
SHA-256 checksum
How to use checksums
26066e64cd18aeea72cd7fd1ade73658066825e4d823dc652463a783ee394013
BLAKE2b-256 checksum
How to use checksums
e8b28ad10c0819447fd74debb44385a8ac1d2fba1bd60c581ab366f4a57429e7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.6 {"installer":{"name":"uv","version":"0.13.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / stellar_sdk-17.0.0-py3-none-any.whl

Download URL stellar_sdk-17.0.0-py3-none-any.whl
Size 996.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
4d40daa8a6b88e1d6dcb7f4ed0df389a5e704a8e18ca9e0da6a800ed9a159240
BLAKE2b-256 checksum
How to use checksums
c02271bf9c52977581ac7e1cc3594326bc8ae52de86bad2179681eab5b26056b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.6 {"installer":{"name":"uv","version":"0.13.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Security for stellar-sdk 17.0.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

17.0.0 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page