from didit import Didit
# Reads DIDIT_API_KEY.
client = Didit()
for item in client.travel_rule.unmatched_deposits.list():
print(item)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);
}ctx := context.Background()
// Reads DIDIT_API_KEY.
client := didit.NewClient()
iter := client.TravelRule.UnmatchedDeposits.ListAutoPaging(ctx, didit.TravelRuleUnmatchedDepositsListParams{})
for iter.Next() {
fmt.Printf("%+v\n", iter.Current())
}
if err := iter.Err(); err != nil {
log.Fatal(err)
}import me.didit.Didit;
// Reads DIDIT_API_KEY.
Didit client = new Didit();
for (var item : client.travelRule().unmatchedDeposits().list()) {
System.out.println(item);
}<?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());
}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
endusing 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));
}curl --request GET \
--url https://verification.didit.me/v3/travel-rule/unmatched/ \
--header 'x-api-key: <api-key>'{
"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"
}
]
}매칭되지 않은 Travel Rule 입금 목록 API
Didit에서 Travel Rule 정보가 아직 도착하지 않은 수신 입금을 조회해, 상대 VASP가 보낸 메시지와 각 입금을 매칭할 수 있습니다.
from didit import Didit
# Reads DIDIT_API_KEY.
client = Didit()
for item in client.travel_rule.unmatched_deposits.list():
print(item)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);
}ctx := context.Background()
// Reads DIDIT_API_KEY.
client := didit.NewClient()
iter := client.TravelRule.UnmatchedDeposits.ListAutoPaging(ctx, didit.TravelRuleUnmatchedDepositsListParams{})
for iter.Next() {
fmt.Printf("%+v\n", iter.Current())
}
if err := iter.Err(); err != nil {
log.Fatal(err)
}import me.didit.Didit;
// Reads DIDIT_API_KEY.
Didit client = new Didit();
for (var item : client.travelRule().unmatchedDeposits().list()) {
System.out.println(item);
}<?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());
}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
endusing 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));
}curl --request GET \
--url https://verification.didit.me/v3/travel-rule/unmatched/ \
--header 'x-api-key: <api-key>'{
"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"
}
]
}사용 시기
입금이 발신 VASP의 Travel Rule 데이터가 Didit에 도착하기 전에 지갑에 먼저 도달할 수 있습니다. 그때까지 입금은 대기합니다. 대기 중인 입금을 조회하여 처리해야 할 항목을 찾습니다. 수신 메시지가 별도로 도착한 경우 미매칭 입금 매칭을 사용해 두 항목을 연결합니다.요청
curl "https://verification.didit.me/v3/travel-rule/unmatched/" \
-H "x-api-key: YOUR_API_KEY"
참고 사항
- 행과 필터는 Travel Rule 전송 목록 조회와 같으며, 최신순으로 표시됩니다.
- 수신 메시지가 입금과 연결되거나, 직접 매칭하거나, 상태가 다음 상태로 넘어가면 입금이 목록에서 제외됩니다.
- Travel Rule 전송이 없는 애플리케이션의 경우 목록이 비어 있습니다.
관련 항목
인증
Business Console의 Developers -> API keys에서 발급받은 귀하 애플리케이션의 API 키입니다. 기본 키는 전체 접근 권한을 갖습니다. 이름이 지정된 키는 리소스별 none, read, write 범위로 권한을 제한할 수 있으며 특정 워크플로나 승인된 세션, IP 주소 목록, 만료일 등으로 제한할 수도 있습니다. 401은 키가 잘못되었거나 폐기되었거나 만료되었음을 의미합니다. 403은 키가 전송되지 않았거나, 키에 해당 리소스나 작업에 대한 접근 권한이 없거나, 요청이 허용된 IP 목록 외부 주소에서 발생했음을 의미합니다. 세션 경로에서의 404는 해당 세션이 키의 허용 워크플로 또는 상태 범위를 벗어났음을 의미합니다. 미디어 접근 권한이 없는 키는 이미지, 비디오, PDF URL을 null로 수신하며, 세션 write 권한이 없는 키는 세션 링크와 token을 null로 수신합니다. https://docs.didit.me/console/api-keys 를 참고하십시오.
쿼리 매개변수
INBOUND, OUTBOUND 또는 쉼표로 구분한 두 값입니다. 대소문자를 구분합니다.
하나 이상의 전송 상태(쉼표로 구분)입니다.
INTERNAL, TRP, GTR, TRUST, VERIFYVASP, SYGNA, EMAIL, TEST_VASP 중 하나 이상(쉼표로 구분)입니다.
쉼표로 구분된 withdrawal, deposit 또는 message입니다.
거래의 통화(대소문자 구분 없음)입니다.
이 날짜(UTC) 당일 또는 이후에 생성된 이체입니다(YYYY-MM-DD).
이 날짜(UTC) 당일 또는 이전에 생성된 이체입니다(YYYY-MM-DD).
GET /v3/travel-rule/vasps/의 디렉터리 항목 또는 Didit 네트워크 멤버의 id입니다. 해당 거래 상대방과의 전송에 사용됩니다. 유효한 id가 아닌 값은 400을 반환합니다.
페이지 크기, 기본값 50입니다.
1 <= x <= 1000000건너뛸 행.
0 <= x <= 1000000