Lộ trình cá nhânBuild Website Động cùng AI & Supabase: Full-Stack Web App, Auth, Database & Thanh toán Tự động
5/8

Giáo trình tự học miễn phí · Dịch vụ hỗ trợ theo nhu cầu.

Bài 0535phút ước tínhThực chiến · Builder

5. Tích Hợp Cổng Thanh Toán VietQR & SePay: Kích Hoạt Đơn Hàng Tự Động Trong 3 Giây

Tự động hóa dòng tiền: Tạo mã QR thanh toán động ngân hàng Việt Nam (VietQR), bắt Webhook giao dịch và mở khóa khóa học/dịch vụ tự động.

💳 Quy Trình Thanh Toán VietQR Tự Động 4 Bước

  1. Tạo đơn hàng: Hệ thống sinh đơn hàng với mã giao dịch duy nhất (Ví dụ: AITG1082).
  2. Sinh mã VietQR động: Render mã QR chứa sẵn số tài khoản, số tiền và nội dung chuyển khoản.
  3. Khách hàng quét mã: Chuyển khoản từ ứng dụng ngân hàng bất kỳ (Vietcombank, Techcombank, MBBank).
  4. Bắt Webhook SePay: Tiền vào tài khoản $ ightarrow$ SePay bắn Webhook sang Supabase Edge Function $ ightarrow$ Hệ thống tự động nâng cấp tài khoản VIP trong 3 giây.
example.py
// supabase/functions/payment-webhook/index.ts
// Xử  Webhook SePay an toàn
import { serve } from "https://deno.land/std@0.168.0/http/server.ts"
import { createClient } from 'https://esm.sh/@supabase/supabase-js@2'

serve(async (req) => {
  const payload = await req.json();
  const apiKey = req.headers.get('Authorization');
  
  if (apiKey !== `Apikey ${Deno.env.get('SEPAY_WEBHOOK_KEY')}`) {
    return new Response('Unauthorized', { status: 401 });
  }

  const { content, transferAmount } = payload;
  // Bóc tách  đơn hàng từ nội dung chuyển khoản ( dụ: AITG1082)
  const match = content.match(/AITG\d+/i);
  if (match) {
    const orderCode = match[0].toUpperCase();
    const supabase = createClient(Deno.env.get('SUPABASE_URL')!, Deno.env.get('SUPABASE_SERVICE_ROLE_KEY')!);
    
    // Cập nhật trạng thái đơn hàng thành PAID
    await supabase.from('orders').update({ status: 'paid', paid_at: new Date() }).eq('code', orderCode);
  }

  return new Response(JSON.stringify({ success: true }), { headers: { 'Content-Type': 'application/json' } });
});
Thực hành

Thực hành và tự đánh giá

Tạo một mã VietQR động trên ứng dụng của bạn và kiểm tra hàm xử lý Webhook với giao dịch thử nghiệm.

⚖️ Bản quyền sở hữu trí tuệ: © 2026 AI Tinh Gọn (aitinhgon.vn) · Giấy phép Creative Commons CC BY-NC-ND 4.0. Cho phép tự học cá nhân, nghiêm cấm thương mại hóa hoặc bán lại. Giáo trình mở →

Tiến độ tự học lưu trên trình duyệt này. Chỉ đánh dấu khi đã kiểm tra sản phẩm thực hành.