Accept crypto payments in Python | Shieldz

Accept crypto payments in Python

Add non-custodial crypto checkout to your Python app: create an invoice, send the buyer to the hosted checkout, and fulfill on a signed webhook. Funds settle straight to your own wallet, $0 platform fees.

Install

pip install shieldz

Create an invoice and redirect to checkout

from shieldz import Shieldz
shieldz = Shieldz(os.environ["SHIELDZ_API_KEY"])
invoice = shieldz.invoices.create(amount_usd_cents=5000, memo="Order")
# redirect the buyer to invoice["pay_url"]

Verify the webhook

from shieldz import construct_event, SignatureVerificationError
try:
    event = construct_event(raw_body, sig_header, os.environ["SHIELDZ_WEBHOOK_SECRET"])
except SignatureVerificationError:
    ...  # reject the request
if event["type"] == "invoice.paid":
    ...  # fulfill the order

Full reference: API docs, SDKs, API reference.

Explore Shieldz

Crypto payment gateway: overview, non-custodial, Zcash.

Accept a coin: Bitcoin, USDC, USDT, Zcash.

Compare: vs Coinbase Commerce, vs BTCPay Server, vs ZGo, vs CryptAPI, vs NOWPayments, vs Cryptomus, vs BitPay, vs CoinGate, vs OpenNode, vs Plisio, vs BlockBee, vs CoinPayments.

Use cases: For freelancers, For creators, For open-source projects, For online stores, For SaaS, For VPN & hosting providers, For agencies, For nonprofits, For digital sellers.

Guides: Node.js, FastAPI, .NET, WooCommerce.

Build: SDKs, API reference, quickstart. Learn: overview, blog, how it works, supported coins, pricing, is it safe, verify it yourself.