Ana içeriğe geç

Initiate

Genel Bakış

ClearTX sisteminde yeni bir işlem başlatır. Bu endpoint, travel rule uyumluluğunda farklı kullanım senaryoları için tasarlanmış üç farklı protokolü destekler: MAIN, BASIC ve NOTIFY.

İşlem durumlarının tümü ve geçişleri için Transactions sayfasına bakın.

Endpoint

POST /v1/transactions/initiate

İstek Gövdesi

ParameterTürGerekliAçıklama
transactionAssetstringEvetVarlık tanımlayıcısı (ör. "ETH-USDT", "BTC-BTC")
transactionAssetDecimalsintegerEvetOndalık basamak sayısı (Bkz. Notlar)
transactionAmountstringEvetString olarak transaction tutarı
protocolstringEvetProtokol tipi: "MAIN", "BASIC" veya "NOTIFY"
beneficiaryVASPidstringMAIN/BASIC: Hayır / NOTIFY: EvetBeneficiary KVHS'ın UUID'si
beneficiaryVASPdidstringMAIN/BASIC: Evet / NOTIFY: HayırBeneficiary KVHS'ın DID'i
transactionBlockchainInfoobjectEvetBlockchain işlem detayları
  transactionBlockchainInfo.originstringOpsiyonelOrigin blockchain adresi
  transactionBlockchainInfo.destinationstringEvetDestination blockchain adresi
  transactionBlockchainInfo.txHashstringOpsiyonelİşlemin blockchain hash'i (broadcast sonrasında sağlanabilir)
notificationEmailstringNOTIFY: Evet / Diğerleri: KullanılmazBildirim e-postası (sadece NOTIFY)
piiobjectEvetKişisel Tanımlanabilir Bilgi, zorunluluğu protokole bağlıdır

Protokol Semantikleri

MAIN
  • Yalnızca temel işlem/varlık bilgileri (destination, miktar vb.) başlatmada paylaşılır.
  • pii verisi sadece CONFIRM sonrasında beneficiary'ye iletilir.
  • Başlatmada PII bilgisi saklanır ancak karşıya iletilmez; CONFIRM ile paylaşılır.
  • beneficiaryVASPdid gönderilmesi zorunludur.
BASIC
  • Tüm pii verisi başlatmada beneficiary'ye iletilir.
  • beneficiaryVASPdid gönderilmesi zorunludur.
NOTIFY
  • Sisteme kayıtlı olmayan borsayı bilgilendirme için; emir NOTIFY e-posta adresine bildirilir.
  • notificationEmail zorunludur.
  • txHash isteğe bağlıdır; ClearTX veya originator broadcast sonrasında webhook ile paylaşabilir.
  • beneficiaryVASPid zorunlu, beneficiaryVASPdid isteğe bağlıdır.
  • pii zorunlu.
  • NOTIFY'de beneficiary'nin sisteme kayıtlı olmaması mümkündür.

Protokol Türleri

MAIN Protokolü

MAIN protokolü, beneficiary borsayı gelen bir işlem hakkında bilgilendirir. Başlangıçta yalnızca blockchain destination adresi paylaşılır; diğer tüm bilgiler onay sonrası paylaşılır.

Kullanım Senaryosu: Onay akışına sahip standart travel rule uyumluluğu.

BASIC Protokolü

BASIC protokolü, onay gerektirmeden tüm işlem bilgilerini doğrudan beneficiary borsaya gönderir.

Kullanım Senaryosu: Onay gerekmeyen durumlarda doğrudan bilgi paylaşımı.

NOTIFY Protokolü

NOTIFY protokolü, ClearTX kullanmayan borsalara blockchain işlemleri hakkında e-posta bildirimleri gönderir.

Kullanım Senaryosu: İşlemler hakkında ClearTX dışındaki borsaları bilgilendirme.

bilgi

NOTIFY protokolünde notificationEmail alanı zorunludur. Beneficiary kimlik alanları içerisinde beneficiaryVASPid zorunludur ve beneficiaryVASPdid opsiyoneldir.

İstek Örnekleri

MAIN Protokol Örneği

{
"protocol": "MAIN",
"transactionAsset": "BTC-BTC",
"transactionAssetDecimals": 8,
"transactionAmount": "0.0032",
"beneficiaryVASPid": "ce422f07-d7ac-4da1-b808-03918d4603c8",
"beneficiaryVASPdid": "did:web:beneficiary.example",
"transactionBlockchainInfo": {
"origin": "1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa",
"destination": "1BvBMSEYstWetqTFn5Au4m4GFg7xJaNVN2"
},
"pii": {
"originator": {
"accountNumber": ["ACC-ORIG-001"],
"originatorPersons": [
{
"naturalPerson": {
"name": [
{
"nameIdentifier": [
{
"primaryIdentifier": "Alice",
"secondaryIdentifier": "Johnson"
}
]
}
],
"geographicAddress": [
{
"addressType": "HOME",
"streetName": "Oak Avenue",
"townName": "Los Angeles",
"country": "US",
"buildingNumber": "456",
"postCode": "90210"
}
],
"nationalIdentification": {
"countryOfIssue": "US",
"nationalIdentifier": "987-65-4321",
"nationalIdentificationType": "SSN"
}
}
}
]
},
"beneficiary": {
"accountNumber": ["ACC-BEN-001"],
"beneficiaryPersons": [
{
"naturalPerson": {
"name": [
{
"nameIdentifier": [
{
"primaryIdentifier": "Bob",
"secondaryIdentifier": "Wilson"
}
]
}
],
"geographicAddress": [
{
"addressType": "HOME",
"streetName": "King Street",
"townName": "London",
"country": "GB",
"buildingNumber": "12",
"postCode": "SW1A 1AA"
}
],
"nationalIdentification": {
"countryOfIssue": "GB",
"nationalIdentifier": "AB123456C",
"nationalIdentificationType": "NINO"
}
}
}
]
}
}
}

BASIC Protokol Örneği

{
"transactionAsset": "ETH-USDT",
"transactionAssetDecimals": 6,
"transactionAmount": "100.000000",
"beneficiaryVASPid": "ce422f07-d7ac-4da1-b808-03918d4603c8",
"beneficiaryVASPdid": "did:web:beneficiary.example",
"transactionBlockchainInfo": {
"origin": "0x742d35Cc6634C0532925a3b8D4C9db96C4b4d8b6",
"destination": "0x8ba1f109551bD432803012645546eaCe3bDd2fF3"
},
"protocol": "BASIC",
"pii": {
"originator": {
"accountNumber": ["ACC-ORIG-001"],
"originatorPersons": [
{
"naturalPerson": {
"name": [
{
"nameIdentifier": [
{
"primaryIdentifier": "Alice",
"secondaryIdentifier": "Johnson"
}
]
}
],
"geographicAddress": [
{
"addressType": "HOME",
"streetName": "Oak Avenue",
"townName": "Los Angeles",
"country": "US",
"buildingNumber": "456",
"postCode": "90210"
}
],
"nationalIdentification": {
"countryOfIssue": "US",
"nationalIdentifier": "987-65-4321",
"nationalIdentificationType": "SSN"
}
}
}
]
},
"beneficiary": {
"accountNumber": ["ACC-BEN-001"],
"beneficiaryPersons": [
{
"naturalPerson": {
"name": [
{
"nameIdentifier": [
{
"primaryIdentifier": "Bob",
"secondaryIdentifier": "Wilson"
}
]
}
],
"geographicAddress": [
{
"addressType": "HOME",
"streetName": "King Street",
"townName": "London",
"country": "GB",
"buildingNumber": "12",
"postCode": "SW1A 1AA"
}
],
"nationalIdentification": {
"countryOfIssue": "GB",
"nationalIdentifier": "AB123456C",
"nationalIdentificationType": "NINO"
}
}
}
]
}
}
}

NOTIFY Protokol Örneği

{
"transactionAsset": "BTC-BTC",
"transactionAssetDecimals": 8,
"transactionAmount": "0.1",
"beneficiaryVASPid": "ce422f07-d7ac-4da1-b808-03918d4603c8",
"transactionBlockchainInfo": {
"origin": "1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa",
"destination": "1BvBMSEYstWetqTFn5Au4m4GFg7xJaNVN2"
},
"protocol": "NOTIFY",
"notificationEmail": "[email protected]",
"pii": {
"originator": {
"originatorPersons": [
{
"naturalPerson": {
"name": [
{
"nameIdentifier": [
{
"primaryIdentifier": "Charlie",
"secondaryIdentifier": "Brown"
}
]
}
],
"geographicAddress": [
{
"addressType": "HOME",
"streetName": "Pine Street",
"townName": "Chicago",
"country": "US",
"buildingNumber": "789",
"postCode": "60601"
}
],
"nationalIdentification": {
"countryOfIssue": "US",
"nationalIdentifier": "111-22-3333",
"nationalIdentificationType": "SSN"
}
}
}
]
},
"beneficiary": {
"beneficiaryPersons": [
{
"naturalPerson": {
"name": [
{
"nameIdentifier": [
{
"primaryIdentifier": "Diana",
"secondaryIdentifier": "Prince"
}
]
}
],
"geographicAddress": null,
"nationalIdentification": {
"countryOfIssue": "AU",
"nationalIdentifier": "123456789",
"nationalIdentificationType": "TFN"
}
}
}
]
}
}
}

Yanıt

Başarılı Yanıt (200 OK)

{
"transactionRef": "6f61b14a-60ec-4569-8ba9-b675dae62159",
"status": "NEW",
"protocol": "MAIN",
"transactionAsset": "BTC-BTC",
"transactionAmount": "0.0032",
"beneficiaryVASPid": "ce422f07-d7ac-4da1-b808-03918d4603c8",
"beneficiaryVASPdid": "did:web:example.com",
"destination": "1BvBMSEYstWetqTFn5Au4m4GFg7xJaNVN2"
}

Notlar

  • txHash alanı NOTIFY protokolü için zorunludur.
  • notificationEmail alanı yalnızca NOTIFY protokolü için zorunludur.
  • PII veri yapısı, travel rule uyumluluk standartlarını takip eder.
  • Tüm para tutarları, hassasiyet sorunlarını önlemek için string olarak gönderilmelidir.
  • transactionAssetDecimals alanı, tutarın nasıl yorumlanacağını belirler (varlık için geçerli ondalık sayısı kullanılmalıdır).