Skip to content
This translation is behind the English original, updated 2026-09-15. Read the English version for the current text.

POST /apiv2/screening

کسی بلاک چین ایڈریس کے لیے AML اسکریننگ کا آرڈر دیں۔ یہ ورژن 2 کا معاہدہ ہے: ہر فراہم کنندہ (provider) اور آرڈر کی ہر حالت کے لیے ایک ہی جواب کی ساخت، اعشاری نمبر بطور اسٹرنگز، اور ایک واحد نقص کی فارمیٹ۔

یہ POST /apiv2/aml کی جگہ لیتا ہے، جو بدستور کام کر رہا ہے اور بغیر اطلاع کے ختم نہیں کیا جا رہا ہے۔

Endpoint کا URL

POST https://netts.io/apiv2/screening

درخواست کے Headers

ہیڈرلازمیتفصیل
Content-Typeہاںapplication/json
X-API-KEYہاںNetts ڈیش بورڈ سے آپ کی API کی
X-Idempotency-Keyنہیںمحفوظ دوبارہ کوششوں کے لیے آپ کی اپنی کی (key)۔ دیکھیں Idempotency

درخواست کا Body

json
{
    "address": "YOUR_ADDRESS_HERE",
    "network": "trx",
    "provider": "elliptic",
    "wait_for_result": true
}

پیرامیٹرز

پیرامیٹرقسملازمیتفصیل
addressاسٹرنگہاںاسکرین کرنے کے لیے ایڈریس، 10–128 کریکٹرز
networkاسٹرنگہاںنیٹ ورک ٹکر۔ ہر فراہم کنندہ جن ٹکرز کا احاطہ کرتا ہے وہ GET /apiv2/screening/providers کے ذریعے درج ہیں؛ نیٹ ورکس کے ناموں کے ساتھ مکمل جدول یہاں ہے
providerاسٹرنگہاںelliptic یا bitok۔ کوئی ڈیفالٹ نہیں ہے
wait_for_resultبولیننہیںtrue زیادہ سے زیادہ 15 سیکنڈ تک نتیجے کا انتظار کرتا ہے۔ ڈیفالٹ false
languageاسٹرنگنہیںرپورٹ کی زبان۔ صرف en

نامعلوم فیلڈز کو مسترد کر دیا جاتا ہے۔ اوپر دیے گئے جدول میں غیر موجود فیلڈ پر مشتمل باڈی کوڈ 4001 کے ساتھ 400 لوٹاتی ہے۔ ورژن 1 میں نامعلوم فیلڈز کو خاموشی سے نظر انداز کر دیا جاتا تھا، اور wait کی غلط املا کا مطلب یہ تھا کہ کال کرنے والے نے ایسے نتیجے کا انتظار کیا جو کبھی بھی بیک وقت موصول نہیں ہونا تھا۔

provider لازمی ہے اور اس کا کوئی ڈیفالٹ نہیں ہے۔ ورژن 1 میں کسی فراہم کنندہ کو چھوڑ دینے کا مطلب Elliptic تھا، لہذا جس کال کرنے والے نے انتخاب نہیں کیا اس نے ایسے فراہم کنندہ کے لیے ادائیگی کی جس کا اس نے کبھی نام نہیں لیا تھا۔

provider سکیما میں ایک آزادانہ اسٹرنگ ہے، کوئی enumeration نہیں۔ آج دو اقدار قبول کی جاتی ہیں؛ تیسرا فراہم کنندہ کسی بھی ایسے شخص کے لیے بریکنگ چینج نہیں ہونا چاہیے جو سکیما کے مطابق جوابات کی توثیق کرتا ہے۔ موجودہ فہرست، وہ نیٹ ورکس جن کا ہر فراہم کنندہ احاطہ کرتا ہے اور وہ پیمانہ جس پر ہر ایک اسکور کرتا ہے، GET /apiv2/screening/providers سے حاصل ہوتے ہیں۔

نمونہ درخواستیں

cURL — نتیجے کا انتظار کریں

bash
curl -X POST https://netts.io/apiv2/screening \
  -H "Content-Type: application/json" \
  -H "X-API-KEY: your_api_key" \
  -d '{
    "address": "YOUR_ADDRESS_HERE",
    "network": "trx",
    "provider": "elliptic",
    "wait_for_result": true
  }'

cURL — قبول کریں اور پول (poll) کریں

bash
curl -X POST https://netts.io/apiv2/screening \
  -H "Content-Type: application/json" \
  -H "X-API-KEY: your_api_key" \
  -d '{
    "address": "YOUR_ADDRESS_HERE",
    "network": "trx",
    "provider": "bitok"
  }'

جواب Location ہیڈر کے ساتھ 202 Accepted ہوتا ہے جو آرڈر کی طرف اشارہ کرتا ہے۔

Python

python
import requests
from decimal import Decimal

url = "https://netts.io/apiv2/screening"
headers = {
    "Content-Type": "application/json",
    "X-API-KEY": "your_api_key",
}
payload = {
    "address": "YOUR_ADDRESS_HERE",
    "network": "trx",
    "provider": "elliptic",
    "wait_for_result": True,
}

response = requests.post(url, headers=headers, json=payload)

if response.status_code in (200, 202):
    body = response.json()
    print("Order:", body["order"]["client_order_id"])
    print("Status:", body["order"]["status"])
    if body["risk"]["score"] is not None:
        # Parse provider numbers as Decimal, never as float
        print("Score:", Decimal(body["risk"]["score"]), "of", body["risk"]["scale"]["max"])
    print("Level:", body["risk"]["level"], "-", body["risk"]["level_source"])
    print("Charged:", body["billing"]["charged_amount"], body["billing"]["charged_currency"])
else:
    problem = response.json()
    print(problem["code"], problem["title"], "-", problem["detail"])

جواب کے کوڈز

صورتحالکوڈہیڈرز
آرڈر بن گیا، اسکریننگ پس منظر میں چل رہی ہے202 AcceptedLocation: /apiv2/screening/{client_order_id}
نتیجہ جواب میں موجود ہے (wait_for_result)200 OK
نتیجہ حالیہ چیک سے دوبارہ استعمال کیا گیا، کوئی کٹوتی نہیں ہوئی200 OK
ایڈریس کی کوئی بلاک چین سرگرمی نہیں ہے، کوئی کٹوتی نہیں ہوئی200 OK
نقصدیکھیں ErrorsContent-Type: application/problem+json

اسکریننگ کا نتیجہ لے جانے والے جوابات Cache-Control: private, no-store کے ساتھ بھیجے جاتے ہیں۔

جواب

json
{
  "schema_version": 2,
  "order": {
    "client_order_id": "A90D21F68C9AEA2",
    "status": "completed",
    "api_version": "v2",
    "cache_hit": false,
    "created_at": "2026-09-13T08:14:29.614988Z",
    "started_at": "2026-09-13T08:14:30.288251Z",
    "completed_at": "2026-09-13T08:14:34.993174Z"
  },
  "request": {
    "address": "YOUR_ADDRESS_HERE",
    "network": "trx",
    "provider": "elliptic"
  },
  "billing": {
    "charged": true,
    "price_usdt": "0.98",
    "base_amount": "2.882421",
    "markup_amount": "0",
    "charged_amount": "2.882421",
    "charged_currency": "TRX",
    "exchange_rate": "0.33999200",
    "payment_status": "pending"
  },
  "precheck": {
    "activity_checked": true,
    "activity_status": "active",
    "source": "tron-address-checker"
  },
  "check": {
    "provider": "elliptic",
    "provider_check_id": "b4903a5d-9f22-4075-b51b-beb40b419b97",
    "checked_at": "2026-09-13T08:14:32.144000Z",
    "status": "completed",
    "provider_status": "complete"
  },
  "risk": {
    "score": "0.9634087310611608",
    "scale": { "min": 0, "max": 10 },
    "level": "low",
    "level_source": "computed",
    "provider_level": null,
    "policy": "netts-risk-v1",
    "by_direction": {
      "source": "0.12332156899576921",
      "destination": "0.9634087310611608"
    }
  },
  "sanctions": {
    "self": false,
    "self_entities": null,
    "exposure": {
      "entity": "HTX (formerly Huobi) - Post-Sanctions - UK Sanctions List - 26 May 2026",
      "category": "Exchange",
      "share_fraction": "0.004409451392423414",
      "proximity": "indirect",
      "hops": 3,
      "direction": "source",
      "rule_name": "Sanctioned, TF & CSAM"
    },
    "items": []
  },
  "exposure": [
    {
      "category": "Exchange",
      "share_fraction": "0.1888065152442461",
      "direction": "source",
      "hops": 2,
      "is_screened_address": false,
      "entities": [
        { "name": "Binance", "category": "Exchange", "is_vasp": true,
          "is_primary": true, "is_after_sanction_date": null }
      ]
    }
  ],
  "rules": [
    { "name": "Sanctioned, TF & CSAM", "type": "exposure", "level": null,
      "score": "0.061426483114820525", "share_fraction": null, "category": null,
      "proximity": null, "direction": "source", "detected_at": null }
  ],
  "entities": [
    { "name": "Unknown", "category": "Unknown", "is_vasp": null,
      "is_primary": true, "is_after_sanction_date": false }
  ],
  "primary_entity": {
    "name": "Unknown", "category": "Unknown", "is_vasp": null,
    "is_primary": true, "is_after_sanction_date": false
  },
  "sanctioned_entities": [],
  "wallet": {
    "inflow_usd": "354663.6116669158",
    "outflow_usd": "80248.63081808022"
  },
  "provider_data": { }
}

فیلڈز کا سیٹ کبھی تبدیل نہیں ہوتا

اوپر درج ہر بلاک ہر جواب میں موجود ہوتا ہے، چاہے کوئی بھی فراہم کنندہ ہو اور آرڈر کی حالت کچھ بھی ہو۔ جو چیز کوئی فراہم کنندہ فراہم نہیں کرتا وہ null ہوتی ہے؛ ایک فہرست جس میں کچھ بھی نہیں ہے وہ [] ہوتی ہے، نہ کہ null؛ ایک بلاک جس میں ابھی تک کوئی ڈیٹا نہیں ہے اسے خارج کرنے کے بجائے nulls سے بھر دیا جاتا ہے۔ ایک ہی پارسر اس چیک کو سنبھالتا ہے جسے ابھی قبول کیا گیا ہو اور اسی چیک کو اس وقت بھی جب وہ مکمل ہو چکا ہو۔

آپ کے کوڈ کے لیے دو نتائج:

  • ان فیلڈز کو نظر انداز کریں جنہیں آپ نہیں جانتے۔ بغیر کسی نئے ورژن کے ان بلاکس میں نئی فیلڈز شامل کی جاتی ہیں۔ کسی نامعلوم فیلڈ کو مسترد کرنا آپ کا نقص (bug) ہے، ہمارا نہیں۔
  • provider_data معاہدے کا حصہ نہیں ہے۔ اس کی ساخت فراہم کنندہ کے مطابق ہوتی ہے، اور جب فراہم کنندہ تبدیل ہوتا ہے تو یہ تبدیل ہو جاتی ہے۔ معاہدہ جس چیز کی بھی ضمانت دیتا ہے وہ اوپر دیے گئے بلاکس میں موجود ہے۔

order

فیلڈقسمتفصیل
client_order_idاسٹرنگآرڈر کا شناختی کوڈ، بعد میں نتیجہ پڑھنے کے لیے استعمال ہوتا ہے
statusاسٹرنگpending، processing، completed، skipped، failed
api_versionاسٹرنگوہ معاہدہ جس نے آرڈر بنایا
cache_hitبولینtrue جب حالیہ نتیجہ دوبارہ استعمال کیا گیا ہو اور کوئی کٹوتی نہ ہوئی ہو
created_atاسٹرنگRFC 3339، UTC، مائیکرو سیکنڈز
started_atاسٹرنگ | nullفراہم کنندہ کی کال کب شروع ہوئی۔ skipped کے لیے null
completed_atاسٹرنگ | nullنتیجہ کب موصول ہوا
errorاسٹرنگصرف failed کے لیے: یہ کیوں ناکام ہوا
reasonاسٹرنگصرف skipped کے لیے: address_inactive

تمام ٹائم اسٹیمپ UTC، RFC 3339، ایک Z لاحقے اور مائیکرو سیکنڈ کی درستگی کے ساتھ ہیں۔

billing

فیلڈقسمتفصیل
chargedبولینآیا رقم لی گئی ہے
price_usdtاسٹرنگUSDT میں فراہم کنندہ کی لسٹ پرائس
base_amountاسٹرنگچارج کی گئی کرنسی میں آرڈر کی قیمت، ذیلی صارف کے مارک اپ کے بغیر
markup_amountاسٹرنگذیلی صارف کا مارک اپ۔ براہ راست اکاؤنٹ کے لیے "0"
charged_amountاسٹرنگبیلنس سے اصل میں کیا لیا گیا
charged_currencyاسٹرنگTRX
exchange_rateاسٹرنگ | nullتبادلے کے لیے استعمال ہونے والی شرح
payment_statusاسٹرنگpaid، pending، failed، not_charged

کامیاب چیک کے بعد مختصر وقت کے لیے payment_status کی قدر pending ہوتی ہے: رقم پہلے روکی جاتی ہے اور ایک گھنٹے کے اندر طے پاتی ہے۔ failed کا مطلب ہے کہ رقم واپس کر دی گئی۔ not_charged کا مطلب ہے کہ کبھی کوئی کٹوتی بنائی ہی نہیں گئی — دوبارہ استعمال شدہ نتیجہ یا چھوڑا گیا ایڈریس۔

precheck

ادائیگی والی اسکریننگ سے پہلے ایڈریس کی بلاک چین سرگرمی کے لیے جانچ کی جاتی ہے۔ بغیر کسی سرگرمی والے ایڈریس کو فراہم کنندہ کو نہیں بھیجا جاتا اور نہ ہی کوئی کٹوتی کی جاتی ہے۔

فیلڈقسمتفصیل
activity_checkedبولینآیا جانچ کی گئی۔ ان نیٹ ورکس پر false جہاں یہ موجود نہیں ہے
activity_statusاسٹرنگactive، inactive، unknown
sourceاسٹرنگ | nullمیکانزم کا نام

unknown بامعاوضہ اسکریننگ کو نہیں روکتا: اگر ایکٹیویٹی سروس دستیاب نہ ہو تو ایڈریس کو فعال سمجھا جاتا ہے۔

check

فیلڈقسمتفصیل
providerاسٹرنگجانچ کرنے والا فراہم کنندہ
provider_check_idاسٹرنگ | nullفراہم کنندہ کا اپنا شناختی کوڈ — ان کے ساتھ کسی نتیجے پر تنازع کرتے وقت اس کا حوالہ دیں
checked_atاسٹرنگ | nullفراہم کنندہ نے نتیجہ کب تیار کیا
statusاسٹرنگنیچے دیا گیا جدول دیکھیں
provider_statusاسٹرنگ | nullفراہم کنندہ کے اپنے الفاظ، غیر تبدیل شدہ
order.statuscheck.statusمفہوم
pendingpendingآرڈر قبول کر لیا گیا، ابھی شروع نہیں ہوا
processingrunningفراہم کنندہ اس پر کام کر رہا ہے
completedcompletedنتیجہ موصول ہو گیا
failedfailedفراہم کنندہ کی کال سے پہلے یا اس کے دوران مسترد کر دیا گیا
skippednot_performedایڈریس کی کوئی سرگرمی نہیں ہے؛ فراہم کنندہ کو کبھی کال نہیں کیا گیا اور کوئی کٹوتی نہیں ہوئی

risk

فیلڈقسمتفصیل
scoreاسٹرنگ | nullفراہم کنندہ کا اپنا اسکور، بطور اعشاری اسٹرنگ
scaleآبجیکٹاس فراہم کنندہ کے پیمانے کا min اور max
levelاسٹرنگnone، low، medium، high، severe
level_sourceاسٹرنگcomputed — ہم نے اسکور سے سطح اخذ کی؛ provider — فراہم کنندہ نے اسے بیان کیا
provider_levelاسٹرنگ | nullفراہم کنندہ کا اپنا لفظ، جب وہ کوئی فراہم کرے
policyاسٹرنگحد بندی پالیسی کا نام، netts-risk-v1
by_directionآبجیکٹاسکور کو source اور destination میں تقسیم کیا گیا ہے، جب فراہم کنندہ اسے تقسیم کرتا ہے

اسکور کو کبھی دوبارہ ناپا (rescale) نہیں جاتا۔ Elliptic کا پیمانہ 0–10 اور BitOK کا 0–1 ہے، اور ایک پیمانے پر 7 کا مطلب کسی بھی لحاظ سے دوسرے پر 0.7 نہیں ہے۔ پیمانہ جواب میں آتا ہے تاکہ ایک فراہم کنندہ کے لیے لکھی گئی انٹیگریشن ایک ہی کنفیگریشن تبدیلی کے بعد دوسرے کو غلط نہ سمجھ لے۔

لیول پوری API میں ایک واحد اصطلاح ہے۔ جہاں فراہم کنندہ اپنی ایک سطح بتاتا ہے ہم اسے آگے منتقل کرتے ہیں اور level_source میں ایسا کہہ دیتے ہیں؛ جہاں وہ نہیں بتاتا، ہم netts-risk-v1 کی حدود کے ساتھ اسکور سے سطح اخذ کرتے ہیں اور اس کے بجائے وہ کہہ دیتے ہیں۔ ایک ہی چیک کے لیے API جواب، ڈیش بورڈ اور PDF رپورٹ میں ایک ہی لفظ ظاہر ہوتا ہے۔

exposure[]، rules[]، entities[]

exposure[] فنڈز کو فریق ثانی (counterparty) کے زمرے کے لحاظ سے تقسیم کرتا ہے۔ rules[] فراہم کنندہ کے ان قواعد کی فہرست دیتا ہے جو متحرک ہوئے۔ entities[] ان اداروں کی فہرست دیتا ہے جن سے ایڈریس خود تعلق رکھتا ہے؛ primary_entity ایک مقررہ قاعدے کے تحت ان میں سے ایک کا انتخاب کرتا ہے — وہ ادارہ جسے فراہم کنندہ نے بنیادی کے طور پر نشان زد کیا، ورنہ پہلا، بصورت دیگر null۔ sanctioned_entities[] میں entities[] کے وہ ادارے شامل ہیں جنہیں پابندیوں کی تاریخ کے بعد فعال کے طور پر نشان زد کیا گیا ہے۔

شیئرز کسر (fractions) ہیں، کبھی فیصد نہیں

جواب میں ہر شیئر ایک واحد فیلڈ، share_fraction ہے، جو "0" اور "1" کے درمیان ایک اعشاری اسٹرنگ ہے۔

text
Elliptic reports 31.574732212596924 %  ->  "share_fraction": "0.31574732212596924"
BitOK reports    0.8488                ->  "share_fraction": "0.8488"

فراہم کنندگان اکائیوں پر متفق نہیں ہیں: نمائش کا وہی ایک تہائی حصہ ایک سے 31.57 کے طور پر اور دوسرے سے 0.3157 کے طور پر آتا ہے۔ فراہم کنندہ کو جانے بغیر دونوں کو لے جانے والی ایک ہی فیلڈ کو پڑھنا ناممکن ہوگا۔ فراہم کنندہ کا اپنا نمبر فراہم کنندہ کی اپنی اکائیوں میں provider_data میں رہتا ہے۔

اعداد اسٹرنگز ہیں

فراہم کنندہ سے آنے والا ہر نمبر — اسکورز، شیئرز، USD والیومز، اور billing میں ہر رقم — ایک اعشاری اسٹرنگ ہے۔

json
"score": "0.9634087310611608"

JavaScript، Go یا بائنری فلوٹنگ پوائنٹ والی کسی دوسری زبان میں اسے JSON نمبر کے طور پر پارس کرنا ایک تخمینی قدر دیتا ہے، اور جو قدر آپ پرنٹ کرتے ہیں وہ فراہم کنندہ کی جاری کردہ قدر سے مطابقت رکھنا بند کر دیتی ہے۔ ان فیلڈز کو اعشاری قسم کے ساتھ پارس کریں: Python میں Decimal، Java میں BigDecimal، JavaScript میں decimal.Decimal یا اسٹرنگ۔

وہ فیلڈز جو فراہم کنندہ کے بجائے ہماری ہیں — scale.min، scale.max، hops — سادہ JSON اعداد ہیں۔

حالیہ نتیجے کا دوبارہ استعمال

جب آپ 60 سیکنڈ کے اندر اسی ایڈریس، نیٹ ورک اور فراہم کنندہ کو دوبارہ اسکرین کرتے ہیں، تو پہلے والا نتیجہ واپس کر دیا جاتا ہے اور کوئی کٹوتی نہیں کی جاتی۔

ہر درخواست اب بھی اپنے client_order_id کے ساتھ اپنا آرڈر بناتی ہے؛ دوبارہ استعمال ہونے والے آرڈر پر "cache_hit": true نشان زد ہوتا ہے اور اس کا billing بلاک "payment_status": "not_charged" کے ساتھ "charged": false رپورٹ کرتا ہے۔ جس آرڈر سے نتیجہ آیا ہے اس کا شناختی کوڈ ظاہر نہیں کیا جاتا — ہو سکتا ہے کہ وہ کسی دوسرے اکاؤنٹ کا ہو۔

دوبارہ استعمال صرف ایک اکاؤنٹ کے اندر ہوتا ہے۔ کسی اور کی طرف سے اسکرین کیا گیا نتیجہ کبھی آپ کو واپس نہیں کیا جاتا۔

Idempotency

دوبارہ کوشش کو محفوظ بنانے کے لیے اپنی ایک ویلیو کے ساتھ X-Idempotency-Key بھیجیں: اسی باڈی کے ساتھ وہی کی (key) دوسری جانچ کا آرڈر دینے کے بجائے محفوظ شدہ جواب لوٹاتی ہے۔

صورتحالکوڈجواب
اس کی (key) کے ساتھ پہلی درخواست اب بھی چل رہی ہے4094090
وہی کی، ایک مختلف درخواست باڈی4094093
وہی کی، وہی باڈی، پہلے ہی مکمل ہو چکی ہےمحفوظ شدہ کوڈمحفوظ شدہ جواب

اگر آپ ہیڈر نہیں بھیجتے ہیں، تو دو سیکنڈ کی ونڈو میں API کی، ایڈریس، فراہم کنندہ اور آپ کے IP ایڈریس سے آپ کے لیے ایک کی تیار کی جاتی ہے۔ یہ ڈبل کلک اور گیٹ وے کی دوبارہ کوشش سے حفاظت کرتی ہے، ایک منٹ بعد دوبارہ کوشش سے نہیں: وہ ایک حقیقی نیا آرڈر ہوتا ہے اور اس کی کٹوتی کی جاتی ہے۔

کیز کا دائرہ کار فی اینڈ پوائنٹ ہوتا ہے۔ POST /apiv2/aml اور اس اینڈ پوائنٹ پر بھیجی گئی ایک ہی ویلیو دو مختلف درخواستوں کے بارے میں دو آزاد وعدے ہیں — باڈیز مختلف ہیں، اور جوابات بھی مختلف ہیں۔ کسی انٹیگریشن کو ورژن 1 سے ورژن 2 پر منتقل کرتے وقت اپنی کی کا دوبارہ استعمال محفوظ ہے: یہ نہ تو آپ کو ورژن 1 کا جواب لوٹاتی ہے اور نہ ہی مختلف باڈی کے ساتھ استعمال ہونے والی ایک ہی کی کے طور پر شمار ہوتی ہے۔

نقائص

ایپلیکیشن کی طرف سے پیدا ہونے والا ہر نقص Content-Type: application/problem+json کے ساتھ RFC 9457 استعمال کرتا ہے:

json
{
  "type": "https://doc.netts.io/api/v2/errors/insufficient-funds",
  "title": "Insufficient funds",
  "status": 403,
  "detail": "Insufficient funds. Required: 2.888742 TRX, Available: 1.203000 TRX",
  "instance": "/apiv2/screening",
  "code": 1004,
  "required_trx": "2.888742",
  "available_trx": "1.203000"
}

type، title، status، detail اور instance معیاری فیلڈز ہیں۔ عددی code کو ایک توسیعی فیلڈ کے طور پر رکھا گیا ہے تاکہ ورژن 1 کے لیے لکھی گئی انٹیگریشنز اس پر مطابقت برقرار رکھ سکیں۔ اضافی فیلڈز کا انحصار نقص پر ہوتا ہے اور جب آپ انہیں نہ جانتے ہوں تو انہیں نظر انداز کر دینا چاہیے۔

کوڈHTTPمفہوم
4000400باڈی درست JSON نہیں ہے
4001400ایک فیلڈ کی توثیق ناکام ہو گئی، یا کوئی نامعلوم فیلڈ بھیجی گئی تھی
4002403فراہم کنندہ آپ کے اکاؤنٹ کے لیے دستیاب نہیں ہے
4003400ناقص آرڈر شناختی کوڈ
4004400فراہم کنندہ درخواست کردہ نیٹ ورک کو سپورٹ نہیں کرتا
4010401کوئی API کی موجود نہیں ہے
4011401API کی یا IP ایڈریس قبول نہیں کیا گیا
4040404آرڈر نہیں ملا
4041404اکاؤنٹ نہیں ملا
4090409اس idempotency کی کے ساتھ ایک درخواست اب بھی چل رہی ہے
4091409ڈپلیکیٹ درخواست
4093409یہ idempotency کی ایک مختلف باڈی کے ساتھ استعمال کی گئی تھی
1004403ناکافی بیلنس
5000500اندرونی نقص
5001500رقم کی کٹوتی مکمل نہیں ہو سکی
5002500آرڈر نہیں بنایا جا سکا
5030503فراہم کنندہ دستیاب نہیں ہے

وہ نقائص جو اس فارمیٹ کو استعمال نہیں کرتے

کچھ ناکامیاں گیٹ وے پر ہوتی ہیں، ایپلیکیشن تک پہنچنے سے پہلے، اور وہ گیٹ وے کی اپنی ہی ساخت برقرار رکھتی ہیں۔ کسی بھی ایسے جواب کو جس کا Content-Type، application/problem+json نہ ہو، ان میں سے ایک سمجھیں:

صورتحالHTTPباڈی
کوئی API کی نہیں ہے، یا ایسی کی جو قبول نہیں کی گئی401{"detail":{"code":-1,"msg":"Invalid or missing API key"}}
شرح کی حد (rate limit) سے تجاوز کر گیا429{"message":"API rate limit exceeded"}
نامعلوم راستہ، یا ایسا طریقہ (method) جو روٹ پر فراہم نہیں کیا جاتا404 / 405{"detail":"Method Not Allowed"}

Rate Limits

یہ حد POST /apiv2/aml اور دیگر AML راستوں کے ساتھ مشترک ہے: 5 درخواستیں فی سیکنڈ اور 150 فی منٹ۔ اس اینڈ پوائنٹ پر منتقل ہونے سے آپ کو اضافی گنجائش نہیں ملتی۔

نوٹس

  • قیمتیں: Elliptic $0.98، BitOK $0.50 فی چیک، کٹوتی کے وقت کے ریٹ پر TRX بیلنس سے کاٹے جاتے ہیں۔
  • پروسیسنگ کا وقت: زیادہ تر چیکس چند سیکنڈوں میں مکمل ہو جاتے ہیں؛ طویل تاریخ والا ایڈریس تین منٹ تک لے سکتا ہے۔ غیر مطابقت پذیر (asynchronous) موڈ کا استعمال کریں اور نتیجہ GET /apiv2/screening/{client_order_id} کے ساتھ پڑھیں۔
  • غیر فعال ایڈریسز skipped لوٹاتے ہیں اور ان سے کوئی کٹوتی نہیں کی جاتی۔
  • فراہم کنندہ کا کچا (raw) جواب کبھی واپس نہیں کیا جاتا۔ provider_data ایک نظر ثانی شدہ پروجیکشن ہے؛ وہ فیلڈز جو اسکرین کیے گئے ایڈریس کے بجائے فراہم کنندہ کے ساتھ ہمارے اکاؤنٹ سے تعلق رکھتی ہیں، کسی پر ظاہر نہیں کی جاتیں۔

رپورٹس

اینڈ پوائنٹ JSON لوٹاتا ہے اور کچھ نہیں۔ کوئی PDF اور کوئی Markdown نہیں ہے۔

ایک رپورٹ جن تمام اجزاء پر مشتمل ہوتی ہے وہ پہلے ہی جواب میں موجود ہیں: متحد بلاک اور provider_data۔ اسے اپنی طرف رینڈر کرنے سے آپ کو وہ دستاویز ملتی ہے جو آپ اصل میں چاہتے ہیں — آپ کی برانڈنگ، آپ کی زبان، آپ کا لے آؤٹ — خاص طور پر اگر آپ چیکس کو دوبارہ فروخت کرتے ہیں، کیونکہ ہمارے نام پر مشتمل رپورٹ آپ کے اپنے گاہک کو دینے کے لیے غلط دستاویز ہے۔

اگر آپ کو کسی تیسرے فریق کے لیے ثبوت کے طور پر رپورٹ کی ضرورت ہے — ایک بینک، ایک ریگولیٹر، ایک فریق ثانی — تو نوٹ کریں کہ ایک غیر دستخط شدہ PDF ثبوت نہیں ہوتی چاہے اسے کوئی بھی تیار کرے: اسے ایک منٹ میں ٹیکسٹ ایڈیٹر میں تبدیل کیا جا سکتا ہے۔ ایک قابل تصدیق شے کو دستخط یا عوامی تصدیقی صفحے کی ضرورت ہوتی ہے، اور وہ ایک مختلف فیچر ہے۔ اگر آپ کا یہ معاملہ ہے، تو ہمیں بتائیں کہ آپ کے فریق ثانی کو کیا درکار ہے۔

انہی چیکس کے لیے Netts ڈیش بورڈ میں سترہ زبانوں میں پڑھنے کے قابل PDF رپورٹس واقعی موجود ہیں۔

یہ بھی دیکھیں