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

# API de suppression groupée de transactions

> Supprimez définitivement des transactions surveillées par UUID ou toutes les transactions de l'application. Un rapport finalisé bloque la suppression.



Prompt de l'API de suppression de transactions en lot
        Copier le prompt dans le presse-papiers



      
      

\<pre>

\`Delete monitored transactions through the Management API.

Endpoint:
DELETE https://verification.didit.me/v3/organization/{organization_id}/application/{application_id}/transactions/delete/

Authentication:
Use the x-api-key header with my Didit API key. The key must carry write:transactions.

Request body — provide one selector:
\{"transaction_uuids": ["abcdef12-3456-7890-abcd-ef1234567890"]}
or
\{"delete_all": true}

Example call:
curl -X DELETE "https://verification.didit.me/v3/organization/{organization_id}/application/{application_id}/transactions/delete/" \
-H "x-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"transaction_uuids": ["abcdef12-3456-7890-abcd-ef1234567890"]}'

Response 204: the selected transactions are deleted.

What is deleted with each transaction:
\- Its parties, tags, notes, payment method links, documents and every stored version of their files.
\- Its rule runs, alerts, provider results, network snapshot and Travel Rule data.
Cases, people and companies stay; their link to the deleted transaction is cleared. Draft regulatory reports stop listing it and are rebuilt without it. Deletion is permanent and cannot be undone.

Failure modes:
\- 400 - no selector supplied: {"transaction_uuids": ["This field is required unless delete_all is true."]}.
\- 409 - at least one selected transaction is listed in a finalized regulatory report. Nothing is deleted. The body has code: in_filed_report and transactions[] with uuid, transaction_id and reports[].
\- 403 - the key cannot delete transactions (requires write:transactions).

After deletion:
Delete the reports named in the 409 response, then repeat this request. See Delete Report.

WARNING — delete_all: true: deletes every transaction in the application with no confirmation and no undo.

For the full integration shape, see /integration/integration-prompt.`

\</pre>



      
      

Coller dans

Supprimez des transactions surveillées de manière définitive, par UUID ou toutes à la fois.## Ce qui est suppriméUne transaction supprimée entraîne la suppression des enregistrements qui lui appartiennent exclusivement : ses parties, ses tags, ses notes, les liens vers les moyens de paiement, les documents et chaque version stockée de leurs fichiers, les exécutions de règles, les alertes, les résultats des fournisseurs, l'instantané du réseau et les données Travel Rule.Les dossiers, les personnes et les entreprises sont conservés ; leur lien avec la transaction supprimée est effacé. Les rapports réglementaires à l'état de brouillon ne mentionnent plus la transaction supprimée et sont reconstruits sans elle. La suppression est définitive et irréversible.## Sélectionner ce qu'il faut supprimerEnvoyez exactement un sélecteur :| Champ | Type | Description |
| - | - | - |
| `transaction_uuids` | UUID\[] | UUID de transactions Didit à supprimer. Obligatoire sauf si `delete_all` vaut `true`. |
| `delete_all` | boolean | Supprime toutes les transactions de l'application. `transaction_uuids` est ignoré. |> [!WARNING]
>
> `delete_all: true` supprime toutes les transactions de l'application. Aucune étape de confirmation n'est demandée et il n'existe aucun moyen d'annuler l'action.## Bloqué par un rapport finaliséSi une transaction sélectionnée figure dans un rapport réglementaire finalisé, la requête entière renvoie `409` et rien n'est supprimé :```json theme={null}
{
  "detail": "Transactions included in a filed regulatory report cannot be deleted.",
  "code": "in_filed_report",
  "transactions": [
    {
      "uuid": "abcdef12-3456-7890-abcd-ef1234567890",
      "transaction_id": "your-txn-2026-05-17-001",
      "reports": [
        {
          "uuid": "5ec00000-0000-4000-8000-000000000007",
          "report_number": "SAR-0001",
          "report_type": "SAR",
          "case_uuid": "c1a5e000-0000-4000-8000-000000000001"
        }
      ]
    }
  ]
}
```Supprimez chaque rapport avec [Supprimer le rapport](https://docs.didit.me/fr/management-api/regulatory-reports/delete.md), puis relancez cette requête. Si vous avez sélectionné plusieurs transactions, retirez celles qui sont bloquées ou supprimez d'abord leurs rapports.## Voir aussi- [Lister les transactions](https://docs.didit.me/fr/management-api/transactions/list.md)
- [Récupérer une transaction](https://docs.didit.me/fr/management-api/transactions/get.md)
- [Supprimer le rapport](https://docs.didit.me/fr/management-api/regulatory-reports/delete.md)


## OpenAPI

````yaml fr/openapi-25.json DELETE /v3/organization/{organization_id}/application/{application_id}/transactions/delete/
openapi: 3.0.0
info:
  version: 3.0.0
  title: Didit Verification API
  description: API de vérification d'identité. Authentifiez-vous avec l'en-tête x-api-key.
servers:
  - url: https://verification.didit.me
security: []
tags: []
paths:
  /v3/organization/{organization_id}/application/{application_id}/transactions/delete/:
    delete:
      tags:
        - Transactions
      summary: Supprimer des transactions par lot
      description: >-
        Supprimez définitivement une ou plusieurs transactions. Sélectionnez-les
        avec `transaction_uuids`, ou supprimez chaque transaction de
        l'application avec `delete_all: true`.


        Une transaction supprimée disparaît avec les enregistrements qui lui
        sont propres : ses parties, tags, notes, liens de moyen de paiement,
        documents et chaque version stockée de leurs fichiers, exécutions de
        règles, alertes, résultats de fournisseurs, instantané de réseau et
        données Travel Rule. Les dossiers, personnes et entreprises sont
        conservés ; leur lien vers la transaction supprimée est effacé. Les
        projets de rapports réglementaires cessent de l'inclure et sont
        reconstruits sans elle. La suppression est définitive et irréversible ;
        il n'existe aucun endpoint d'annulation.


        Si l'une des transactions sélectionnées figure dans un rapport
        réglementaire finalisé, l'ensemble de la requête est refusé avec
        l'erreur `409` et rien n'est supprimé. Le corps utilise `code:
        in_filed_report` et indique chaque transaction ainsi que les rapports
        qui la mentionnent. Supprimez ces rapports, puis renouvelez la requête.
      operationId: batch_delete_transactions
      parameters:
        - name: organization_id
          in: path
          required: true
          schema:
            type: string
            format: uuid
          description: UUID de l'organisation.
        - name: application_id
          in: path
          required: true
          schema:
            type: string
            format: uuid
          description: UUID de l'application.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              oneOf:
                - title: Selected transactions
                  required:
                    - transaction_uuids
                  properties:
                    transaction_uuids:
                      type: array
                      items:
                        type: string
                        format: uuid
                      description: >-
                        UUID de transaction Didit à supprimer. Requis sauf si
                        `delete_all` est vrai.
                      minItems: 1
                    delete_all:
                      type: boolean
                      enum:
                        - false
                      default: false
                      description: >-
                        Omettez ou envoyez `false` lorsque vous sélectionnez des
                        transactions avec `transaction_uuids`.
                - title: All transactions
                  required:
                    - delete_all
                  properties:
                    delete_all:
                      type: boolean
                      enum:
                        - true
                      description: >-
                        Supprimer chaque transaction de l'application.
                        `transaction_uuids` est ignoré.
                    transaction_uuids:
                      type: array
                      items:
                        type: string
                        format: uuid
                      description: Ignoré lorsque `delete_all` est true.
            examples:
              Selected transactions:
                value:
                  transaction_uuids:
                    - abcdef12-3456-7890-abcd-ef1234567890
                    - 12345678-90ab-cdef-1234-567890abcdef
              All transactions:
                value:
                  delete_all: true
      responses:
        '204':
          description: Transactions sélectionnées supprimées.
        '400':
          description: Aucun sélecteur de transaction n'a été fourni.
          content:
            application/json:
              schema:
                type: object
                properties:
                  transaction_uuids:
                    type: array
                    items:
                      type: string
              example:
                transaction_uuids:
                  - This field is required unless delete_all is true.
        '403':
          description: >-
            La clé API ne peut pas supprimer de transactions. L'endpoint
            requiert `write:transactions`.
          content:
            application/json:
              schema:
                type: object
                properties:
                  detail:
                    type: string
        '409':
          description: >-
            Au moins une transaction sélectionnée figure dans un rapport
            réglementaire finalisé. Rien n'est supprimé.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InFiledReportError'
      security:
        - ApiKeyAuth: []
      x-codeSamples:
        - lang: curl
          label: curl (selected transactions)
          source: >-
            curl -X DELETE
            'https://verification.didit.me/v3/organization/11111111-2222-3333-4444-555555555555/application/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee/transactions/delete/'
            \
              -H 'x-api-key: YOUR_API_KEY' \
              -H 'Content-Type: application/json' \
              -d '{"transaction_uuids": ["abcdef12-3456-7890-abcd-ef1234567890"]}'
        - lang: python
          label: Python
          source: |-
            from didit import Didit

            # Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID
            # and DIDIT_APPLICATION_ID.
            client = Didit()

            client.transactions.batch_delete(
                body={
                    "transaction_uuids": ["abcdef12-3456-7890-abcd-ef1234567890", "12345678-90ab-cdef-1234-567890abcdef"],
                },
            )
        - lang: javascript
          label: Node.js
          source: |-
            import Didit from "@didit-protocol/sdk-node";

            // Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID
            // and DIDIT_APPLICATION_ID.
            const didit = new Didit();

            await didit.transactions.batchDelete({
              transaction_uuids: ["abcdef12-3456-7890-abcd-ef1234567890", "12345678-90ab-cdef-1234-567890abcdef"],
            });
        - lang: java
          label: Java
          source: >-
            import java.util.List;

            import me.didit.Didit;

            import me.didit.types.TransactionsBatchDeleteParams;


            // Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID

            // and DIDIT_APPLICATION_ID.

            Didit client = new Didit();


            client.transactions().batchDelete(TransactionsBatchDeleteParams.builder()
                    .putAdditionalProperty("transaction_uuids", List.of("abcdef12-3456-7890-abcd-ef1234567890", "12345678-90ab-cdef-1234-567890abcdef"))
                    .build());
        - lang: php
          label: PHP
          source: |-
            <?php

            require 'vendor/autoload.php';

            use Didit\DiditClient;

            // Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID
            // and DIDIT_APPLICATION_ID.
            $didit = new DiditClient();

            $didit->transactions->batchDelete([
                'transaction_uuids' => ['abcdef12-3456-7890-abcd-ef1234567890', '12345678-90ab-cdef-1234-567890abcdef'],
            ]);
        - lang: ruby
          label: Ruby
          source: |-
            require "didit"

            # Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID
            # and DIDIT_APPLICATION_ID.
            didit = Didit::Client.new

            didit.transactions.batch_delete(
              body: {
                transaction_uuids: ["abcdef12-3456-7890-abcd-ef1234567890", "12345678-90ab-cdef-1234-567890abcdef"],
              }
            )
        - lang: csharp
          label: .NET
          source: >-
            using System;

            using Didit;


            // Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID

            // and DIDIT_APPLICATION_ID.

            using var client = new DiditClient();


            await client.Transactions.BatchDeleteAsync(new
            TransactionsBatchDeleteParams

            {
                TransactionUuids = new string[] { "abcdef12-3456-7890-abcd-ef1234567890", "12345678-90ab-cdef-1234-567890abcdef" },
            });
components:
  schemas:
    InFiledReportError:
      type: object
      description: >-
        La suppression est refusée car les données sélectionnées figurent dans
        un rapport réglementaire finalisé. Rien n'est supprimé. Supprimez le
        rapport, puis réessayez la requête.
      required:
        - detail
        - code
      properties:
        detail:
          type: string
        code:
          type: string
          enum:
            - in_filed_report
          description: >-
            Code d'erreur stable pour une suppression bloquée par un rapport
            réglementaire finalisé.
        reports:
          type: array
          items:
            $ref: '#/components/schemas/FiledRegulatoryReport'
          description: >-
            Rapports qui bloquent la suppression d'une personne, d'une
            entreprise, d'un dossier ou d'une session.
        transactions:
          type: array
          items:
            $ref: '#/components/schemas/FiledReportTransaction'
          description: >-
            Transactions qui bloquent la suppression d'une transaction, chacune
            accompagnée des rapports qui la répertorient.
    FiledRegulatoryReport:
      type: object
      description: Un rapport réglementaire finalisé qui empêche la suppression demandée.
      required:
        - uuid
        - report_number
        - report_type
        - case_uuid
      properties:
        uuid:
          type: string
          format: uuid
          description: UUID du rapport.
        report_number:
          type: string
          description: Numéro de rapport affiché dans la Console (par exemple, SAR-0001).
        report_type:
          type: string
          enum:
            - SAR
            - STR
            - CTR
            - TTR
            - UTR
            - IFT
            - CBR
            - TFR
          description: Type de rapport réglementaire.
        case_uuid:
          type: string
          format: uuid
          description: Dossier auquel appartient le rapport.
    FiledReportTransaction:
      type: object
      description: >-
        Une transaction qui ne peut pas être supprimée car un rapport
        réglementaire finalisé la répertorie.
      required:
        - uuid
        - transaction_id
        - reports
      properties:
        uuid:
          type: string
          format: uuid
          description: UUID de transaction Didit.
        transaction_id:
          type: string
          description: >-
            L'identifiant de la transaction fourni lors de la création de la
            transaction.
        reports:
          type: array
          items:
            $ref: '#/components/schemas/FiledRegulatoryReport'
          description: Rapports finalisés répertoriant cette transaction.
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key
      description: >-
        La clé API de votre application, issue de Développeurs -> Clés API dans
        la Business Console. La clé principale dispose d'un accès complet. Une
        clé nommée peut être restreinte : aucun, lecture ou écriture par
        ressource, limitée à certains workflows ou aux sessions approuvées, à
        une liste d'adresses IP et à une date d'expiration. 401 signifie que la
        clé est incorrecte, révoquée ou expirée ; 403 signifie qu'aucune clé n'a
        été envoyée, que la clé n'a pas accès à cette ressource ou action, ou
        que la requête provient d'une adresse hors de sa liste d'IP ; 404 sur
        une route de session signifie que la session est hors des workflows ou
        des statuts de la clé. Une clé sans accès aux médias reçoit les URL
        d'images, de vidéos et de PDF à null, et une clé sans accès en écriture
        aux sessions reçoit les liens et tokens de session à null. Voir
        https://docs.didit.me/console/api-keys.

````

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