Documentation / Webhook

Webhook ও event delivery

Systemগুলোর মধ্যে status ও event নির্ভরযোগ্যভাবে পাঠানো configure করুন: message তৈরি ও signature verification থেকে receipt confirmation, repeated delivery এবং error control পর্যন্ত।

Security section খুলুন
Event
status ও change
Signature
authenticity verification
Retry
repeated delivery
Control
history ও diagnostics
Event flow

Creation থেকে confirmation পর্যন্ত

01
Event তৈরি করুন

Identifier, type, time, object, status এবং related data দিন।

02
Sign করে পাঠান

Signature ও limited timeout-সহ HTTPS-এ event পাঠান।

03
Receipt confirm করুন

Verification-এর পর event সংরক্ষণ করুন এবং দ্রুত successful HTTP response ফেরত দিন।

04
Error হলে retry করুন

ক্রমশ interval বাড়িয়ে delivery retry করুন এবং unsent event analysis-এর জন্য রাখুন।

Overview

Webhook state change জানায়

Sender delivery retry করতে পারে, তাই receiver-কে source যাচাই, receipt confirm এবং প্রতিটি event একবারই apply করতে হবে।

Event

Payment, game session, KYC check, bonus, player profile বা অন্য object-এর change record।

Acknowledgement

Event verify ও নির্ভরযোগ্যভাবে সংরক্ষণ করার পর receiver successful HTTP response দেয়।

Recovery

Repeated delivery ও reconciliation কোনো system সাময়িকভাবে unavailable হওয়ার পর data restore করতে সাহায্য করে।

Event payload

Event-এ কোন data থাকা উচিত

Unified message structure verification, routing, duplicate protection এবং বিভিন্ন event type support সহজ করে।

Event ID

Unique value, যার মাধ্যমে system repeated delivery চেনে এবং processing history খুঁজে পায়।

Event type

ঘটেছে এমন change এবং processing method নির্ধারণকারী স্পষ্ট stable name।

Creation time

Agreed format ও timezone-এ event তৈরি হওয়ার date ও time।

Related object

Payment, player, round, application, bonus বা অন্য object-এর type ও ID।

Schema version

Version number active integration না ভেঙে message structure নিরাপদে পরিবর্তন করতে সাহায্য করে।

Operation correlation

Original request, transaction, session অথবা related action chain-এর ID।

Context

সঠিক routing-এর জন্য brand, project, market, environment, provider এবং অন্যান্য প্রয়োজনীয় data।

Event data

Change process বা পরবর্তী API request-এর জন্য minimal field set।

Signature ও verification

Event authenticity ও integrity verification

Data বদলানোর আগে receiver secure connection, signature, creation time এবং unique event ID যাচাই করে।

01

Raw message নিন

JSON format পরিবর্তনের আগে original request body-এর ওপর signature verify করুন।

02

Time যাচাই করুন

Event time allowed interval-এর বাইরে হলে request reject করুন।

03

Signature যাচাই করুন

Agreed secret এবং HMAC বা digital signature algorithm ব্যবহার করুন।

04

Identifier যাচাই করুন

Event আগে apply হয়নি নিশ্চিত করুন এবং verification result সংরক্ষণ করুন।

Delivery ও retry

HTTP response ও repeated delivery

Sender-কে successful receipt, temporary error ও permanent failure আলাদা করতে হবে; receiver-কে দ্রুত ও দ্ব্যর্থহীন response দিতে হবে।

Successful HTTP response

Event verified এবং পরবর্তী processing-এর জন্য safely stored হয়েছে তা নিশ্চিত করে।

Limited wait

Sender-কে response দেওয়ার আগে long processing করবেন না — প্রথমে event সংরক্ষণ করুন।

Repeated delivery

Temporary network error, unavailability বা no response হলে delivery retry করুন।

Interval বৃদ্ধি

অতিরিক্ত load এড়াতে attempt-এর মধ্যে বিরতি ধীরে ধীরে বাড়ান।

Unsent event queue

Attempt শেষ হলে diagnostics ও manual processing-এর জন্য event সংরক্ষণ করুন।

Manual replay

Operator নতুন operation তৈরি না করে নির্বাচিত event আবার পাঠাতে পারে।

Delivery monitoring

Attempt count, response, latest error এবং next send time track করুন।

Notification

Error বৃদ্ধি, attempt শেষ হওয়া এবং queue-তে event জমা সম্পর্কে team-কে জানান।

Event processing

Duplicate protection ও status order

Receiver শুধু একবার delivery বা strict event order-এর ওপর নির্ভর করা উচিত নয়।

একবার apply

Data পরিবর্তনের আগে event ID সংরক্ষণ করুন।
Repeated event আবার debit, credit বা change না করে acknowledge করুন।
Event-কে object ও তার current state-এর সঙ্গে link করুন।
Event এবং business change-কে একক consistent operation হিসেবে সংরক্ষণ করুন।

Order ও freshness

Event time, sequence number বা version তুলনা করুন।
Delayed delivery-তে object-কে পুরোনো state-এ ফেরাবেন না।
শুধু allowed status transition অনুমোদন করুন।
সন্দেহ হলে API দিয়ে object-এর current state request করুন।
Testing

Launch-এর আগে কী যাচাই করবেন

Successful delivery, invalid signature, duplicate, slow response, event order change এবং failure recovery যাচাই করুন।

Invalid signature

Modified message, unknown key, expired time এবং unsupported algorithm।

Repeated delivery

একই event processing শেষ হওয়ার আগে ও পরে একাধিকবার আসে।

Slow response

Receiver খুব দেরিতে response দেয়, connection break হয় অথবা acknowledgement sender-এর কাছে পৌঁছায় না।

Order violation

Final status intermediate status-এর আগে আসে এবং old event new event-এর পরে deliver হয়।

Unavailable endpoint

HTTP 5xx, DNS, TLS, rate limit এবং attempt সম্পূর্ণ শেষ হওয়া যাচাই করুন।

Delivery history

Event ID দিয়ে সব attempt, response, error এবং manual replay result পাওয়া উচিত।

Launch-পূর্ব checklist

Security, duplicate protection, retry এবং error control যাচাইয়ের পর production delivery চালু হয়।

Test ও production environment আলাদা endpoint ও signing secret ব্যবহার করে।
Creation time বিবেচনা করে raw message-এর ওপর signature verify করা হয়।
Event ID সংরক্ষিত থাকে এবং operation repeated execution থেকে সুরক্ষিত রাখে।
Event সংরক্ষণ করার পর receiver দ্রুত successful HTTP response দেয়।
Retry, interval বৃদ্ধি এবং manual replay configured আছে।
Delivery history ও ID search support team-এর জন্য available।

Reliable event delivery configure করতে চান?

Event list, receiving endpoint এবং status change rule দিন। APIACE message structure, signature verification, repeated delivery এবং error control নির্ধারণে সাহায্য করবে।