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

# Créer un lien de paiement

> Créez une page de paiement hébergée par BizConnectPay.

Cet endpoint est réservé aux comptes `BUSINESS` dont le KYB est approuvé.

```bash cURL theme={null}
curl --request POST \
  --url https://api.bizconnectpay.com/api/v1/payment-links \
  --header 'Authorization: Bearer <access_token>' \
  --header 'Content-Type: application/json' \
  --data '{
    "amount": "12500",
    "currency": "XAF",
    "country": "CM",
    "description": "Facture octobre",
    "max_uses": 1,
    "expires_at": "2026-10-31T23:59:59Z",
    "success_url": "https://example.com/payment/success",
    "failure_url": "https://example.com/payment/failed",
    "metadata": {"client_reference": "INV-2026-1008"}
  }'
```

```json Payload theme={null}
{
  "amount": "12500",
  "currency": "XAF",
  "country": "CM",
  "description": "Facture octobre",
  "max_uses": 1,
  "expires_at": "2026-10-31T23:59:59Z",
  "success_url": "https://example.com/payment/success",
  "failure_url": "https://example.com/payment/failed",
  "metadata": {
    "client_reference": "INV-2026-1008"
  }
}
```

```json 201 Created theme={null}
{
  "success": true,
  "data": {
    "id": "b80736cf-514a-462b-b110-b04c6031b64a",
    "reference": "BCP-LNK-01JACC0N",
    "amount": "12500.0000",
    "currency": "XAF",
    "country": "CM",
    "description": "Facture octobre",
    "status": "ACTIVE",
    "max_uses": 1,
    "use_count": 0,
    "checkout_url": "https://pay.bizconnectpay.com/link/0PKOW1IM14",
    "expires_at": "2026-10-31T23:59:59.000000Z",
    "created_at": "2026-10-20T13:30:00.000000Z"
  },
  "meta": {
    "correlation_id": "b39b6c1d-d682-4f61-8839-93b8a9bd76e7"
  }
}
```


## OpenAPI

````yaml openapi.json POST /payment-links
openapi: 3.1.0
info:
  title: BizConnectPay API
  version: 1.0.0
  description: >-
    API serveur-à-serveur pour les collectes, décaissements, transactions,
    remboursements, liens de paiement et cartes virtuelles.
servers:
  - url: https://api.bizconnectpay.com/api/v1
    description: Passerelle API BizConnectPay
security:
  - bearerAuth: []
tags:
  - name: Authentification
  - name: Services
  - name: Collectes
  - name: Transactions
  - name: Décaissements
  - name: Remboursements
  - name: Liens de paiement
  - name: Porteurs de carte
  - name: Cartes virtuelles
paths:
  /payment-links:
    post:
      tags:
        - Liens de paiement
      summary: Créer un lien de paiement
      operationId: createPaymentLink
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PaymentLinkRequest'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '422':
          $ref: '#/components/responses/ValidationError'
components:
  schemas:
    PaymentLinkRequest:
      type: object
      required:
        - amount
        - country
        - currency
      additionalProperties: false
      properties:
        amount:
          type: number
          exclusiveMinimum: 0
          description: Montant à collecter, avec au plus quatre décimales.
        application_id:
          type:
            - string
            - 'null'
          format: uuid
        country:
          type: string
          minLength: 2
          maxLength: 2
          examples:
            - CM
        currency:
          type: string
          minLength: 3
          maxLength: 3
          examples:
            - XAF
        description:
          type:
            - string
            - 'null'
          maxLength: 1000
        expires_at:
          type:
            - string
            - 'null'
          format: date-time
          description: Date d'expiration future au format ISO 8601.
        failure_url:
          type:
            - string
            - 'null'
          format: uri
          maxLength: 2048
        max_uses:
          type:
            - integer
            - 'null'
          minimum: 1
        metadata:
          type: object
          additionalProperties: true
        success_url:
          type:
            - string
            - 'null'
          format: uri
          maxLength: 2048
    SuccessEnvelope:
      type: object
      properties:
        success:
          type: boolean
          const: true
        data: {}
        meta:
          $ref: '#/components/schemas/Meta'
    ErrorEnvelope:
      type: object
      properties:
        success:
          type: boolean
          const: false
        data:
          type: object
          properties:
            error:
              type: object
              properties:
                code:
                  type: string
                message:
                  type: string
                details:
                  type:
                    - object
                    - array
        meta:
          $ref: '#/components/schemas/Meta'
    Meta:
      type: object
      properties:
        correlation_id:
          type:
            - string
            - 'null'
          format: uuid
  responses:
    Created:
      description: Ressource créée
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/SuccessEnvelope'
    ValidationError:
      description: Payload ou règle métier invalide
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorEnvelope'
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.