SBUT PAY SETUP
SBUT PAY SETUP
সংযোগ ও SQL
প্রথমে অবস্থা দেখুন। তারপর প্রয়োজনীয় SQL কপি করুন।
Supabase connection
Project: arsdjkylupklayojckbi
অবস্থা যাচাই করতে নিচের বাটন চাপুন।
নতুন database: SQL 001 একবার চালান। এতে latest update আছে; পরে 002 লাগবে না।
TXT ডাউনলোডলোড হচ্ছে…
iPhone দিয়ে চালু করার ধাপ
- Supabase Dashboard-এ সঠিক project খুলুন। SQL Editor-এ নতুন query খুলে SQL পেস্ট করে Run চাপুন।
- Authentication / Sign In / Providers থেকে Phone চালু করুন এবং আপনার SMS provider-এর server credentials যুক্ত করুন। OTP পাঠানো ও যাচাই করা পরীক্ষা করুন।
- PIN login-এর জন্য minimum password length 6 প্রয়োজন। Login rate limits ও CAPTCHA/abuse protection আলাদাভাবে configure করুন। ফোন ও transaction PIN কখনো console log করবেন না।
- SQL চালানোর পরে উপরে সংযোগ পরীক্ষা করুন। Wallet schema প্রস্তুত এবং Phone OTP চালু—দুটিই দেখা প্রয়োজন।
- দুটি verified test account দিয়ে ছোট অঙ্কে send ও receive পরীক্ষা করুন। ব্যালেন্স, fee, transaction ID এবং দুই ডিভাইসের history মিলিয়ে নিন।
Cloudflare Direct Upload
এই নতুন SBUT_PAY_MASTER.zip-এর root-এ index.html ও assets আছে। ZIP-টি সরাসরি Workers & Pages / Pages / Direct Upload-এ দিন। আর আলাদা folder compress করতে হবে না। পুরোনো deployment-এর ফাইলের সঙ্গে মেশাবেন না।
লগ নীতি
Debug ও analytics logging নেই। PIN, OTP, NID, ছবি বা session token log হয় না। Client-এ শুধু গুরুতর ত্রুটির code ও সময় সাময়িক memory-তে থাকে, সর্বোচ্চ ১০টি; server-এ পাঠায় না। লেনদেনের ledger বজায় থাকবে। Supabase/Cloudflare নিজস্ব infrastructure log এখানে থেকে বন্ধ করা হয় না।
যেগুলো এখনো যুক্ত করা হয়নি
রিচার্জ provider, স্বয়ংক্রিয় NID/OCR ও liveness যাচাই, FCM/push, biometric login এবং bank cash-out যুক্ত নয়। কোনোটি সফল হয়েছে বলে দেখানো বা ভুয়া ব্যালেন্স তৈরি করা হবে না।
Admin-এর জন্য
প্রথমে কাগজপত্র এবং প্রাপ্ত টাকা মিলিয়ে নিন। শুধু trusted SQL Editor থেকে সঠিক UUID দিয়ে চালাবেন।
-- KYC অনুমোদন:
select wallet_private.approve_kyc('USER_UUID');
-- মার্চেন্ট আবেদন অনুমোদন:
begin;
update public.sbut_merchant_applications set status='approved' where user_id='USER_UUID';
update public.sbut_users set role='merchant' where id='USER_UUID' and kyc='approved';
commit;
-- মার্চেন্টের প্রকৃত deposit পাওয়া নিশ্চিত হওয়ার পর (amount paisa):
select wallet_private.fund_merchant('MERCHANT_UUID',1000000,'UNIQUE_REFERENCE_UUID');বোনাস ও কমিশনের জন্য আগে যথাযথ তহবিল প্রয়োজন। অর্থের reconciliation ছাড়া ledger balance পরিবর্তন করবেন না।