ข้ามไปที่เนื้อหา

ข้อความที่ CDD Core ส่ง

Address: POST {trading_base_url}/rest/v1/rpc/{function} body {"p": { …envelope… }} header x-link-key และ apikey ระบบซื้อขายตอบด้วยใบรับ

  • ข้อความรอในรายการส่งในฐานข้อมูล และส่ง ทุกนาที ตามลำดับ คือ สถานะลูกค้า คำสั่งจำกัดสิทธิ์ แล้ววงเงิน ภายในแต่ละประเภทเรียงจากเก่าไปใหม่
  • ข้อความถูกทำเครื่องหมายว่าส่งแล้วก็ต่อเมื่อได้ HTTP 200 พร้อมใบรับที่ระบุ message_id ของข้อความนั้น
  • ข้อความที่ขาด field ที่ต้องมีถูกพักไว้และบันทึกชื่อ field ไม่ส่งข้อความที่ยังไม่ครบ
  • 4xx หยุดรอบการส่ง เพื่อไม่ให้ลำดับผิด 5xx หรือเครือข่ายล่มก็หยุดรอบเช่นกัน และข้อความยังอยู่ในรายการสำหรับรอบถัดไป

ส่งเมื่อลูกค้าได้รับอนุมัติให้ใช้บริการ และส่งอีกทุกครั้งที่ field เปลี่ยน ทุกครั้งส่งสถานะปัจจุบัน ทั้งหมด

"body": {
"link_ref": "…",
"core_customer_id": "5d0c…",
"state_version": 17,
"effective_at": "2026-09-20T08:15:30.000Z",
"account_no": "IA-0048-1193",
"customer_type": "INDIVIDUAL",
"display_name_th": "…",
"display_name_en": "…",
"service_status": "ACTIVE",
"risk_level": "MEDIUM",
"investor_class": "RETAIL",
"withdrawal_class": "W1",
"knowledge_test_valid_until": "2027-09-20",
"suitability_level": 3,
"bank_accounts": [
{ "bank_code": "004", "account_no_masked": "xxx-x-x9082-6", "account_ref": "ba_01", "status": "VERIFIED", "usable_from": "2026-09-20T08:15:30.000Z" }
],
"language": "th"
}
Fieldค่า
state_versionเพิ่มทีละหนึ่งทุกครั้งที่เปลี่ยน ต่อลูกค้า version ที่ไม่สูงกว่าที่ถืออยู่ได้ใบรับและถูกข้าม
customer_typeINDIVIDUAL · JURISTIC
service_statusACTIVE · SUSPENDED · CLOSED
risk_levelLOW · MEDIUM · HIGH ใช้เลือกวงเงินและเส้นทางการพิจารณาเท่านั้น
bank_accounts[].usable_fromระยะพักหลังเปลี่ยนบัญชีธนาคาร ระบบซื้อขายบังคับใช้ ไม่คำนวณเอง

RESTRICTION_COMMAND · function core_restriction_command

หัวข้อ “RESTRICTION_COMMAND · function core_restriction_command”

หนึ่งลูกค้า หนึ่งขา หนึ่งการกระทำ การจำกัดสามขาคือสามข้อความภายใต้ case_ref เดียว ไม่มีข้อความใดหมายถึง “ล็อกทั้งหมด”

ลำดับข้อความของคำสั่งจำกัดสิทธิ์CDD Core ส่ง RESTRICTION_COMMAND ระบบซื้อขายตอบใบรับทันที เมื่อขาของบัญชีเปลี่ยนสถานะจริงจึงส่ง COMMAND_EXECUTION กลับ และ CDD Core ตอบใบรับRESTRICTION_COMMAND200 · RECEIVEDCOMMAND_EXECUTION200 · RECEIVEDCDD Coreเก็บก่อน ส่งทีหลังTrading Coreระบบซื้อขายของสถาบันขาของบัญชีเปลี่ยนสถานะไม่มีรายงานใน 60 วินาที → แจ้งเจ้าหน้าที่คำอธิบายคำสั่งรายงานผลใบรับ (HTTP)
หนึ่งคำสั่งได้สองคำตอบ คือใบรับทันที และรายงานการปฏิบัติเมื่อขาเปลี่ยนสถานะแล้ว
"body": {
"link_ref": "…",
"command_ref": "RC-000123-3",
"core_customer_id": "5d0c…",
"leg": "DA_TRANSFER_OUT",
"action": "RESTRICT",
"trading_scope": "ALL",
"ground_code": "G-07",
"source": "OFFICER_DECISION",
"priority": 2,
"case_ref": "CASE-2026-000045",
"issued_at": "2026-09-20T08:15:30.123Z",
"effective_at": "2026-09-20T08:15:30.123Z"
}
Fieldค่า
legTHB_DEPOSIT · THB_WITHDRAWAL · TRADING · DA_TRANSFER_OUT · DA_TRANSFER_IN_ACCESS
actionRESTRICT · RELEASE
trading_scopeเฉพาะเมื่อ leg เป็น TRADING: ALL · BUY_ONLY สถานะ Exit-Only คือ TRADING + RESTRICT + BUY_ONLY ซึ่งยังขายได้
sourceCORE_RULE · OFFICER_DECISION · AUTHORITY_ORDER
ground_code · priorityผู้รับเก็บไว้ ไม่แสดงต่อลูกค้า และไม่ใช้ตัดสินใจ

ต่อลูกค้าต่อขา คำสั่งที่มี issued_at ล่าสุดมีผล คำสั่งเก่าที่มาถึงช้าได้ใบรับ แล้วรายงานเป็น SUPERSEDED ระบบซื้อขายไม่ตัดสินเองว่าการปลดระงับทำได้หรือไม่ ลำดับความสำคัญใช้ภายใน CDD Core และส่งเฉพาะคำสั่งที่เป็นผลลัพธ์

"body": {
"link_ref": "…",
"core_customer_id": "5d0c…",
"limit_version": 4,
"effective_at": "2026-09-20T08:15:30.000Z",
"limits": [
{ "limit_code": "THB_OUT_DAY", "amount": "500000.00", "currency": "THB" },
{ "limit_code": "DA_OUT_DAY", "amount": "500000.00", "currency": "THB" },
{ "limit_code": "DA_OUT_SINGLE", "amount": "200000.00", "currency": "THB" }
]
}

ชุดวงเงินทั้งหมดแทนชุดเดิมที่ effective_at รหัสวงเงินในรุ่นนี้ ได้แก่ THB_OUT_DAY · DA_OUT_DAY · DA_OUT_SINGLE

ตรวจ link จากฝั่ง CDD Core ใช้ตอนรับมอบงานและเมื่อต้องการ