বিশ্বস্ত
ডেভেলপার

API ডকুমেন্টেশন

সব রিকোয়েস্টে X-Api-Key হেডার লাগবে। কী পাবেন সেটিংস পাতায়।

১. অর্ডার তৈরি করুন

বিশ্বস্ত একটি ইউনিক অঙ্ক ফেরত দেবে। কাস্টমারকে ঠিক সেই অঙ্কটাই পাঠাতে বলবেন — এক পয়সা এদিক-ওদিক হলে মিলবে না, আর সেটাই দুই অর্ডার গুলিয়ে যাওয়া ঠেকায়।

POST https://biswasto.com/api/order.php X-Api-Key: your_api_key Content-Type: application/json { "order_ref": "INV-1047", "amount": 1250.00, "customer_name": "রুমানা আক্তার", "customer_phone": "01712345678", "provider": "bkash", "callback_url": "https://yourshop.com/callback" } // 201 Created { "ok": true, "order_ref": "INV-1047", "amount": 1250.00, "payable_amount": 1250.07, // ← এই অঙ্কটাই কাস্টমারকে বলুন "status": "pending", "expires_at": "2026-08-18 15:17:00" }

একই order_ref আবার পাঠালে নতুন অঙ্ক তৈরি হয় না — আগেরটাই ফেরত আসে। তাই রিট্রাই নিরাপদ।

২. অবস্থা দেখুন

GET https://biswasto.com/api/order.php?order_ref=INV-1047 X-Api-Key: your_api_key { "ok": true, "status": "verified", "verified": true, "verified_at": "2026-08-18 14:32:11", "verify_method": "auto" }

৩. ওয়েবহুক

অর্ডার যাচাই হওয়ামাত্র আপনার ঠিকানায় POST যাবে। পোলিং করার দরকার নেই।

POST https://yourshop.com/callback X-Biswasto-Signature: 3f9a... (HMAC-SHA256) { "event": "order.verified", "order_ref": "INV-1047", "amount": 1250.00, "paid_amount": 1250.07, "transaction_id": 4821, "verify_method": "auto", "verified_at": "2026-08-18 14:32:11" }

সিগনেচার অবশ্যই যাচাই করবেন — নইলে যে কেউ আপনার callback URL-এ ভুয়া পেমেন্ট পাঠাতে পারবে:

$raw = file_get_contents('php://input'); $sig = $_SERVER['HTTP_X_BISWASTO_SIGNATURE'] ?? ''; if (!hash_equals(hash_hmac('sha256', $raw, $webhookSecret), $sig)) { http_response_code(401); exit; } $data = json_decode($raw, true); // এখন নিরাপদে অর্ডারটি ডেলিভারির জন্য চিহ্নিত করুন

৪. WHMCS-এ যুক্ত করা

  1. biswasto.php ফাইলটি /modules/gateways/ ফোল্ডারে রাখুন।
  2. WHMCS অ্যাডমিন → Setup → Payments → Payment Gateways → Biswasto সক্রিয় করুন।
  3. API Key বসিয়ে সেভ করুন।
  4. Callback URL হিসেবে https://biswasto.com/modules/gateways/callback/biswasto.php ব্যবহার হবে।

৫. অ্যান্ড্রয়েড অ্যাপ

পার্সোনাল নম্বরের জন্য অ্যাপটি ফোনের পেমেন্ট নোটিফিকেশন পড়ে এখানে পাঠায়। ডিভাইস টোকেন পাবেন সেটিংস পাতায়, প্রতিটি নম্বরের পাশে।

POST https://biswasto.com/api/ingest.php X-Device-Token: your_device_token { "trx_id": "BKA7X92QLM", "amount": 1250.07, "sender": "01712345678", "provider": "bkash", "raw_message": "You have received Tk 1,250.07 ..." } // শুধু raw_message পাঠালেও চলবে — সার্ভার নিজেই পড়ে নেবে। // অ্যাপ বেঁচে আছে জানাতে: { "ping": true }

একই trx_id দ্বিতীয়বার এলে সার্ভার "status": "duplicate" ফেরত দেয় এবং কোনো অর্ডার যাচাই হয় না। অ্যাপ এটি সফল হিসেবে ধরে নেবে, বারবার পাঠাবে না।