> ## Documentation Index
> Fetch the complete documentation index at: https://docs.saspay.me/llms.txt
> Use this file to discover all available pages before exploring further.

# Enregistrer une méthode de retrait

> Mobile money ou virement bancaire — doit être vérifiée par un administrateur avant usage

<Warning>
  Aucune validation croisée serveur ne force les champs pertinents selon `type` : rien n'empêche aujourd'hui de créer une méthode `MOBILE_MONEY` sans `network`/`phone_number`, ou `BANK_TRANSFER` sans coordonnées bancaires. Validez ces champs vous-même côté intégration.
</Warning>

<Note>
  `is_verified` vaut toujours `false` à la création — un administrateur doit vérifier la méthode avant qu'elle puisse servir à un [retrait](/api-reference/wallet/settlements-create).
</Note>


## OpenAPI

````yaml api-reference/openapi.json POST /merchant-payout-methods/
openapi: 3.1.0
info:
  title: SasPay API
  description: >-
    API d'encaissement et de paiement mobile money/carte pour l'Afrique de
    l'Ouest et du Centre. Toutes les routes marchand nécessitent une clé API
    secrète (header Authorization: Bearer sk_...).
  version: 1.0.0
servers:
  - url: https://api.saspay.me/api/v1
security:
  - bearerAuth: []
paths:
  /merchant-payout-methods/:
    post:
      tags:
        - Wallet
      summary: Enregistrer une méthode de retrait
      description: >-
        Aucune validation croisée serveur ne force les champs pertinents selon
        `type` — validez-les vous-même côté intégration.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                type:
                  type: string
                  enum:
                    - MOBILE_MONEY
                    - BANK_TRANSFER
                label:
                  type: string
                  maxLength: 100
                network:
                  type: string
                  format: uuid
                  nullable: true
                  description: Pertinent si type=MOBILE_MONEY
                phone_number:
                  type: string
                  nullable: true
                bank_name:
                  type: string
                  nullable: true
                  description: Pertinent si type=BANK_TRANSFER
                account_holder_name:
                  type: string
                  nullable: true
                account_number:
                  type: string
                  nullable: true
                iban:
                  type: string
                  nullable: true
                swift_bic:
                  type: string
                  nullable: true
                bank_code:
                  type: string
                  nullable: true
                branch_code:
                  type: string
                  nullable: true
              required:
                - type
                - label
            example:
              type: MOBILE_MONEY
              label: MTN Bénin principal
              network: 4c119a2e-aaaa-bbbb-cccc-ddddeeeeffff
              phone_number: '+22997001122'
      responses:
        '201':
          description: Méthode créée — is_verified toujours false à ce stade
          content:
            application/json:
              example:
                id: b3e1c2d4-1111-2222-3333-444455556666
                merchant: 8a1f5c3e-0000-1111-2222-333344445555
                type: MOBILE_MONEY
                label: MTN Bénin principal
                is_active: true
                is_verified: false
                verified_by_admin: null
                verified_at: null
                network: 4c119a2e-aaaa-bbbb-cccc-ddddeeeeffff
                phone_number: '+22997001122'
                bank_name: null
                account_holder_name: null
                account_number: null
                iban: null
                swift_bic: null
                bank_code: null
                branch_code: null
                created_at: '2026-08-12T10:00:00Z'
                updated_at: '2026-08-12T10:00:00Z'
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: sk_live_... / sk_test_...
      description: >-
        Clé API secrète du marchand — header Authorization: Bearer sk_live_xxx
        (ou sk_test_xxx en environnement de test).

````