> ## 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.

# Modifier un lien

> Met à jour un lien de paiement existant

<Note>
  `PUT /payment-links/{id}/` est également disponible pour un remplacement complet (mêmes champs, tous requis sauf les champs en lecture seule). `merchant` reste en lecture seule dans les deux cas — un lien ne peut jamais être réattribué à un autre marchand.
</Note>


## OpenAPI

````yaml api-reference/openapi.json PATCH /payment-links/{id}/
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:
  /payment-links/{id}/:
    patch:
      tags:
        - Liens de paiement
      summary: Modifier un lien de paiement
      description: >-
        Mise à jour partielle. `merchant` reste en lecture seule — un lien ne
        peut jamais être réattribué à un autre marchand.
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
            format: uuid
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                name:
                  type: string
                  maxLength: 150
                description:
                  type: string
                  maxLength: 255
                amount_type:
                  type: string
                  enum:
                    - FIXED
                    - FREE
                amount:
                  type: string
                  format: decimal
                min_amount:
                  type: string
                  format: decimal
                currency:
                  type: string
                  minLength: 3
                  maxLength: 3
                is_active:
                  type: boolean
                expires_at:
                  type: string
                  format: date-time
                usage_limit:
                  type: integer
                  minimum: 1
            example:
              is_active: false
      responses:
        '200':
          description: Lien mis à jour
          content:
            application/json:
              example:
                id: d2e3f4a5-6b7c-4d8e-9f0a-1b2c3d4e5f6a
                merchant: 6f1e2b3a-8c4d-4a2f-9e1b-2d3c4f5a6b7c
                created_by_member: 4a5b6c7d-8e9f-4a0b-9c1d-2e3f4a5b6c7d
                name: Facture boutique
                description: Paiement en ligne
                amount_type: FIXED
                amount: '15000.00'
                min_amount: null
                currency: XOF
                slug: kx7f2q1a
                is_active: false
                expires_at: null
                usage_limit: 100
                usage_count: 0
                created_at: '2026-08-12T09:00:00Z'
                updated_at: '2026-08-12T09:00:00Z'
        '404':
          description: Lien introuvable
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).

````