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.1.tar.gz (496.0 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.1-py3-none-any.whl (1.3 MB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: wise_sdk-0.1.1.tar.gz
  • Upload date:
  • Size: 496.0 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.1.tar.gz
Algorithm Hash digest
SHA256 e67c42bb012f4e67e3d9985b57b08e339dc7250946e056ef77bd61b06e260d73
MD5 ff6c4a6c92d16ac2d0f05ea5db865072
BLAKE2b-256 7341ae264e0a4b7af48b270fd07dfd9e1545f7d83bcbe8e580bd956b57f96470

See more details on using hashes here.

Provenance

The following attestation bundles were made for wise_sdk-0.1.1.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.1-py3-none-any.whl.

File metadata

  • Download URL: wise_sdk-0.1.1-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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 8c827a0f925b1f1b3e7041d7cf5f662739a292de2737d5ae062430d298f644e8
MD5 90a32b8728ec2afc939073162ce101d7
BLAKE2b-256 537a04e41069c86425ff1b13231c36daf0c0c99427f4fcf3d121005cdde857b8

See more details on using hashes here.

Provenance

The following attestation bundles were made for wise_sdk-0.1.1-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

This release

0.1.1 This release

2 files

0.1.0

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