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
Получите входящие депозиты, которые ждут Travel Rule-данных от отправляющего VASP, чтобы сопоставить каждый с сообщением контрагента в Didit.
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 от отправляющего VASP поступят в Didit. До этого момента депозит остаётся в ожидании. Получите список ожидающих депозитов, чтобы найти те, которые нужно обработать. Когда данные пришли в виде отдельного полученного сообщения, сопоставьте их с депозитом: см. Сопоставить несопоставленный депозит.Запрос
curl "https://verification.didit.me/v3/travel-rule/unmatched/" \
-H "x-api-key: YOUR_API_KEY"
Примечания
- Строки и фильтры такие же, как в Список переводов Travel Rule, от новых к старым.
- Депозит исчезает из списка, когда с ним сопоставляют полученное сообщение, когда вы сопоставляете его вручную или когда его статус меняется.
- Список пуст для приложений без переводов Travel Rule.
Связанное
Авторизации
API-ключ вашего приложения из раздела «Разработчикам» -> «API-ключи» в Business Console. Основной ключ имеет полный доступ. Именованный ключ может иметь ограниченную область действия: без доступа, чтение или запись для каждого ресурса, ограничение определенными сценариями или одобренными сессиями, списком IP-адресов и сроком действия. 401 означает, что ключ неверен, отозван или его срок действия истек; 403 означает, что ключ не был передан, у ключа нет доступа к этому ресурсу или действию, либо запрос поступил с адреса вне его списка IP-адресов; 404 на маршруте сессии означает, что сессия не входит в сценарии или статусы ключа. Ключ без доступа к медиа получает URL изображений, видео и PDF как null, а ключ без прав на запись сессий получает ссылки на сессии и токены как null. См. https://docs.didit.me/console/api-keys.
Параметры запроса
INBOUND, OUTBOUND или оба значения через запятую. С учетом регистра.
Один или несколько статусов перевода через запятую.
Одно или несколько значений из INTERNAL, TRP, GTR, TRUST, VERIFYVASP, SYGNA, EMAIL, TEST_VASP через запятую.
withdrawal, deposit или message, разделённые запятыми.
Валюта транзакции, без учета регистра.
Переводы, созданные в этот день или позже (UTC), ГГГГ-ММ-ДД.
Переводы, созданные в этот день или раньше (UTC), ГГГГ-ММ-ДД.
Параметр id записи каталога или участника сети Didit из GET /v3/travel-rule/vasps/: ваши переводы с этим контрагентом. Если передан некорректный id, возвращается 400.
Размер страницы, по умолчанию 50.
1 <= x <= 1000000Строки, которые нужно пропустить.
0 <= x <= 1000000