Kuunda Wasikilizaji wa Didit Webhook kwa AWS Lambda na API Gateway (SW)
Jifunze kuunda wasikilizaji thabiti na wanaoweza kupanuka wa Didit webhook kwa kutumia TypeScript, AWS Lambda, na API Gateway (Serverless Framework).

Ujumuishaji Salama wa WebhookKutekeleza uthibitishaji thabiti wa sahihi za webhook kwa kutumia ufunguo wa siri ulioshirikiwa wa Didit ni muhimu ili kuhakikisha uadilifu na uhalisi wa data inayoingia kutoka kwenye jukwaa la Didit, kulinda dhidi ya udanganyifu na uharibifu.
Usanifu wa Serverless Unaoweza KupanukaKutumia AWS Lambda na API Gateway na Mfumo wa Serverless kunatoa suluhisho la gharama nafuu na linaloweza kupanuka sana kwa kushughulikia matukio ya Didit webhook, ikijirekebisha kiotomatiki kulingana na mizigo tofauti bila kuingilia kati kwa mikono.
Mifumo ya Utambulisho wa Wakati HalisiUsindikaji wa Didit webhooks kwa wakati halisi huwezesha majibu ya haraka kwa matokeo ya uthibitishaji wa utambulisho, kuwezesha uingizaji wa watumiaji wenye nguvu, kugundua ulaghai, na hatua za kufuata, kuboresha ufanisi wa uendeshaji.
Mbinu ya Didit Inayotanguliza Wasanidi ProgramuDidit inarahisisha usimamizi wa webhook kwa nyaraka wazi za API, mzunguko rahisi wa ufunguo wa siri, na usanifu wa moduli, kuruhusu wasanidi programu kujenga na kupeleka haraka mifumo ya kazi inayoendeshwa na matukio na KYC ya Msingi Bila Malipo na bila ada za usanidi.
Nguvu ya Webhooks katika Uthibitishaji wa Utambulisho
Katika ulimwengu wa uthibitishaji wa utambulisho, maoni ya wakati halisi ni muhimu sana. Iwe unaingiza watumiaji wapya, unafanya uchunguzi wa AML, au unathibitisha umri, kujua matokeo ya kikao cha uthibitishaji kinapotokea huruhusu kufanya maamuzi yenye nguvu na matumizi laini ya mtumiaji. Hapa ndipo webhooks zinang'aa. Badala ya kuuliza API kila mara kwa sasisho za hali, Didit hutuma arifa otomatiki kwa sehemu yako maalum wakati wowote tukio muhimu linapotokea, kama vile kikao cha uthibitishaji kukamilika au hali kubadilika. Mfumo huu unaotegemea msukumo ni bora zaidi, unapunguza matumizi ya simu za API, na unahakikisha mifumo yako inasasishwa kila wakati na matokeo ya hivi karibuni ya uthibitishaji wa utambulisho.
Kuunganisha uwezo thabiti wa uthibitishaji wa utambulisho wa Didit mara nyingi kunahusisha kusanidi msikilizaji wa webhook anayeaminika. Msikilizaji huyu hufanya kama macho na masikio ya programu yako, akipokea sasisho muhimu kuhusu hali ya Uthibitishaji wa Kitambulisho, Kugundua Uhai, au matokeo ya Uchunguzi wa AML. Mfumo wa webhook uliotekelezwa vizuri ni msingi wa usanifu wa kisasa, unaoendeshwa na matukio, ukitoa wepesi unaohitajika kujibu haraka matokeo ya uthibitishaji na kudumisha safari laini ya mtumiaji.
Kusanidi Msikilizaji Wako wa Serverless Webhook na AWS Lambda na API Gateway
Kujenga msikilizaji wa webhook anayeweza kupanuka na imara kunaweza kuwa ngumu, lakini kwa AWS Lambda na API Gateway, pamoja na Mfumo wa Serverless, inakuwa rahisi sana. Mbinu hii ya serverless inamaanisha hauhitaji kusimamia seva zozote; AWS inashughulikia miundombinu yote, ikipanua msikilizaji wako kiotomatiki kulingana na mahitaji. Kwa msikilizaji wetu wa Didit webhook, tutatumia TypeScript kwa usalama wa aina na tija ya msanidi programu.
Masharti:
- Akaunti ya AWS
- Node.js na npm imewekwa
- Serverless Framework imewekwa (
npm install -g serverless) - Akaunti ya Didit yenye funguo za API na siri ya webhook (kutoka Didit Console -> Mipangilio -> Funguo za API)
Usanidi wa Mradi:
Kwanza, unda mradi mpya wa Serverless:
serverless create --template aws-nodejs-typescript --path didit-webhook-listener
cd didit-webhook-listener
npm install
Sasa, hebu tusanidi serverless.yml ili kufafanua kazi yetu ya Lambda na sehemu ya API Gateway:
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
Kumbuka tunachukua DIDIT_WEBHOOK_SECRET kutoka AWS SSM Parameter Store, ambayo ni njia bora ya kusimamia siri. Utahitaji kuhifadhi Siri yako ya Didit Webhook huko. Didit inakuwezesha kuzungusha kwa urahisi ufunguo wako wa siri kupitia API au Didit Console, kuhakikisha usalama mzuri.
Kutekeleza Usindikaji Salama wa Webhook katika TypeScript
Kipengele muhimu zaidi cha msikilizaji yeyote wa webhook ni usalama. Lazima uthibitishe kuwa maombi yanayoingia yanatoka kweli Didit na hayajaharibiwa. Didit hutoa ufunguo wa siri ulioshirikiwa kwa kusudi hili, ambao unatumia kuthibitisha sahihi ya HMAC iliyojumuishwa kwenye kichwa cha x-didit-signature cha webhook.
Unda 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);
// Tekeleza mantiki yako ya biashara hapa kulingana na payload ya webhook
// Mifano: sasisha hali ya mtumiaji, anzisha hatua zaidi, hifadhi matokeo
// Kwa mfano, ikiwa ni kukamilika kwa Uthibitishaji wa Kitambulisho:
// if (payload.event_type === 'session.completed' && payload.data.workflow_type === 'kyc') {
// console.log('Kikao cha KYC Kimekamilika kwa data_muuzaji:', payload.data.vendor_data);
// // Shughulikia matokeo ya KYC, sasisha wasifu wa mtumiaji, n.k.
// }
return { statusCode: 200, body: 'Webhook imepokelewa na kusindika' };
} catch (error) {
console.error('Hitilafu katika usindikaji wa webhook:', error);
return { statusCode: 500, body: 'Hitilafu ya ndani ya seva' };
}
};
Katika msimbo huu, tunahesabu hash ya HMAC SHA256 ya mwili wa ombi mbichi kwa kutumia DIDIT_WEBHOOK_SECRET yako na kuilinganisha na kichwa cha x-didit-signature kilichotolewa na Didit. Ikiwa hazilingani, ombi linakataliwa, kuzuia ufikiaji usioidhinishwa au matukio bandia. Mchakato huu thabiti wa uthibitishaji ni muhimu kwa kudumisha usalama na uadilifu wa mifumo yako ya uthibitishaji wa utambulisho, hasa unaposhughulikia data nyeti kutoka kwa huduma za Uthibitishaji wa Kitambulisho cha Didit, Face Match, au AML Screening.
Kusanidi Didit Kutuma Webhooks
Mara tu kazi yako ya Lambda imetumwa na una URL ya sehemu ya API Gateway, hatua ya mwisho ni kumwambia Didit wapi atume webhooks zake. Hili linaweza kufanywa kwa urahisi kupitia API ya Usimamizi wa Didit au kupitia Didit Business Console.
Kupitia API ya Usimamizi wa Didit:
Unaweza kusasisha usanidi wako wa webhook kwa programu kwa kutumia sehemu ya PATCH /v3/webhook/. Hii inakuwezesha kuweka webhook_url yako, kubainisha webhook_version (v3 inapendekezwa), na hata kuzungusha secret_shared_key yako kwa usalama.
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"'
'}'
Badilisha YOUR_DIDIT_API_KEY na ufunguo wako halisi wa Didit API na YOUR_API_GATEWAY_ENDPOINT na URL iliyotolewa na AWS API Gateway baada ya kupeleka kazi yako ya Serverless.
Kupitia Didit Business Console:
Vinginevyo, nenda kwenye Didit Console, nenda kwenye Mipangilio -> Webhooks, na ubandike tu URL yako ya sehemu ya API Gateway kwenye uwanja ulioteuliwa. Unaweza pia kutazama na kuzungusha ufunguo wako wa siri wa webhook hapa. Usanifu wa moduli wa Didit unahakikisha kwamba kusanidi ujumuishaji huu muhimu ni rahisi, kukuwezesha kuzingatia kujenga programu yako kuu.
Jinsi Didit Inavyosaidia
Didit inatoa jukwaa la utambulisho linalotegemea AI, linalotanguliza wasanidi programu ambalo hufanya ujumuishaji wa uthibitishaji wa utambulisho wa hali ya juu uwe rahisi na salama. Usanifu wetu wa moduli unakuwezesha kuchagua na kuchagua vipengele halisi unavyohitaji, kutoka Uthibitishaji wa Kitambulisho (OCR, MRZ, misimbopau) na Kugundua Uhai Passiv & Amilifu hadi 1:1 Face Match, Uchunguzi na Ufuatiliaji wa AML, na Ukadiriaji wa Umri. Kwa kutoa KYC ya Msingi Bila Malipo na bila ada za usanidi, Didit huwezesha biashara za ukubwa wote kutekeleza suluhisho thabiti za utambulisho bila gharama kubwa.
Nyaraka zetu kamili za API na mazingira ya sandbox ya papo hapo huhakikisha kwamba wasanidi programu wanaweza kuanza haraka, na mfumo wetu wa webhook, kama inavyoonyeshwa, umeundwa kwa kuegemea na usalama. Ukiwa na Didit, unapata ufikiaji wa mtandao wa uthibitishaji wa kimataifa, mifumo ya kazi iliyoratibiwa, na data ya utambulisho iliyopangwa, yote yanayotolewa kupitia API safi. Hii inamaanisha unaweza kujenga kwa ujasiri wasikilizaji wa webhook maalum ambao huunganishwa kwa urahisi na backend thabiti ya Didit, kuhakikisha sasisho za wakati halisi kwa mahitaji yako yote ya uthibitishaji wa utambulisho.
Uko Tayari Kuanza?
Uko tayari kuona Didit ikifanya kazi? Pata onyesho la bure leo.
Anza kuthibitisha vitambulisho bila malipo na ngazi ya bure ya Didit.