Kupata matokeo ya uthibitishaji kwa webhooks

Didit hakukutumii barua pepe wakati uthibitishaji unabadilisha hali - weka webhook ili backend yako isikie mara tu inapotokea, na thibitisha saini kabla ya kuiamini.

Short answer

Webhook ni ombi la HTTP ambalo Didit hutuma kwenye URL yako wakati kitu kinabadilika. Ongeza lengo chini ya API & Webhooks, jisajili kwa matukio unayotaka - hakuna wildcard, orodhesha kila moja - hifadhi siri ya kusaini, na thibitisha saini kabla ya kuchakata chochote.

Didit hakutumii barua pepe wakati kikao kinaposogea hadi In Review au Declined. Ili kujua wakati hali inabadilika, bila kupakua upya console, weka webhook - URL kwenye seva yako ambayo Didit hutuma sasisho kwa njia ya kiotomatiki.

Webhooks ndiyo muundo wa muunganisho unaopendekezwa. Kufuatilia endpoint ya uamuzi (polling) kunafanya kazi kama hifadhi ya nyuma, lakini ni polepole, kunatumia maombi zaidi, na kunapoteza matukio ambayo hutolewa tu na webhook - marekebisho ya data yaliyofanywa na mkaguzi, mabadiliko ya hali ya miamala, na mabadiliko ya kiwango cha entity.

#Kuweka moja

  1. Nenda kwenye API & Webhooks

    Katika Business Console, fungua programu unayotaka kupokea matukio kwa ajili yake, kisha nenda kwenye API & Webhooks.

  2. Ongeza lengo

    Lipe lebo, URL ya HTTPS ya umma ya endpoint yako, na chagua matukio unayotaka kupokea - mabadiliko ya hali ya kikao kwa kiwango cha chini.

  3. Hifadhi siri ya kusaini

    Lengo linakuonyesha siri mara moja tu. Ihifadhi - seva yako inaitumia kuthibitisha kwamba ombi limetoka kweli kwa Didit badala ya mtu anayejifanya kuwa Didit. Hatua kamili za uthibitishaji: Signature verification.

  4. Ijaribu

    Tumia Try Webhook kwenye ukurasa uleule kutuma tukio la jaribio lililoundwa kikamilifu - hali za approved, declined, in review, KYB, entity, na transaction - kwenye endpoint yako. Unaweza kuthibitisha muunganisho wako kwa njia hii bila kuendesha uthibitishaji halisi.

Malengo ya webhook katika console ya Didit yakiwa na matukio yaliyosajiliwa na historia ya utoaji
  1. Add destination husajili URL ambayo Didit hutuma matokeo kwayo.
  2. Thibitisha kila utoaji dhidi ya siri hii ya kusaini kabla ya kuiamini.
  3. Chagua matukio gani lengo linapokea.
  4. Test Webhook hutuma payload ya mfano ili uweze kuthibitisha endpoint yako inaikubali.
Kila lengo lina matukio yake yaliyosajiliwa, siri yake ya kusaini, na kumbukumbu yake ya utoaji.

#Matukio unayoweza kujisajili

Hakuna wildcard - orodhesha kila kundi la matukio unalotaka. Kuyagawa kwenye malengo kadhaa ni sawa na mara nyingi ni safi zaidi.

TukioHuzindua wakati
status.updatedHali ya kikao cha KYC au KYB inabadilika. Lile ambalo karibu kwa hakika unalitaka
data.updatedData ya uthibitishaji inahaririwa baada ya kuundwa - mkaguzi anasahihisha sehemu
user.status.updatedMtumiaji aliyeunganishwa anasogea kati ya ACTIVE, FLAGGED na BLOCKED
user.data.updatedWasifu, kihesabu, au vitambulisho vya mtumiaji aliyeunganishwa vinabadilika
business.status.updatedBiashara iliyoungani inabadilisha hali
business.data.updatedData ya biashara iliyoungani inabadilika
transaction.createdMuamala unaundwa na uamuzi wake wa awali uko tayari
transaction.status.updatedHali ya muamala inabadilika baadaye
travel_rule.status.updatedHali ya kubadilishana kwa Travel Rule inabadilika
Note

Hakuna session.status.updated au kyc.completed. Ukisajili jina lisilo katika orodha hii, hutapokea chochote - na itaonekana kama hitilafu ya utoaji hasa. Angalia jina kwanza.

#Kile endpoint yako inapaswa kufanya

  • Thibitisha saini kabla ya kitu kingine chochote. Fanya HMAC kwenye maudhui ghafi ya ombi - kamwe si toleo lililorudiwa kuandikwa la JSON iliyochambuliwa, kwa sababu kuandika upya kunabadilisha bytes na saini haitalingana. Tumia ulinganishaji wa muda thabiti.
  • Rudisha 2xx haraka. Fanya kazi nzito kwa njia isiyosubiri (asynchronous), baada ya kujibu.
  • Kuwa idempotent. Tumia kama ufunguo id ya tukio, au id ya kikao pamoja na hali pamoja na aina ya webhook. Marudio na nakala hutokea.
  • Shughulikia kila hali unayojali, ikiwa ni pamoja na zile zinazofika muda mrefu baada ya uandikishaji - kikao kilichoidhinishwa kinaweza baadaye kusogea hadi In Review kupitia ufuatiliaji endelevu wa AML.
  • HTTPS pekee. Endpoints za HTTP wazi hazitumiki.

#Marudio

Kwenye 5xx, 404, timeout, au kushindwa kwa muunganisho, Didit hujaribu tena mara mbili:

  • Jaribio la kwanza takriban dakika 1 baada ya kushindwa kwa awali
  • Jaribio la pili takriban dakika 4 baada ya hilo

Baada ya hapo utoaji unaachwa. Kila jaribio limeandikwa kando kwenye kichupo cha Deliveries cha lengo, hivyo unaweza kuona hasa kilichotokea badala ya kubashiri.

Important

Marudio mawili katika dakika tano si foleni ya kudumu. Ikiwa endpoint yako ilikuwa chini kwa saa moja, matukio hayo yamepotea. Fanya upatanisho wakati wa kuanza kwa kufuatilia endpoint ya uamuzi kwa vikao ambavyo huna hali ya mwisho kwavyo - webhooks ni njia ya haraka, si njia pekee.

#Nyuma ya firewall au WAF

Didit hutuma kutoka IP tuli 18.203.201.92 ikiwa na user agent ya DiditWebhook/2.0. Ikiwa ukingo wako unazuia wateja wasiojulikana - msimamo wa chaguo-msingi wa Cloudflare, kwa mfano - ruhusu IP hiyo kwa hostname inayopokea, au utoaji utashindwa kabla ya kufika kwenye msimbo wako.

#Bado huna backend?

Bado unaweza kufuatilia matokeo kwa mkono kwenye sehemu ya Verifications ya console wakati unajenga moja, au tumia kiungo cha uthibitishaji kisichohitaji msimbo kwa muda huo.

#Hatua zinazofuata