Skip to main content

SDK Python officiel pour l'API Wouaka - Scoring crédit et KYC pour l'Afrique de l'Ouest

Project description

Wouaka Python SDK

SDK Python officiel pour l'API Wouaka - Solutions de scoring crédit et vérification KYC pour l'Afrique de l'Ouest.

Installation

pip install wouaka

Ou depuis les sources:

git clone https://github.com/wouaka/wouaka-python-sdk.git
cd wouaka-python-sdk
pip install -e .

Configuration

from wouaka import WouakaClient

# Initialiser le client avec votre clé API
client = WouakaClient(
    api_key="wka_live_votre_cle_api",
    environment="production"  # ou "sandbox" pour les tests
)

Fonctionnalités

1. Vérification KYC (WouakaVerify)

Vérifiez l'identité des clients avec détection de liveness et OCR intelligent.

# Vérifier un document d'identité
result = client.kyc.verify(
    document_image="/path/to/cni.jpg",
    document_type="national_id",
    country="CI"  # Côte d'Ivoire
)

print(f"Statut: {result['status']}")
print(f"Nom: {result['data']['full_name']}")
print(f"Score d'authenticité: {result['authenticity_score']}")

2. Évaluation IEA (WouakaScore)

Calculez l'Indice d'Évaluabilité Africain pour évaluer le risque de crédit.

# Évaluer une entreprise
evaluation = client.iea.evaluate(
    business_name="Boulangerie Moderne SARL",
    business_type="sme",
    location={
        "latitude": 5.3599,
        "longitude": -4.0083,
        "address": "Cocody Angré, Abidjan"
    },
    manager_info={
        "kyc_verification_id": "kyc_abc123"  # Optionnel
    }
)

print(f"Score IEA: {evaluation['iea_score']}/100")
print(f"Décision: {evaluation['recommendation']}")
print(f"ISI: {evaluation['isi_score']}")
print(f"ISS: {evaluation['iss_score']}")
print(f"IRM: {evaluation['irm_score']}")

3. Audit TrustLink (WouakaAtlas)

Auditez des projets avec analyse satellite et données de terrain.

# Créer un audit de projet
audit = client.trustlink.create_audit(
    project_name="Construction Immeuble R+3",
    project_type="real_estate",
    location={
        "latitude": 5.3599,
        "longitude": -4.0083
    },
    declared_value=50000000,  # FCFA
    satellite_images={
        "before": "/path/to/before.jpg",
        "after": "/path/to/after.jpg"
    }
)

print(f"Score de conformité: {audit['compliance_score']}")
print(f"Risques détectés: {audit['risks_detected']}")

Gestion des erreurs

from wouaka.exceptions import (
    WouakaAPIError,
    InvalidAPIKeyError,
    QuotaExceededError,
    InvalidDocumentError
)

try:
    result = client.kyc.verify(document_image="invalid.jpg")
except InvalidDocumentError as e:
    print(f"Document invalide: {e.message}")
except QuotaExceededError as e:
    print(f"Quota épuisé. Limite: {e.quota_limit}")
except WouakaAPIError as e:
    print(f"Erreur API: {e.status_code} - {e.message}")

Webhooks

Recevez des notifications en temps réel pour les événements importants.

from wouaka.webhooks import verify_signature

@app.route('/webhooks/wouaka', methods=['POST'])
def handle_webhook():
    payload = request.data
    signature = request.headers.get('X-Wouaka-Signature')
    
    # Vérifier la signature
    if not verify_signature(payload, signature, webhook_secret):
        return 'Invalid signature', 401
    
    event = request.json
    
    if event['type'] == 'kyc.verified':
        # Traiter la vérification KYC complétée
        print(f"KYC vérifié: {event['data']['verification_id']}")
    
    elif event['type'] == 'evaluation.completed':
        # Traiter l'évaluation IEA complétée
        print(f"IEA complété: {event['data']['evaluation_id']}")
    
    return 'OK', 200

Exemples avancés

Évaluation en lot

# Évaluer plusieurs entreprises en parallèle
businesses = [
    {"name": "Entreprise A", "location": {...}},
    {"name": "Entreprise B", "location": {...}},
]

results = client.iea.batch_evaluate(businesses)

for result in results:
    print(f"{result['business_name']}: {result['iea_score']}")

Mode offline avec retry automatique

from wouaka import WouakaClient

client = WouakaClient(
    api_key="wka_live_...",
    retry_config={
        "max_retries": 3,
        "backoff_factor": 2,
        "retry_on": [408, 500, 502, 503, 504]
    }
)

Support

Licence

MIT License - Copyright (c) 2025 Wouaka SAS

Project details


Download files

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

Source Distribution

wouaka-1.0.0.tar.gz (20.0 kB view details)

Uploaded Source

Built Distribution

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

wouaka-1.0.0-py3-none-any.whl (14.7 kB view details)

Uploaded Python 3

File details

Details for the file wouaka-1.0.0.tar.gz.

File metadata

  • Download URL: wouaka-1.0.0.tar.gz
  • Upload date:
  • Size: 20.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.14

File hashes

Hashes for wouaka-1.0.0.tar.gz
Algorithm Hash digest
SHA256 fd649248b63b0fd4159eb2c7b01a301ddd0267d6e3aae187924a0adfa5cf99b4
MD5 556c9ac2ecb3efecb72c8f26248e7661
BLAKE2b-256 bc956c6a00382d14180a8416d39c018405ab23de9bdfc73e515ba35b805d22a6

See more details on using hashes here.

File details

Details for the file wouaka-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: wouaka-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 14.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.14

File hashes

Hashes for wouaka-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8652cc8620f429a72abe82b137c67cd3518c9c1ee82302a5e0f0d444e76495d1
MD5 51365fcb234adf7ecee65eeba9459b83
BLAKE2b-256 69dac8ac7d7f22c3a402794873daa31f7a1057cc0acf8970d0d126217998e004

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