Checkify
เอกสารสำหรับนักพัฒนา

เอกสารอ้างอิง Embed SDK

Browser API สำหรับการยืนยัน Checkify Pass URL ของ CDN: https://checkify.me/sdk/v1/checkify.min.js

ติดตั้ง

<script src="https://checkify.me/sdk/v1/checkify.min.js"></script>

หลังโหลด window.Checkify.version จะรายงานรุ่น SDK (ปัจจุบัน 1.0.4)

HTML ติดตั้งอัตโนมัติ

SDK จะ mount องค์ประกอบที่มีแอตทริบิวต์เหล่านี้โดยอัตโนมัติเมื่อโหลดหน้า:

<div
  data-checkify-pass="YOUR_PASS_ID"
  data-checkify-request="human"
  data-checkify-text="Verify with Checkify"
  data-checkify-return-url="https://yoursite.com/done"
></div>

เลิกใช้แล้ว: data-checkify-launcher ยังใช้งานได้แต่จะแสดงคำเตือนใน console ใช้ Pass + ประเภทคำขอแทน

วิธีการคำอธิบาย
data-checkify-passรหัสประจำตัวสาธารณะ Checkify Pass ของคุณ (จำเป็น)
data-checkify-requestRequest type: human, age_over_18, age_over_21, age_over_25, or age_over_N
data-checkify-textข้อความบนป้ายกำกับปุ่ม
data-checkify-return-urlURL ที่ใช้กลับไปหลังจากแอปส่งต่อ (ไม่บังคับ)
data-checkify-fieldsช่องข้อมูลระบุตัวตนเพิ่มเติมที่คั่นด้วยเครื่องหมายจุลภาค (ตัวอย่างเช่น ประเทศ)
data-checkify-proofsประเภทการตรวจสอบที่คั่นด้วยเครื่องหมายจุลภาค (ไม่บังคับ) เมื่อบัตรผ่านของคุณรองรับการตรวจสอบหลายประเภท
data-checkify-launcherรหัสตัวเรียกใช้งาน (launcher ID) ล้าสมัยแล้ว — โปรดใช้ data-checkify-pass แทน

คุณลักษณะการผสานรวมแบบฟอร์ม

เมื่อใช้ Checkify.bindForm คุณสามารถตั้งค่าเหล่านี้บนองค์ประกอบฟอร์มได้ด้วย:

วิธีการคำอธิบาย
data-checkify-passรหัสประจำตัวสาธารณะ Checkify Pass ของคุณ (จำเป็น)
data-checkify-requestRequest type: human, age_over_18, age_over_21, age_over_25, or age_over_N
data-checkify-formใส่ data-checkify-pass (หรือ data-checkify-form) บนฟอร์มเพื่อผูกอัตโนมัติเมื่อโหลดหน้า โดยไม่ต้องเรียก bindForm ด้วยตนเอง ไม่รองรับ data-checkify-auto
data-checkify-hidden-inputตัวเลือก CSS สำหรับช่องป้อนข้อมูลที่ซ่อนอยู่ซึ่งรับค่า request_id (ค่าเริ่มต้น: input[name=checkify_token])

Checkify.configure(options)

ตั้งค่าเริ่มต้นทั่วโลกก่อน mount widget

Checkify.configure({
  baseUrl: 'https://checkify.me',
  completeUrl: '/checkify/complete'
});

Checkify.bindForm(form, options)

แสดงปุ่มยืนยัน เขียนโทเค็นลง input ที่ซ่อน และปิดการส่งจนกว่าจะยืนยันแล้ว

Checkify.bindForm('#my-form', {
  passId: 'YOUR_PASS_ID',
  requestType: 'human',
  buttonTarget: '#checkify-wrap',
  submitButton: '#submit',
  hiddenInput: '#checkify_token',
  disableSubmitUntilVerified: true
});

ตัวเลือก bindForm

ตัวเลือกทั่วไปที่ส่งเป็นอาร์กิวเมนต์ตัวที่สองไปยัง Checkify.bindForm(form, options):

วิธีการคำอธิบาย
passIdรหัสสาธารณะ Checkify Pass (จำเป็นต้องระบุ เว้นแต่จะตั้งค่าไว้ในแบบฟอร์มผ่าน data-checkify-pass)
requestTypeประเภทคำขอ (มนุษย์, อายุมากกว่า 18 ปี, เป็นต้น)
buttonTargetองค์ประกอบคอนเทนเนอร์ที่ใช้แสดงปุ่มยืนยัน
submitButtonส่งคำสั่งควบคุมเพื่อเปิดใช้งานหลังจากตรวจสอบแล้ว
hiddenInputตัวเลือกฟิลด์ที่ซ่อนอยู่สำหรับ request_id
disableSubmitUntilVerifiedเมื่อตั้งค่าเป็น true ระบบจะปิดใช้งานการส่งข้อมูลจนกว่าการตรวจสอบจะสำเร็จ

Checkify.createHumanGate(options)

ประตูเต็มหน้าหรือใน container ที่บล็อกเนื้อหาจนกว่าการยืนยันจะเสร็จ

Checkify.createHumanGate({
  passId: 'YOUR_PASS_ID',
  requestType: 'human',
  container: '#gate-root',
  title: 'Verify to continue'
});

ขั้นตอน Return URL

เมื่อผู้ใช้ทำการยืนยันในแอป Checkify เสร็จ อาจกลับมายังไซต์ของคุณพร้อม checkify_request_id ใน query string SDK จะเรียก Checkify.checkReturnedVerification() โดยอัตโนมัติเมื่อโหลด

Checkify.verify(options)

เริ่มแบบโปรแกรมโดยไม่ใช้ bindForm ส่งองค์ประกอบ DOM เป็น target (ไม่ใช่ container — container ใช้กับ createHumanGate เท่านั้น) แนะนำ bindForm สำหรับฟอร์ม คืน Promise ที่ resolve เมื่อผู้ใช้เสร็จหรือยกเลิก

const result = await Checkify.verify({
  passId: 'YOUR_PASS_ID',
  requestType: 'human',
  target: document.getElementById('checkify-root'),
  autoOpenModal: true
});
console.log(result.requestId); // send to your server as request_id

เหตุการณ์

window.addEventListener('checkify:verified', (e) => {
  console.log('Verified', e.detail);
});

window.addEventListener('checkify:return', (e) => {
  console.log('Returned from app', e.detail);
});

window.addEventListener('checkify:status', (e) => {
  console.log('Status', e.detail);
});

window.addEventListener('checkify:error', (e) => {
  console.error('Checkify error', e.detail);
});

การตรวจสอบสถานะ (ไม่บังคับ)

โดยทั่วไปแล้ว การเชื่อมต่อส่วนใหญ่ควรตรวจสอบความถูกต้องเมื่อส่งแบบฟอร์มด้วย POST /v1/qr/results/verify สำหรับส่วนหน้าเว็บที่กำหนดเองซึ่งไม่มีการฝังโค้ด คุณอาจตรวจสอบสถานะในขณะที่ผู้ใช้กำลังทำการยืนยันในแอป

ยืนยันฝั่งเซิร์ฟเวอร์

วิธีการ

วิธีการคำอธิบาย
Checkify.mount(root?)Mount widget Pass ภายใต้ root element ที่ระบุ (ถ้ามี)
Checkify.bindForm(...)ตัวช่วยเชื่อมต่อแบบฟอร์ม
Checkify.createHumanGate(...)UI ประตูยืนยันมนุษย์
Checkify.verify(options)ขั้นตอนยืนยันแบบ programmatic
Checkify.checkReturnedVerification()จัดการ return URL หลังส่งต่อจากแอป