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

# Daftar Deposit Travel Rule yang Belum Dicocokkan API

> Lihat deposit masuk yang masih menunggu data Travel Rule dari VASP pengirim, agar Anda bisa mencocokkannya dengan pesan yang dikirim pihak lawan.



Prompt API Daftar Deposit Travel Rule yang Belum Cocok
        Salin prompt ke papan klip



      
      

\<pre>

\`List the inbound deposits of my application that still wait for the originating VASP's Travel Rule data.

Endpoint:
GET https://verification.didit.me/v3/travel-rule/unmatched/

Authentication:
Use the x-api-key header with my Didit API key. A scoped API key needs the transactions privilege.

Which deposits it returns:
\- Inbound transfers whose status is AWAITING_COUNTERPARTY, NOT_ENOUGH_COUNTERPARTY_DATA or COUNTERPARTY_VASP_NOT_FOUND.
\- Only deposits with no received Travel Rule message paired to them and nobody matched by hand.

Query parameters (all optional): the same filters as GET /v3/travel-rule/transfers/ (direction, status, rail, kind, currency, start_date, end_date, counterparty), plus limit (default 50) and offset.

What to read from each row:
\- The same fields as a row of GET /v3/travel-rule/transfers/: id, transaction_id, txn_id, kind, direction, status, rail, asset, amount, originator_vasp, beneficiary_vasp, wallets, memos, matched_transaction_id, deadline_at, created_at.
\- transaction_id is the deposit to pass as {transaction_uuid} to POST /v3/travel-rule/unmatched/{transaction_uuid}/match/.

Failure modes:
\- 400 - a filter value is not valid, for example {"status": ["Unknown value(s): awaiting."]}.
\- 401 - invalid API key.
\- 403 - the key lacks the transactions privilege.

Full guide: /transaction-monitoring/travel-rule.`

\</pre>



      
      

Tempel ke

## Kapan digunakanDeposit masuk dapat sampai ke dompet Anda sebelum data Travel Rule dari VASP pengirim sampai ke Didit.
Sampai data itu tiba, deposit tersebut menunggu.
Tampilkan deposit yang menunggu untuk menemukan deposit yang perlu Anda selesaikan.Ketika data sudah tiba sebagai pesan yang diterima terpisah, pasangkan keduanya dengan [Cocokkan deposit yang belum cocok](https://docs.didit.me/id/management-api/travel-rule/match-unmatched-deposit.md).## Permintaan```bash theme={null}
curl "https://verification.didit.me/v3/travel-rule/unmatched/" \
  -H "x-api-key: YOUR_API_KEY"
```## Catatan- Baris dan filter sama seperti di [Daftar transfer Travel Rule](https://docs.didit.me/id/management-api/travel-rule/list-transfers.md), terbaru lebih dulu.
- Deposit keluar dari daftar ketika pesan yang diterima dipasangkan dengannya, ketika Anda mencocokkannya secara manual, atau ketika statusnya berpindah ke tahap berikutnya.
- Daftar kosong untuk aplikasi yang tidak memiliki transfer Travel Rule.## Terkait- [Cocokkan deposit yang belum cocok](https://docs.didit.me/id/management-api/travel-rule/match-unmatched-deposit.md)
- [Travel Rule](https://docs.didit.me/id/transaction-monitoring/travel-rule.md)


## OpenAPI

````yaml id/openapi-25.json GET /v3/travel-rule/unmatched/
openapi: 3.0.0
info:
  version: 3.0.0
  title: Didit Verification API
  description: API Verifikasi Identitas. Lakukan autentikasi dengan header x-api-key.
servers:
  - url: https://verification.didit.me
security: []
tags: []
paths:
  /v3/travel-rule/unmatched/:
    get:
      tags:
        - Travel Rule
      summary: Daftar setoran Travel Rule yang belum cocok
      description: >-
        Deposit masuk yang masih menunggu data Travel Rule VASP pengirim:
        transfer mereka adalah `AWAITING_COUNTERPARTY`,
        `NOT_ENOUGH_COUNTERPARTY_DATA`, atau `COUNTERPARTY_VASP_NOT_FOUND`,
        tidak ada pesan masuk yang dipasangkan dengannya, dan tidak ada yang
        mencocokkannya secara manual. Baris dan filternya sama seperti di `GET
        /v3/travel-rule/transfers/`, terbaru terlebih dahulu, dipaginasi dengan
        `limit` (default 50) dan `offset`. Pasangkan deposit dengan pesan yang
        dikirim VASP pengirim menggunakan `POST
        /v3/travel-rule/unmatched/{transaction_uuid}/match/`.
      operationId: listUnmatchedTravelRuleDeposits
      parameters:
        - name: direction
          in: query
          required: false
          schema:
            type: string
          description: >-
            INBOUND, OUTBOUND, atau keduanya dipisahkan koma. Peka huruf
            besar/kecil.
        - name: status
          in: query
          required: false
          schema:
            type: string
          description: Satu atau lebih status transfer, dipisahkan koma.
        - name: rail
          in: query
          required: false
          schema:
            type: string
          description: >-
            Satu atau lebih dari INTERNAL, TRP, GTR, TRUST, VERIFYVASP, SYGNA,
            EMAIL, TEST_VASP, dipisahkan koma.
        - name: kind
          in: query
          required: false
          schema:
            type: string
          description: withdrawal, deposit, atau message, dipisahkan koma.
        - name: currency
          in: query
          required: false
          schema:
            type: string
          description: Mata uang transaksi, tidak peka huruf besar/kecil.
        - name: start_date
          in: query
          required: false
          schema:
            type: string
            format: date
          description: >-
            Transfer yang dibuat pada atau setelah tanggal ini (UTC),
            YYYY-MM-DD.
        - name: end_date
          in: query
          required: false
          schema:
            type: string
            format: date
          description: >-
            Transfer yang dibuat pada atau sebelum tanggal ini (UTC),
            YYYY-MM-DD.
        - name: counterparty
          in: query
          required: false
          schema:
            type: string
            format: uuid
          description: >-
            `id` entri direktori atau anggota jaringan Didit dari GET
            /v3/travel-rule/vasps/: transfer Anda dengan pihak lawan tersebut.
            Nilai yang bukan id yang valid menghasilkan 400.
        - name: limit
          in: query
          required: false
          schema:
            type: integer
            minimum: 1
            maximum: 1000000
          description: Ukuran halaman, nilai default-nya 50.
        - name: offset
          in: query
          required: false
          schema:
            type: integer
            minimum: 0
            maximum: 1000000
          description: Baris yang akan dilewati.
      responses:
        '200':
          description: Satu halaman deposit yang tidak cocok.
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: integer
                  next:
                    type: string
                    nullable: true
                  previous:
                    type: string
                    nullable: true
                  results:
                    type: array
                    items:
                      $ref: '#/components/schemas/TravelRuleTransferRow'
              example:
                count: 1
                next: null
                previous: null
                results:
                  - id: 7d3a1c55-0b9e-4d52-8a3c-1f6e2b9d4a08
                    transaction_id: c41f9b2e-5a8d-4e0c-9f17-3b6d8a2e5c91
                    txn_id: dep-2026-10-20-0007
                    txn_date: '2026-10-19T08:41:12Z'
                    kind: deposit
                    direction: INBOUND
                    status: AWAITING_COUNTERPARTY
                    rail: TRP
                    asset: ETH
                    amount: '1.25'
                    originator_vasp: ''
                    beneficiary_vasp: Example Counterparty VASP
                    originator_wallet: '0x77ccff0cc624a53cd8b8d8703ced826710211ec7'
                    beneficiary_wallet: '0xede2d7e4f5b097e6391ab6bbcf2f47a53f4778cb'
                    originator_memo: ''
                    beneficiary_memo: ''
                    originator_wallet_type: vasp
                    beneficiary_wallet_type: vasp
                    matched_transaction_id: null
                    deadline_at: null
                    created_at: '2026-10-19T08:41:13Z'
        '400':
          description: Nilai filter tidak valid.
          content:
            application/json:
              example:
                start_date:
                  - Use the YYYY-MM-DD format.
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
      security:
        - ApiKeyAuth: []
      x-codeSamples:
        - lang: python
          label: Python
          source: |-
            from didit import Didit

            # Reads DIDIT_API_KEY.
            client = Didit()

            for item in client.travel_rule.unmatched_deposits.list():
                print(item)
        - lang: javascript
          label: Node.js
          source: >-
            import Didit from "@didit-protocol/sdk-node";


            // Reads DIDIT_API_KEY.

            const didit = new Didit();


            for await (const item of didit.travelRule.unmatchedDeposits.list())
            {
              console.log(item);
            }
        - lang: go
          label: Go
          source: "ctx := context.Background()\n// Reads DIDIT_API_KEY.\nclient := didit.NewClient()\n\niter := client.TravelRule.UnmatchedDeposits.ListAutoPaging(ctx, didit.TravelRuleUnmatchedDepositsListParams{})\nfor iter.Next() {\n\tfmt.Printf(\"%+v\\n\", iter.Current())\n}\nif err := iter.Err(); err != nil {\n\tlog.Fatal(err)\n}"
        - lang: java
          label: Java
          source: |-
            import me.didit.Didit;

            // Reads DIDIT_API_KEY.
            Didit client = new Didit();

            for (var item : client.travelRule().unmatchedDeposits().list()) {
                System.out.println(item);
            }
        - lang: php
          label: PHP
          source: |-
            <?php

            require 'vendor/autoload.php';

            use Didit\DiditClient;

            // Reads DIDIT_API_KEY.
            $didit = new DiditClient();

            foreach ($didit->travelRule->unmatchedDeposits->list() as $item) {
                print_r($item->toArray());
            }
        - lang: ruby
          label: Ruby
          source: |-
            require "didit"

            # Reads DIDIT_API_KEY.
            didit = Didit::Client.new

            didit.travel_rule.unmatched_deposits.list.auto_paging_each do |item|
              puts item.to_h
            end
        - lang: csharp
          label: .NET
          source: >-
            using System;

            using System.Text.Json;

            using Didit;


            // Reads DIDIT_API_KEY.

            using var client = new DiditClient();


            await foreach (var item in await
            client.TravelRule.UnmatchedDeposits.ListAsync())

            {
                Console.WriteLine(JsonSerializer.Serialize(item));
            }
components:
  schemas:
    TravelRuleTransferRow:
      type: object
      description: >-
        Satu transfer Travel Rule seperti yang ditampilkan dalam daftar
        transfer: hanya nama VASP, dompet, dan memo, tanpa data pribadi pengirim
        atau penerima.
      properties:
        id:
          type: string
          format: uuid
          description: id transfer.
        transaction_id:
          type: string
          format: uuid
          description: Transaksi Didit yang terkait dengan transfer tersebut.
        txn_id:
          type: string
          nullable: true
          description: >-
            ID Anda sendiri untuk transaksi tersebut. Transfer yang dicatat
            Didit untuk Anda, seperti transfer masuk Didit Test VASP, membawa ID
            yang dibuat secara otomatis.
        txn_date:
          type: string
          format: date-time
        kind:
          type: string
          enum:
            - withdrawal
            - deposit
            - message
          description: >-
            withdrawal: keluar. message: transfer masuk yang dibuat oleh jalur
            berdasarkan pesan pihak lawan (pertanyaan TRP, bagian masuk
            INTERNAL, atau pesan GTR, VerifyVASP, atau Sygna Bridge). deposit:
            transfer masuk lainnya.
        direction:
          type: string
          enum:
            - INBOUND
            - OUTBOUND
        status:
          type: string
          enum:
            - AWAITING_COUNTERPARTY
            - ON_HOLD
            - COMPLETED
            - FINISHED
            - CANCELLED
            - EXPIRED
            - COUNTERPARTY_MISMATCHED_DATA
            - COUNTERPARTY_VASP_NOT_FOUND
            - COUNTERPARTY_VASP_NOT_REACHABLE
            - UNCONFIRMED_OWNERSHIP
            - COUNTERPARTY_VASP_GENERAL_DECLINE
            - NOT_ENOUGH_COUNTERPARTY_DATA
            - NOT_APPLICABLE
        reason:
          type: string
          description: >-
            Alasan transfer `COUNTERPARTY_VASP_NOT_FOUND` atau
            `COUNTERPARTY_VASP_NOT_REACHABLE` tertahan, nilai yang sama dengan
            `reason` transfer itu sendiri, sehingga daftar tersebut membedakan
            email kepatuhan yang dikembalikan dari pihak lawan tanpa rute tanpa
            harus membuka setiap transfer. `""` untuk status lainnya. Lihat
            [Mengapa transfer
            tertahan](/id/transaction-monitoring/travel-rule#mengapa-transfer-macet).
        rail:
          type: string
          nullable: true
          enum:
            - INTERNAL
            - TRP
            - GTR
            - TRUST
            - VERIFYVASP
            - SYGNA
            - EMAIL
            - TEST_VASP
            - null
        asset:
          type: string
          description: Mata uang transaksi.
        amount:
          type: string
          description: Jumlah sebagai desimal biasa, misalnya "1.25".
        originator_vasp:
          type: string
          description: >-
            Keluar: nama resmi VASP Anda. Masuk: nama pihak lawan, dari entri
            direktorinya, anggota jaringan Didit, pengirim TRP, Didit Test VASP,
            atau nama yang dinyatakan transfer. Kosong jika tidak ada yang
            diketahui.
        beneficiary_vasp:
          type: string
          description: >-
            Keluar: nama pihak lawan, ditentukan dengan cara yang sama. Masuk:
            nama resmi VASP Anda.
        originator_wallet:
          type: string
        beneficiary_wallet:
          type: string
        originator_memo:
          type: string
          description: Memo atau tag tujuan, kosong pada rantai yang tidak memilikinya.
        beneficiary_memo:
          type: string
        originator_wallet_type:
          type: string
          enum:
            - vasp
            - self_hosted
            - own
          description: >-
            vasp, self_hosted (dinyatakan unhosted) atau own (dompet yang
            dicatat oleh buku alamat Anda sebagai milik Anda). Sisi Anda sendiri
            selalu vasp.
        beneficiary_wallet_type:
          type: string
          enum:
            - vasp
            - self_hosted
            - own
        matched_transaction_id:
          type: string
          format: uuid
          nullable: true
          description: >-
            Sisi lain dari setoran yang Anda cocokkan secara manual dengan
            transfer yang diumumkan.
        deadline_at:
          type: string
          format: date-time
          nullable: true
          description: >-
            Kapan transfer kedaluwarsa jika masih menunggu pihak lawannya.
            Ditetapkan pada setiap transfer yang Anda buat dengan `POST
            /v3/transactions/` yang memerlukan pertukaran, keluar atau masuk.
            Bernilai null di bawah ambang batas, pada pembayaran Lightning yang
            tidak berlaku Travel Rule, dan pada transfer masuk yang dibuat Didit
            saat pihak lawan menghubungi Anda (permintaan TRP masuk, pesan
            jaringan, atau bagian masuk INTERNAL).
        created_at:
          type: string
          format: date-time
  responses:
    Unauthorized:
      description: Tidak diotorisasi
      content:
        application/json:
          examples:
            Invalid API Key:
              summary: Kunci API tidak valid
              value:
                detail: Invalid API Key.
    Forbidden:
      description: Dilarang
      content:
        application/json:
          examples:
            No Permission:
              summary: Tidak Ada Izin
              value:
                detail: You do not have permission to perform this action.
            Not Enough Credits:
              summary: Kredit Tidak Cukup
              value:
                error: >-
                  You don't have enough credits to perform this request. Please
                  top up at https://business.didit.me
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key
      description: >-
        Kunci API aplikasi Anda, dari Developers -> API keys di Business
        Console. Kunci utama memiliki akses penuh. Kunci bernama dapat diberi
        cakupan: none, read, atau write per sumber daya, dibatasi pada beberapa
        alur kerja atau pada sesi yang disetujui, pada daftar alamat IP, dan
        pada tanggal kedaluwarsa. 401 berarti kuncinya salah, dicabut, atau
        kedaluwarsa; 403 berarti tidak ada kunci yang dikirimkan, kunci tidak
        memiliki akses ke sumber daya atau tindakan ini, atau permintaan datang
        dari alamat di luar daftar IP-nya; 404 pada rute sesi berarti sesi
        berada di luar alur kerja atau status kunci tersebut. Kunci tanpa akses
        media menerima URL gambar, video, dan PDF sebagai null, dan kunci tanpa
        izin tulis sesi menerima tautan sesi dan token sebagai null. Lihat
        https://docs.didit.me/console/api-keys.

````

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