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

# Suspend a Customer

> Suspends an active customer. Their cards, wallets, and other resources become unusable. Suspension is managed by you and can be reverted with the activate endpoint. Does not work on closed customers.



## OpenAPI

````yaml POST /customers/{code}/suspend
openapi: 3.1.0
info:
  title: KemyCard API
  version: '1.0'
  description: >
    KemyCard API allows you to issue virtual and physical cards, manage KYC/POA
    verification,

    create crypto wallets, virtual bank accounts, and purchase gift cards.
  contact:
    name: KemyCard API Support
    email: hi@kemycard.com
servers:
  - url: https://api.kemycard.com/v1
    description: Production
security:
  - BearerAuth: []
tags:
  - name: Customers
    description: Manage your customers
  - name: Card Products
    description: Browse the card product catalog
  - name: Cards
    description: Issue and manage cards
  - name: KYC
    description: Identity verification
  - name: POA
    description: Proof of address verification
  - name: Wallets
    description: Crypto wallets
  - name: Virtual Accounts
    description: Virtual bank accounts
  - name: Gift Cards
    description: Gift card catalog and purchases
  - name: Balance
    description: Operational balances and transaction history
  - name: Webhooks
    description: Webhook endpoints and delivery management
paths:
  /customers/{code}/suspend:
    post:
      tags:
        - Customers
      summary: Suspend a customer
      description: >-
        Suspends an active customer. Their cards, wallets, and other resources
        become unusable. Suspension is managed by you and can be reverted with
        the activate endpoint. Does not work on closed customers.
      operationId: suspendCustomer
      parameters:
        - $ref: '#/components/parameters/code'
      responses:
        '200':
          description: Customer suspended
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CustomerSuccessResponse'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/ValidationError'
components:
  parameters:
    code:
      name: code
      in: path
      required: true
      schema:
        type: string
        format: uuid
      description: Resource UUID
  schemas:
    CustomerSuccessResponse:
      type: object
      properties:
        success:
          type: boolean
          example: true
        data:
          $ref: '#/components/schemas/Customer'
        meta:
          $ref: '#/components/schemas/Meta'
    Customer:
      type: object
      properties:
        code:
          type: string
          format: uuid
          example: a1b2c3d4-e5f6-7890-abcd-ef1234567890
        external_reference:
          type: string
          example: user-123
        first_name:
          type: string
          example: John
        last_name:
          type: string
          example: Doe
        email:
          type: string
          example: john@example.com
        phone_country_code:
          type: string
          nullable: true
          description: >-
            International dialing code. `null` only for customers created before
            this field became required
          example: '+33'
        phone:
          type: string
          example: '612345678'
        date_of_birth:
          type: string
          format: date
          example: '1990-05-15'
        address:
          type: string
          example: 123 Main Street
        city:
          type: string
          example: Paris
        state:
          type: string
          example: IDF
        postal_code:
          type: string
          example: '75001'
        country:
          type: string
          example: FRA
        verification_level:
          type: string
          enum:
            - basic
            - verified
            - full
          example: basic
        kyc_status:
          type: string
          enum:
            - not_started
            - pending
            - approved
            - rejected
            - resubmission_requested
          example: not_started
        poa_status:
          type: string
          enum:
            - not_started
            - pending
            - approved
            - rejected
            - resubmission_requested
          example: not_started
        verified_identity:
          type: object
          nullable: true
          description: >
            Identity read on the document during the KYC. `null` until the KYC
            is approved.

            The identity you declared (`first_name`, `last_name`,
            `date_of_birth`) is never overwritten.
          properties:
            first_name:
              type: string
              example: John
            last_name:
              type: string
              example: Doe
            date_of_birth:
              type: string
              format: date
              nullable: true
              example: '1990-05-15'
        identity_mismatch:
          type: boolean
          nullable: true
          description: >
            `true` when the verified identity differs from the identity you
            declared (name or date of birth),

            `false` when they match, `null` until the KYC is approved. Letter
            case, accents, hyphens and

            word order are ignored when comparing names.
          example: false
        status:
          type: string
          enum:
            - active
            - suspended
            - restricted
            - closed
          description: >
            `active` — the customer can be used. `suspended` — set and reverted
            by you through the suspend / activate endpoints.

            `restricted` — set by KemyCard, reversible: lifted only by the
            action given in `restriction_reason`, not by the activate endpoint.

            `closed` — set by KemyCard only, permanent: the customer's status
            and information can no longer be changed.
          example: active
        restriction_reason:
          type: string
          nullable: true
          enum:
            - identity_mismatch
          description: >
            Why the customer is `restricted`. `null` for every other status, and
            reset to `null` once the cause is fixed.

            `identity_mismatch` — the identity you declared differs from the
            verified identity: call `POST /kyc/{customerCode}/synchronize`.
          example: null
        metadata:
          type: object
          nullable: true
        created_at:
          type: string
          format: date-time
        updated_at:
          type: string
          format: date-time
          nullable: true
    Meta:
      type: object
      properties:
        request_id:
          type: string
          example: a4f8e2c1b3d97056
        mode:
          type: string
          enum:
            - test
            - live
          example: test
        timestamp:
          type: string
          format: date-time
    ErrorResponse:
      type: object
      properties:
        success:
          type: boolean
          example: false
        error:
          type: object
          properties:
            code:
              type: string
              example: VALIDATION_ERROR
            message:
              type: string
              example: Missing required fields.
            details:
              type: object
              nullable: true
        meta:
          $ref: '#/components/schemas/Meta'
  responses:
    NotFound:
      description: Resource not found
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
          example:
            success: false
            error:
              code: RESOURCE_NOT_FOUND
              message: Resource not found.
              details: null
    ValidationError:
      description: Validation error
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      description: API key (sk_test_... or sk_live_...)

````

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