Wise Python SDK
Typed synchronous and asynchronous clients for the Wise Platform API. Python 3.11+, HTTPX and Pydantic. Community maintained and not affiliated with Wise.
pip install wise-sdk
Quick start
Set WISE_ACCESS_TOKEN to a sandbox API token in your server environment.
from wise_sdk import WiseClient, WiseEnvironment
with WiseClient(environment=WiseEnvironment.SANDBOX) as client:
profiles = client.profiles.list()
if not profiles or profiles[0].id is None:
raise ValueError("No profile available")
balances = client.balances.list(profile_id=profiles[0].id, types="STANDARD")
print([(balance.currency, balance.amount) for balance in balances])
Choose your intended profile when several exist. Select WiseEnvironment.PRODUCTION
with separate production credentials for live requests.
Async client
import asyncio
from wise_sdk import AsyncWiseClient
async def main():
async with AsyncWiseClient() as client:
profiles = await client.profiles.list()
print(f"Found {len(profiles)} profiles")
asyncio.run(main())
Use context managers or close() / await aclose() to release owned connections.
A supplied httpx_client remains owned by your application.
Client options
| Option | Behavior |
|---|---|
access_token |
Token or callable; async callables work with AsyncWiseClient. Defaults to WISE_ACCESS_TOKEN; False disables fallback. |
environment |
SANDBOX by default; also PRODUCTION, SANDBOX_MTLS, PRODUCTION_MTLS or an environment with api and cards HTTPS URLs. |
timeout |
HTTPX per-phase timeout; 60 seconds by default. A supplied client's timeout is retained unless overridden. |
max_retries |
Up to two retries for eligible reads by default. Writes and OAuth exchanges never retry. |
httpx_client |
Custom httpx.Client / httpx.AsyncClient, including mTLS configuration. |
external_correlation_id |
Sets X-External-Correlation-Id for request tracing. |
client_id, client_secret |
HTTP Basic credentials for the generated OAuth token endpoint only. |
Use request_options for per-call headers, query parameters and timeout settings.
client.<resource>.with_raw_response provides HTTP metadata. HTTP failures raise
ApiError; inspect status_code, body and headers without logging sensitive data.
Helpers and models
Generated Pydantic models are exported from wise_sdk. Python integer IDs retain
their precision. Date-time request parameters use timezone-aware datetime values.
Wise amounts use major currency units; use decimal arithmetic for calculations.
WiseOAuth/AsyncWiseOAuthexpose four OAuth grants and authorization URL helpers.TokenManager/AsyncTokenManagercoordinate token acquisition and persistence within one instance.create_mtls_context()loads a client certificate into a verified SSL context.iter_recipients(),iter_activities()anditer_transfers()fetch lazily; async variants start withasync_iter_.verify_webhook_signature()verifies raw webhook bytes; installpip install 'wise-sdk[webhooks]'to use it.get_sca_challenge()detects documented SCA approval headers.
Documentation
Authentication · Endpoint map · API details · Webhooks · Release notes
Generated from the official 2026Q3 specification with Fern. Account permissions, regional restrictions and partner onboarding determine which endpoints you can use.
Metadata
Release files for wise-sdk 0.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| wise_sdk-0.1.1.tar.gz | 496.0 kB | With provenance | Details for wise_sdk-0.1.1.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| wise_sdk-0.1.1-py3-none-any.whl | Python 3 | none | any | Details for wise_sdk-0.1.1-py3-none-any.whl |
Total release size: 1.8 MB
Release files / wise_sdk-0.1.1.tar.gz
| Download URL | wise_sdk-0.1.1.tar.gz |
|---|---|
| Size | 496.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e67c42bb012f4e67e3d9985b57b08e339dc7250946e056ef77bd61b06e260d73
|
|
BLAKE2b-256 checksum How to use checksums |
7341ae264e0a4b7af48b270fd07dfd9e1545f7d83bcbe8e580bd956b57f96470
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 13, 2026.
Transparency logRelease files / wise_sdk-0.1.1-py3-none-any.whl
| Download URL | wise_sdk-0.1.1-py3-none-any.whl |
|---|---|
| Size | 1.3 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
8c827a0f925b1f1b3e7041d7cf5f662739a292de2737d5ae062430d298f644e8
|
|
BLAKE2b-256 checksum How to use checksums |
537a04e41069c86425ff1b13231c36daf0c0c99427f4fcf3d121005cdde857b8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 13, 2026.
Transparency logSecurity for wise-sdk 0.1.1
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.
Full provenance
Both files in this release have been uploaded with provenance metadata.
Attestation for wise_sdk-0.1.1.tar.gz
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 13, 2026.
Transparency logA 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.