Skip to main content

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 / AsyncWiseOAuth expose four OAuth grants and authorization URL helpers.
  • TokenManager / AsyncTokenManager coordinate token acquisition and persistence within one instance.
  • create_mtls_context() loads a client certificate into a verified SSL context.
  • iter_recipients(), iter_activities() and iter_transfers() fetch lazily; async variants start with async_iter_.
  • verify_webhook_signature() verifies raw webhook bytes; install pip 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.

Download files

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

Source Distribution

wise_sdk-0.1.0.tar.gz (495.9 kB view details)

Uploaded Source

Built Distribution

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

wise_sdk-0.1.0-py3-none-any.whl (1.3 MB view details)

Uploaded Python 3

File details

Details for the file wise_sdk-0.1.0.tar.gz.

File metadata

  • Download URL: wise_sdk-0.1.0.tar.gz
  • Upload date:
  • Size: 495.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for wise_sdk-0.1.0.tar.gz
Algorithm Hash digest
SHA256 d4b6fe71576f9d00cc4bac1cce3449c621e88b897428213d93662202e76d2b64
MD5 3adbc2664ee809f9af8e6b4ebc4a5662
BLAKE2b-256 8debfeee1055318377889c4c9bd5616d95017255da5a46b88012f77bf3571bb9

See more details on using hashes here.

Provenance

The following attestation bundles were made for wise_sdk-0.1.0.tar.gz:

Publisher: release.yml on MMZaini/wise-sdk

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file wise_sdk-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: wise_sdk-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 1.3 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for wise_sdk-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 35c970b231e7aa4d512daba3b29e19946f2efb6db4d455ae5469222800172bf0
MD5 ef08f611c030364baeb62f4a59300d43
BLAKE2b-256 e1fa94774a368c19cd73464004f7523a3117518a852c52106f0bb356612b42eb

See more details on using hashes here.

Provenance

The following attestation bundles were made for wise_sdk-0.1.0-py3-none-any.whl:

Publisher: release.yml on MMZaini/wise-sdk

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

0.1.1

2 files

This release

0.1.0 This release

2 files

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