Skip to main content

The Python Stellar SDK library provides APIs to build transactions and connect to Horizon and Stellar RPC server.

Project description

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.

Links

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

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

stellar_sdk-15.0.0b0.tar.gz (417.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

stellar_sdk-15.0.0b0-py3-none-any.whl (979.1 kB view details)

Uploaded Python 3

File details

Details for the file stellar_sdk-15.0.0b0.tar.gz.

File metadata

  • Download URL: stellar_sdk-15.0.0b0.tar.gz
  • Upload date:
  • Size: 417.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.21 {"installer":{"name":"uv","version":"0.11.21","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}

File hashes

Hashes for stellar_sdk-15.0.0b0.tar.gz
Algorithm Hash digest
SHA256 9892fe6827d5517f4f4397dff9a59c8c009da05020fe4d5b2a77bff36745de6e
MD5 a973ef56a51dacbbd72db94944ef10ab
BLAKE2b-256 a83ba933aa639eb9c16694309d5db226f18e9891e92add5267c2fea86a7dce72

See more details on using hashes here.

File details

Details for the file stellar_sdk-15.0.0b0-py3-none-any.whl.

File metadata

  • Download URL: stellar_sdk-15.0.0b0-py3-none-any.whl
  • Upload date:
  • Size: 979.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.21 {"installer":{"name":"uv","version":"0.11.21","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}

File hashes

Hashes for stellar_sdk-15.0.0b0-py3-none-any.whl
Algorithm Hash digest
SHA256 bf967991c16936ef9b80dc31375644f6aa825d136baafa67907eb2d5f3892166
MD5 921423874cf75ba7a660a5d707dcb166
BLAKE2b-256 b4f92d70b79c4a768a6d205a9586f7c1ee54660ab0ec2d9f67e9cc71ed994b3f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page