Skip to content

Xác thực Hóa đơn

Xác minh tính xác thực và trạng thái của hóa đơn trực tiếp với Cơ quan Thuế Việt Nam (CQT).

Tổng quan

Tính năngMô tả
Dịch vụTVanService.validateInvoice()
Nguồn Dữ liệuCQT (Cơ quan Thuế)
Trường hợp Sử dụngXác minh hóa đơn nhận được

Trường hợp Sử dụng

  • Xác thực hóa đơn nhà cung cấp trước khi thanh toán
  • Xác minh hóa đơn chưa bị hủy
  • Kiểm tra trạng thái thay thế hóa đơn
  • Kiểm toán xác minh tuân thủ

Xác thực Hóa đơn

typescript
import { TVanService } from '@nx-3rd/t-van';

async validateInvoice(invoiceNumber: string, sellerTaxCode: string) {
  const result = await this.tvanService.validateInvoice({
    invoiceNumber: invoiceNumber,
    sellerTaxCode: sellerTaxCode,
    invoiceDate: new Date('2024-01-15'),
  });

  return {
    isValid: result.isValid,
    invoiceStatus: result.status,
    totalAmount: result.totalAmount,
    buyerTaxCode: result.buyerTaxCode,
  };
}

Cấu trúc Phản hồi

json
{
  "isValid": true,
  "status": "VALID",
  "invoiceNumber": "AA/24E0001234",
  "sellerTaxCode": "0123456789",
  "sellerName": "Công ty ABC",
  "buyerTaxCode": "9876543210",
  "buyerName": "Công ty Của Bạn",
  "invoiceDate": "2024-01-15",
  "totalAmount": 1100000,
  "vatAmount": 100000
}

Trạng thái Hóa đơn

Trạng tháiMô tả
VALIDHóa đơn hợp lệ và được chấp nhận
CANCELLEDHóa đơn đã bị hủy
REPLACEDHóa đơn đã bị thay thế bởi hóa đơn khác
NOT_FOUNDKhông tìm thấy hóa đơn trong CQT

Luồng Xác thực

REST API

http
POST /api/t-van/invoice/validate
Content-Type: application/json

{
  "invoiceNumber": "AA/24E0001234",
  "sellerTaxCode": "0123456789",
  "invoiceDate": "2024-01-15"
}

Xử lý Lỗi

typescript
try {
  const result = await this.tvanService.validateInvoice(params);
  return result;
} catch (error) {
  if (error.code === 'INVOICE_NOT_FOUND') {
    return { isValid: false, status: 'NOT_FOUND' };
  }
  throw error;
}

Các Thực hành Tốt nhất

Thực hànhMô tả
Xác thực trước khi thanh toánLuôn kiểm tra trước khi trả tiền cho nhà cung cấp
Giữ hồ sơ xác thựcGhi lại tất cả kết quả xác thực
Tái xác thực định kỳHóa đơn có thể bị hủy sau này
Cảnh báo khi thất bạiThông báo khi xác thực thất bại

Liên quan

Proprietary and Confidential. Unauthorized copying, distribution, or use of this software is strictly prohibited.