ภาพรวม API
1 Core System แลกเปลี่ยนข้อมูลกับระบบอื่นสามทาง คือ message API สำหรับระบบที่ต้องทำงานแบบ real time, ไฟล์ เมื่อคู่ค้าทำงานด้วยไฟล์ และ การเรียกออก ที่ CDD Core เรียกบริการภายนอก เช่น การพิสูจน์ตัวตน
ใช้งานได้วันนี้
หัวข้อ “ใช้งานได้วันนี้”| Interface | ทิศทาง | สถานะ | อ้างอิง |
|---|---|---|---|
| Trading link (DA Dealer): สถานะลูกค้า คำสั่งจำกัดสิทธิ์ วงเงิน รายงานการปฏิบัติ และ feed ธุรกรรม | สองทาง, JSON ผ่าน HTTPS | ใช้งานจริง | ข้อกำหนดร่วม · ข้อความที่ CDD Core รับ · ข้อความที่ CDD Core ส่ง |
| ไฟล์ FundConnext: ลูกค้า บัญชี และรายงานรายเดือน | ขาเข้า | ใช้งานจริง | ไฟล์ |
| AERS XML สำหรับแบบ ปปง. 1-02 และ 1-03 (DA Dealer) | ขาออก เป็นไฟล์ที่เจ้าหน้าที่ยื่น | ใช้งานจริง | ไฟล์ |
| การพิสูจน์ตัวตน (NDID · DOPA), ตรวจคนจริง (Didit), อีเมลและ SMS | CDD Core เป็นผู้เรียก | ใช้งานจริง ตามการติดตั้ง | การเชื่อมต่อ |
หลักการออกแบบ
หัวข้อ “หลักการออกแบบ”- หนึ่งข้อความ หนึ่ง HTTPS POST หนึ่ง JSON object ไม่ใช้ฐานข้อมูลร่วม และไม่เข้าถึงตารางข้ามระบบ
- กุญแจแยกตามทิศทาง แต่ละฝั่งเก็บเฉพาะค่า SHA-256 ของกุญแจที่ตนรับ กุญแจส่งมอบนอกระบบ ไม่อยู่ในโค้ด เอกสาร หรือข้อความ
- ใบรับก่อน ผลตามมาทีหลัง คำตอบ HTTP ยืนยันแค่การรับ งานที่ใช้เวลารายงานเป็นข้อความแยก
- ส่งซ้ำได้อย่างปลอดภัย
message_idเดิมถูกประมวลผลครั้งเดียว และตอบเหมือนเดิมทุกครั้ง ผู้ส่งจึงลองใหม่ได้ - เก็บก่อน ส่งทีหลัง การตัดสินของเจ้าหน้าที่ถูกเก็บก่อนส่ง เครือข่ายล่มก็ไม่ทำให้คำสั่งหาย และหน้าจอไม่ต้องรออีกระบบ
- สถานะล่าสุดมีผลต่อ หากติดต่ออีกฝั่งไม่ได้ สถานะล่าสุดที่ได้รับยังมีผล ขาที่ถูกจำกัดยังคงถูกจำกัด
- ข้อมูลเท่าที่จำเป็น ระบบซื้อขายได้รับเฉพาะสิ่งที่ต้องใช้ให้บริการและปฏิเสธ เอกสารแสดงตน ที่อยู่ วันเกิด และผลตรวจรายชื่อไม่ข้าม link
Environment
หัวข้อ “Environment”แต่ละสถาบันมีการติดตั้งของตนเอง staging กับ production ต่างกันที่ base URL และกุญแจ ไม่ใช่ field ในข้อความ base URL และกุญแจออกให้ตอนตั้งค่า link
Versioning
หัวข้อ “Versioning”ประเภทข้อความและ field เพิ่มได้โดยตกลงร่วมกัน field เดิมไม่ถูกนำไปใช้ความหมายใหม่ ผู้ส่งที่ใช้รหัสใหม่ก่อนผู้รับรู้จักจะได้ UNKNOWN_CODE จึงไม่มีฝั่งใดต้องเดา