Lewati ke konten utama
Didit Raih $7,5 Juta untuk Membangun Infrastruktur Identitas dan Fraud
Didit
Kembali ke blog
Blog · 6 Maret 2026

Membangun Pendengar Webhook Didit dengan AWS Lambda & API Gateway (ID)

Pelajari cara membuat pendengar webhook Didit yang kuat dan skalabel menggunakan TypeScript, AWS Lambda, dan API Gateway (Serverless Framework).

Oleh DiditDiperbarui
building-didit-webhook-listeners-with-aws-lambda-api-gateway.png

Integrasi Webhook AmanPenerapan verifikasi tanda tangan webhook yang kuat menggunakan kunci rahasia bersama Didit sangat penting untuk memastikan integritas dan keaslian data yang masuk dari platform Didit, melindungi dari penipuan dan perusakan.

Arsitektur Tanpa Server yang SkalabelMemanfaatkan AWS Lambda dan API Gateway dengan Serverless Framework menyediakan solusi yang sangat skalabel dan hemat biaya untuk menangani peristiwa webhook Didit, secara otomatis menyesuaikan beban yang bervariasi tanpa intervensi manual.

Alur Kerja Identitas Waktu NyataMemproses webhook Didit secara waktu nyata memungkinkan respons instan terhadap hasil verifikasi identitas, memfasilitasi orientasi pengguna yang dinamis, deteksi penipuan, dan tindakan kepatuhan, meningkatkan efisiensi operasional.

Pendekatan Didit yang Mengutamakan PengembangDidit menyederhanakan manajemen webhook dengan dokumentasi API yang jelas, rotasi kunci rahasia yang mudah, dan arsitektur modular, memungkinkan pengembang untuk dengan cepat membangun dan menyebarkan alur kerja berbasis peristiwa khusus dengan KYC Inti Gratis dan tanpa biaya pengaturan.

Kekuatan Webhook dalam Verifikasi Identitas

Dalam dunia verifikasi identitas, umpan balik waktu nyata sangatlah penting. Baik Anda sedang mengorientasi pengguna baru, melakukan penyaringan AML, atau memverifikasi usia, mengetahui hasil sesi verifikasi saat itu terjadi memungkinkan pengambilan keputusan yang dinamis dan pengalaman pengguna yang mulus. Di sinilah webhook bersinar. Daripada terus-menerus melakukan polling API untuk pembaruan status, Didit mengirimkan notifikasi otomatis ke endpoint yang Anda tentukan setiap kali terjadi peristiwa penting, seperti sesi verifikasi selesai atau status berubah. Model berbasis push ini lebih efisien, mengurangi overhead panggilan API, dan memastikan sistem Anda selalu terbarui dengan hasil verifikasi identitas terbaru.

Mengintegrasikan kemampuan verifikasi identitas Didit yang kuat seringkali melibatkan pengaturan pendengar webhook yang andal. Pendengar ini bertindak sebagai mata dan telinga aplikasi Anda, menerima pembaruan penting tentang status Verifikasi ID, Deteksi Kehidupan, atau hasil Penyaringan AML. Sistem webhook yang diterapkan dengan baik adalah landasan arsitektur modern yang digerakkan oleh peristiwa, memberikan kelincahan yang dibutuhkan untuk merespons hasil verifikasi dengan cepat dan mempertahankan perjalanan pengguna yang mulus.

Menyiapkan Pendengar Webhook Tanpa Server Anda dengan AWS Lambda dan API Gateway

Membangun pendengar webhook yang skalabel dan tangguh bisa jadi rumit, tetapi dengan AWS Lambda dan API Gateway, ditambah dengan Serverless Framework, hal itu menjadi sangat mudah. Pendekatan tanpa server ini berarti Anda tidak perlu mengelola server apa pun; AWS menangani semua infrastruktur, menskalakan pendengar Anda secara otomatis berdasarkan permintaan. Untuk pendengar webhook Didit kami, kami akan menggunakan TypeScript untuk keamanan tipe dan produktivitas pengembang.

Prasyarat:

  • Akun AWS
  • Node.js dan npm terinstal
  • Serverless Framework terinstal (npm install -g serverless)
  • Akun Didit dengan kunci API dan rahasia webhook (dari Konsol Didit -> Pengaturan -> Kunci API)

Pengaturan Proyek:

Pertama, buat proyek Serverless baru:

serverless create --template aws-nodejs-typescript --path didit-webhook-listener
cd didit-webhook-listener
npm install

Sekarang, mari kita konfigurasi serverless.yml untuk mendefinisikan fungsi Lambda dan endpoint API Gateway kita:

service: didit-webhook-listener

provider:
  name: aws
  runtime: nodejs18.x
  stage: dev
  region: us-east-1
  environment:
    DIDIT_WEBHOOK_SECRET: ${ssm:/didit/webhook/secret}

functions:
  handleDiditWebhook:
    handler: src/handler.handleDiditWebhook
    events:
      - http:
          path: webhook/didit
          method: post
          cors: true

plugins:
  - serverless-offline
  - serverless-dotenv-plugin
  - serverless-ssm-fetch

Perhatikan bahwa kita mengambil DIDIT_WEBHOOK_SECRET dari AWS SSM Parameter Store, yang merupakan praktik terbaik untuk mengelola rahasia. Anda perlu menyimpan Rahasia Webhook Didit Anda di sana. Didit memungkinkan Anda untuk dengan mudah merotasi kunci rahasia Anda melalui API atau Konsol Didit, memastikan kebersihan keamanan yang baik.

Menerapkan Pemrosesan Webhook Aman di TypeScript

Aspek paling penting dari setiap pendengar webhook adalah keamanan. Anda harus memverifikasi bahwa permintaan yang masuk benar-benar berasal dari Didit dan belum dirusak. Didit menyediakan kunci rahasia bersama untuk tujuan ini, yang Anda gunakan untuk memvalidasi tanda tangan HMAC yang disertakan dalam header x-didit-signature webhook.

Buat src/handler.ts:

import { APIGatewayProxyHandler } from 'aws-lambda';
import * as crypto from 'crypto';

const DIDIT_WEBHOOK_SECRET = process.env.DIDIT_WEBHOOK_SECRET || '';

export const handleDiditWebhook: APIGatewayProxyHandler = async (event) => {
  if (!event.body) {
    return { statusCode: 400, body: 'No body received' };
  }

  const signature = event.headers['x-didit-signature'];
  if (!signature) {
    console.warn('Webhook received without x-didit-signature header.');
    return { statusCode: 403, body: 'Missing signature' };
  }

  try {
    const expectedSignature = crypto
      .createHmac('sha256', DIDIT_WEBHOOK_SECRET)
      .update(event.body)
      .digest('hex');

    if (expectedSignature !== signature) {
      console.error('Webhook signature mismatch. Expected:', expectedSignature, 'Received:', signature);
      return { statusCode: 403, body: 'Invalid signature' };
    }

    const payload = JSON.parse(event.body);
    console.log('Successfully verified and parsed Didit webhook:', payload);

    // Implementasikan logika bisnis Anda di sini berdasarkan payload webhook
    // Contoh: perbarui status pengguna, picu tindakan lebih lanjut, simpan hasil
    // Misalnya, jika itu adalah penyelesaian Verifikasi ID:
    // if (payload.event_type === 'session.completed' && payload.data.workflow_type === 'kyc') {
    //   console.log('Sesi KYC Selesai untuk vendor_data:', payload.data.vendor_data);
    //   // Proses hasil KYC, perbarui profil pengguna, dll.
    // }

    return { statusCode: 200, body: 'Webhook received and processed' };
  } catch (error) {
    console.error('Error processing webhook:', error);
    return { statusCode: 500, body: 'Internal server error' };
  }
};

Dalam kode ini, kami menghitung hash HMAC SHA256 dari body permintaan mentah menggunakan DIDIT_WEBHOOK_SECRET Anda dan membandingkannya dengan header x-didit-signature yang disediakan oleh Didit. Jika tidak cocok, permintaan ditolak, mencegah akses tidak sah atau peristiwa palsu. Proses verifikasi yang kuat ini sangat penting untuk menjaga keamanan dan integritas alur kerja verifikasi identitas Anda, terutama saat berurusan dengan data sensitif dari layanan Verifikasi ID, Pencocokan Wajah, atau Penyaringan AML Didit.

Mengkonfigurasi Didit untuk Mengirim Webhook

Setelah fungsi Lambda Anda di-deploy dan Anda memiliki URL endpoint API Gateway, langkah terakhir adalah memberi tahu Didit ke mana harus mengirim webhook-nya. Ini dapat dilakukan dengan mudah melalui Didit Management API atau melalui Didit Business Console.

Melalui Didit Management API:

Anda dapat memperbarui konfigurasi webhook Anda secara terprogram menggunakan endpoint PATCH /v3/webhook/. Ini memungkinkan Anda untuk mengatur webhook_url Anda, menentukan webhook_version (v3 direkomendasikan), dan bahkan merotasi secret_shared_key Anda dengan aman.

curl -X PATCH https://verification.didit.me/v3/webhook/ \
  -H "Content-Type: application/json" \
  -H "x-api-key: YOUR_DIDIT_API_KEY" \
  -d '{
    "webhook_url": "YOUR_API_GATEWAY_ENDPOINT",
    "webhook_version": "v3"
  }'

Ganti YOUR_DIDIT_API_KEY dengan kunci API Didit Anda yang sebenarnya dan YOUR_API_GATEWAY_ENDPOINT dengan URL yang disediakan oleh AWS API Gateway setelah mendeploy fungsi Serverless Anda.

Melalui Didit Business Console:

Atau, navigasikan ke Konsol Didit, buka Pengaturan -> Webhooks, dan cukup tempel URL endpoint API Gateway Anda ke bidang yang ditentukan. Anda juga dapat melihat dan merotasi kunci rahasia webhook Anda di sini. Desain modular Didit memastikan bahwa mengkonfigurasi integrasi penting ini mudah, memungkinkan Anda untuk fokus membangun aplikasi inti Anda.

Bagaimana Didit Membantu

Didit menyediakan platform identitas yang mengutamakan pengembang dan berbasis AI yang membuat integrasi verifikasi identitas canggih menjadi sederhana dan aman. Arsitektur modular kami memungkinkan Anda untuk memilih komponen yang Anda butuhkan, mulai dari Verifikasi ID (OCR, MRZ, kode batang) dan Deteksi Kehidupan Pasif & Aktif hingga Pencocokan Wajah 1:1, Penyaringan & Pemantauan AML, dan Estimasi Usia. Dengan menawarkan KYC Inti Gratis dan tanpa biaya pengaturan, Didit memberdayakan bisnis dari semua ukuran untuk menerapkan solusi identitas yang kuat tanpa biaya yang mahal.

Dokumentasi API kami yang komprehensif dan lingkungan sandbox instan memastikan bahwa pengembang dapat dengan cepat memulai, dan sistem webhook kami, seperti yang ditunjukkan, dirancang untuk keandalan dan keamanan. Dengan Didit, Anda mendapatkan akses ke jaringan verifikasi global, alur kerja yang terorkestrasi, dan data identitas yang terstruktur, semuanya disampaikan melalui API yang bersih. Ini berarti Anda dapat dengan percaya diri membangun pendengar webhook khusus yang terintegrasi secara mulus dengan backend Didit yang kuat, memastikan pembaruan waktu nyata untuk semua kebutuhan verifikasi identitas Anda.

Siap Memulai?

Siap melihat Didit beraksi? Dapatkan demo gratis hari ini.

Mulai verifikasi identitas secara gratis dengan tingkat gratis Didit.

Infrastruktur untuk identitas dan fraud.

Satu API untuk KYC, KYB, Transaction Monitoring, dan Wallet Screening. Integrasi dalam 5 menit.

Minta AI untuk merangkum halaman ini
Membangun Pendengar Webhook Didit dengan AWS Lambda & API.