Tải hóa đơn điện tử (https://hoadondientu.gdt.gov.vn/) Excel Vba (3 người xem)

Người dùng đang xem chủ đề này

  • ongke0711

    Thành viên gắn bó
    Tham gia
    7/9/06
    Bài viết
    2,453
    Được thích
    3,346
    Giới tính
    Nam
    Chào các bạn,
    Tôi ngồi mò mẫm mấy ngày mới tìm được cách tải hóa đơn điện tử từ trang https://hoadondientu.gdt.gov.vn/. Cách này có thể không chuyên nghiệp nhưng cũng giải quyết được vấn đề tải hóa đơn hàng loạt từ trang trên và ghi xuống Excel theo định dạng dễ tổng hợp dữ liệu sau này.
    - Tốc độ không nhanh như các ứng dụng python siêu nhanh.
    - Chưa tìm được các link tải file .xml hoặc .html
    - Chưa trải nghiệm qua các định dạng hóa đơn điện tử của các nhà cung cấp giải pháp khác nhau nên sẽ không đảm bảo chạy đúng 100%.
    - Chưa biết cách tích hợp code vượt Captcha của (Python, C#..) vào VBA nên phải nhập Captcha thủ công.
    Nói chung cái tool cũng giải quyết được việc tải hóa đơn hàng loạt :D .
    Tôi sẽ upload file demo không khóa (có khóa cũng như không) sau vì code còn lộn xộn lắm. Các bạn xem qua và đóng góp cách xử lý tốt hơn, gọn hơn nhé.


    *** 12/10/2024: Cập nhật sửa một đống lỗi.
    *** 15/10/2024: Cập nhật sửa lỗi Null và nhập ngày tháng.
    *** 16/10/2024: Thêm tính năng lưu User/Pass.
    *** 20/10/2024: Sửa lỗi hiển thị ngày tháng, sửa và thêm một số code phụ trợ.
    *** 28/10/2024: Sửa lấy hóa đơn từ máy tính tiền.
    *** 07/11/2024: Sửa code trích xuất dữ liệu, thêm cột so sánh.
    *** 13/11/2024: Dùng code của bạn Hesanbi để tự động nhập Captcha. Thêm code lấy link tra cứu của VNPT và BKAV.
    *** 05/02/2025: Thêm code tải file Zip và trích xuất dữ liệu hóa đơn từ file XML. Sửa một số lỗi.
    *** 23/02/2025: Sửa lỗi hiển thị sai <Trạng thái hóa đơn>.
     

    File đính kèm

    Lần chỉnh sửa cuối:
    Thỉnh thoảng phát sinh tí là lại rôm rả ngay. Phần thông báo lỗi bác thớt cá nhân hoá rồi nên phải mò lỗi. Phương án để thông báo từ web server mặc định sẽ dễ tìm ra nguyên nhân hơn.
    Bạn có thể giúp có cách nào tải được file zip hoá đơn của các bank không ? Các file zip mà tool tải về không có hoá đơn nào của bank
     
    Upvote 0
    Bạn có thể giúp có cách nào tải được file zip hoá đơn của các bank không ? Các file zip mà tool tải về không có hoá đơn nào của bank
    BIDV thì tải theo thông tin hoá đơn, Vietinbank thì đăng nhập vào banking rồi tải. Còn các NH khác mình chưa có điều kiện để thử.
    Bài đã được tự động gộp:

    File kia

    File bị lỗi hay sao ý, mình chọn tải tháng 1/2026 mà nó tự lấy năm 2025, với hồi trước sắp theo thứ tự phát hành mà giờ sắp lung tung
    Lỗi sắp lung tung là do bỏ dòng sort. Để dòng sort lại, lấy duy nhất 1 trường tdlap:asc thôi.
     
    Upvote 0
    BIDV thì tải theo thông tin hoá đơn, Vietinbank thì đăng nhập vào banking rồi tải. Còn các NH khác mình chưa có điều kiện để thử.
    Bài đã được tự động gộp:


    Lỗi sắp lung tung là do bỏ dòng sort. Để dòng sort lại, lấy duy nhất 1 trường tdlap:asc thôi.
    Cho mình xin file đó được không. Mình không biết chỉnh ở đâu. Mở VBA thì không thấy gì cả
     
    Upvote 0
    mình có trang của 1 bạn nào trong nhóm chia sẻ, tốn phí nhưng thấy cũng ổn áp lắm á, bạn có cần không
     
    Upvote 0
    Mình có tool thu phí, xài online không cần cài đặt, anh chị kế toán có nhu cầu liên hệ nhé
     

    File đính kèm

    Upvote 0
    File bị lỗi rồi hay sao ấy, mình vào tải thì bị báo lỗi "Lỗi web sever từ chối kết nối"
     
    Upvote 0
    Cứ bị lỗi ntn là sao ạ?. Help me
     

    File đính kèm

    • lỗi ngày.jpg
      lỗi ngày.jpg
      59.3 KB · Đọc: 103
    Upvote 0
    File bị lỗi rồi hay sao ấy, mình vào tải thì bị báo lỗi "Lỗi web sever từ chối kết nối"
    Lỗi này hôm trước mọi người đã khắc phục rồi. Do web không cho sắp xếp bảng kê theo nhiều trường nữa.
    Hóa đơn họ sắp xếp mặc định theo số hóa đơn, vậy nên code bỏ sort thì bảng kê bán ra đúng, bảng kê mua vào bị lộn ngày tháng. Các bạn khắc phục bằng cách đưa sort xuống phần option Mua, Bán là ổn.

    PHP:
    Sub taiHoaDon_Total(Optional rowTotalstart As Long = 3, Optional rowDetailStart As Long = 3)
    .....
        
        'Tham so cho request
        'sort = "tdlap:asc,khmshdon:asc,shdon:asc"
        
        size = 50
        ttxly = Me.cboKQKT
        tthai = Me.cboTTHD
        bearer = cToken
        url2 = ""
        If Me.optMua = True Then
            Url = "https://hoadondientu.gdt.gov.vn:30000/query/invoices/purchase?sort="
            url_sco = "https://hoadondientu.gdt.gov.vn:30000/sco-query/invoices/purchase?sort="
            loaiHD = 1 'mua
            sort = "tdlap:asc"
        Else
            Url = "https://hoadondientu.gdt.gov.vn:30000/query/invoices/sold?sort="
            url_sco = "https://hoadondientu.gdt.gov.vn:30000/sco-query/invoices/sold?sort="
            loaiHD = 2 'ban
            sort = "shdon:asc"
        End If
        
    .....
     
    Upvote 0
    Bạn giúp có cách nào tải bản thể pdf hoặc html hàng loạt như web được không
    Các hóa đơn không có mã của cơ quan thuế thì thường nhà cung cấp chỉ gửi thông tin không có file đính kèm. Một số ông gửi thông tin tên hàng hóa cũng không giống với hóa đơn. Cần có html trống đồng để in thì bạn có thể tìm hiểu code xuất file html từ thông tin trên bảng kê chi tiết hóa đơn. Như thế thì sẽ xuất được hàng loạt.
     
    Upvote 0
    Chào các bạn,
    Tôi ngồi mò mẫm mấy ngày mới tìm được cách tải hóa đơn điện tử từ trang https://hoadondientu.gdt.gov.vn/. Cách này có thể không chuyên nghiệp nhưng cũng giải quyết được vấn đề tải hóa đơn hàng loạt từ trang trên và ghi xuống Excel theo định dạng dễ tổng hợp dữ liệu sau này.
    - Tốc độ không nhanh như các ứng dụng python siêu nhanh.
    - Chưa tìm được các link tải file .xml hoặc .html
    - Chưa trải nghiệm qua các định dạng hóa đơn điện tử của các nhà cung cấp giải pháp khác nhau nên sẽ không đảm bảo chạy đúng 100%.
    - Chưa biết cách tích hợp code vượt Captcha của (Python, C#..) vào VBA nên phải nhập Captcha thủ công.
    Nói chung cái tool cũng giải quyết được việc tải hóa đơn hàng loạt :D .
    Tôi sẽ upload file demo không khóa (có khóa cũng như không) sau vì code còn lộn xộn lắm. Các bạn xem qua và đóng góp cách xử lý tốt hơn, gọn hơn nhé.


    *** 12/10/2024: Cập nhật sửa một đống lỗi.
    *** 15/10/2024: Cập nhật sửa lỗi Null và nhập ngày tháng.
    *** 16/10/2024: Thêm tính năng lưu User/Pass.
    *** 20/10/2024: Sửa lỗi hiển thị ngày tháng, sửa và thêm một số code phụ trợ.
    *** 28/10/2024: Sửa lấy hóa đơn từ máy tính tiền.
    *** 07/11/2024: Sửa code trích xuất dữ liệu, thêm cột so sánh.
    *** 13/11/2024: Dùng code của bạn Hesanbi để tự động nhập Captcha. Thêm code lấy link tra cứu của VNPT và BKAV.
    *** 05/02/2025: Thêm code tải file Zip và trích xuất dữ liệu hóa đơn từ file XML. Sửa một số lỗi.
    *** 23/02/2025: Sửa lỗi hiển thị sai <Trạng thái hóa đơn>.
    File bác thật hữu ích. Mình muốn donate tri ân như nào ạ?
     
    Lần chỉnh sửa cuối:
    Upvote 0
    Tải về dữ liệu hóa đơn mua vào thì được nhưng hóa đơn bán ra bị lỗi. Có bác nào bị giống mình ko ạ ?!?
     
    Upvote 0
    Tải về dữ liệu hóa đơn mua vào thì được nhưng hóa đơn bán ra bị lỗi. Có bác nào bị giống mình ko ạ ?!?
    Bạn miêu tả hoặc chụp hình lỗi lên xem nào.
    Hiện tại tôi test thì bị lỗi tải hóa đơn từ máy tính tiền, sẽ treo một lúc và trả về kết quả lỗi. Cái này là lỗi thường gặp từ trang chủ không liên quan đến code của ứng dụng.
     
    Lần chỉnh sửa cuối:
    Upvote 0
    Screenshot_1.png
    Các hóa đơn không có mã của cơ quan thuế thì thường nhà cung cấp chỉ gửi thông tin không có file đính kèm. Một số ông gửi thông tin tên hàng hóa cũng không giống với hóa đơn. Cần có html trống đồng để in thì bạn có thể tìm hiểu code xuất file html từ thông tin trên bảng kê chi tiết hóa đơn. Như thế thì sẽ xuất được hàng loạt.
    Sửa theo bạn thì chạy code được nhưng khi chạy tới cuối lại báo lỗi như cũ và không xuất được file.
     
    Upvote 0
    Bạn miêu tả hoặc chụp hình lỗi lên xem nào.
    Hiện tại tôi test thì bị lỗi tải hóa đơn từ máy tính tiền, sẽ treo một lúc và trả về kết quả lỗi. Cái này là lỗi thường gặp từ trang chủ không liên quan đến code của ứng dụng.
    Chắc là trang chủ đã điều chỉnh gì đó nên ko còn tương thích với code của file. Có khi nào họ biết mình truy cập lấy dữ liệu chùa nên siết lại ko ta :))))) Hóa đơn mua vào thì ok, những hóa đơn bán ra ko lấy được dữ liệu về được. Chỉ thấy thông báo hiển thị "lỗi từ ngày ... đến ngày ...." thôi ạ. Mong các bác hổ trợ giúp!
     
    Upvote 0
    Upvote 0
    Chắc là trang chủ đã điều chỉnh gì đó nên ko còn tương thích với code của file. Có khi nào họ biết mình truy cập lấy dữ liệu chùa nên siết lại ko ta :))))) Hóa đơn mua vào thì ok, những hóa đơn bán ra ko lấy được dữ liệu về được. Chỉ thấy thông báo hiển thị "lỗi từ ngày ... đến ngày ...." thôi ạ. Mong các bác hổ trợ giúp!
    Hóa đơn mua vào cũng lỗi rồi ấy bạn. Như hình mình gửi
     
    Upvote 0
    Chào các bạn,
    Tôi ngồi mò mẫm mấy ngày mới tìm được cách tải hóa đơn điện tử từ trang https://hoadondientu.gdt.gov.vn/. Cách này có thể không chuyên nghiệp nhưng cũng giải quyết được vấn đề tải hóa đơn hàng loạt từ trang trên và ghi xuống Excel theo định dạng dễ tổng hợp dữ liệu sau này.
    - Tốc độ không nhanh như các ứng dụng python siêu nhanh.
    - Chưa tìm được các link tải file .xml hoặc .html
    - Chưa trải nghiệm qua các định dạng hóa đơn điện tử của các nhà cung cấp giải pháp khác nhau nên sẽ không đảm bảo chạy đúng 100%.
    - Chưa biết cách tích hợp code vượt Captcha của (Python, C#..) vào VBA nên phải nhập Captcha thủ công.
    Nói chung cái tool cũng giải quyết được việc tải hóa đơn hàng loạt :D .
    Tôi sẽ upload file demo không khóa (có khóa cũng như không) sau vì code còn lộn xộn lắm. Các bạn xem qua và đóng góp cách xử lý tốt hơn, gọn hơn nhé.


    *** 12/10/2024: Cập nhật sửa một đống lỗi.
    *** 15/10/2024: Cập nhật sửa lỗi Null và nhập ngày tháng.
    *** 16/10/2024: Thêm tính năng lưu User/Pass.
    *** 20/10/2024: Sửa lỗi hiển thị ngày tháng, sửa và thêm một số code phụ trợ.
    *** 28/10/2024: Sửa lấy hóa đơn từ máy tính tiền.
    *** 07/11/2024: Sửa code trích xuất dữ liệu, thêm cột so sánh.
    *** 13/11/2024: Dùng code của bạn Hesanbi để tự động nhập Captcha. Thêm code lấy link tra cứu của VNPT và BKAV.
    *** 05/02/2025: Thêm code tải file Zip và trích xuất dữ liệu hóa đơn từ file XML. Sửa một số lỗi.
    *** 23/02/2025: Sửa lỗi hiển thị sai <Trạng thái hóa đơn>.
    Em chào anh, em cảm ơn anh đã làm ra file này như vị cứu tinh cho cộng đồng kế toán. nhưng năm 2026 em tải không được. nó báo lỗi ạ.
     
    Upvote 0
    Mình cũng bị thế này, nhưng mình kh rõ cách khắc phục, cũng bị báo lỗi web từ chối kết nối, nhưng không biết xoá code sort ở đâu :(

    1771901009195.png
     
    Upvote 0
    em cũng đang gặp lỗi siver từ chối kết nối, cảm ơn các bác đã gửi file fix lên ạ
     
    Upvote 0
    Anh chị có sửa được lỗi ở cột trạng thái hóa đơn không ạ, hôm trước nó hiện thị hóa mới hoặc hóa đơn thay thế ạ, hôm nay thì hiện thị như hình
    1771919571771.png
     
    Upvote 0
    sau khi mình mò mò thì mình sửa được rồi, mình thấy file đã tải đc dữ liệu:
    ------
    Xóa file đính kèm đã xóa
     
    Chỉnh sửa lần cuối bởi điều hành viên:
    Upvote 0

    File đính kèm

    • 1772208726282.png
      1772208726282.png
      51.7 KB · Đọc: 41
    • 1772208809073.png
      1772208809073.png
      199.9 KB · Đọc: 54
    Upvote 0
    Sao mình không unzip được nhỉ, nó ra thư mục trống, ai biết sửa không ạ?
     
    Upvote 0
    Mình bị lỗi như vầy thì phải làm sao ạ? Mong được a/c giúp đỡ1772721545440.png
     
    Upvote 0
    Trên huvisoft.com có thể xem tải được các hóa đơn của bkav và viettel. Bác nào có cách, hướng xử lý chia sẻ lên để mọi người tham khảo hoàn thiện thêm code nhé.
     
    Upvote 0
    Code đoạn này có tác dụng: Lấy mã tra cứu theo trường tương ứng với MSTTCGP gọi là trường Chính. Nếu tra cứu theo trường mặc định này mà không có kết quả thì trả theo toàn bộ trường trong list.
    - Mình gặp trường hợp nếu tra theo trường Chính thì có kết quả: PC-250119174705-00263836502.
    - Nhưng Macro vẫn thực thi tiếp đoạn code sau cho ra kết quả của trường khác trong list: "Sai FKey"
    Các bác vào hỗ trợ giúp tình huống này với.

    PHP:
            'Khai bao cac bien:
            Dim MTC As String             'Ma tra cuu
            Dim Keymtc As String      'Tên truong ma tra cuc
    
        …………….
    
            'Lay thong tin tai truong: ttkhac
            If Not dataArray(l)("ttkhac") Is Nothing Then
            Set subItms = dataArray(l)("ttkhac")
          
            For Each itm In subItms
            'TH tim theo key cho truoc
            If Len(Keymtc) > 0 Then
                If itm("ttruong") = Keymtc And dicTenCotTC.Exists(Keymtc) Then
                        ws.Cells(row, 56).value = itm("dlieu")
                        ws.Cells(row, 57).value = "True" 'Dung key theo MST
                        found = True '\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
                        Exit For
                End If
              
                MTC = ws.Cells(row, 56).value
                If Len(MTC) = 0 Then
                        If dicTenCotTC.Exists(itm("ttruong")) Then
                            ws.Cells(row, 56).value = itm("dlieu")
                            ws.Cells(row, 58).value = itm("ttruong")
                            ws.Cells(row, 57).value = "Sai Fkey" 'MST co truong tra cuu nhung không dung
                            Exit For
                        End If
                End If
              
            Else 'TH tim theo toan bo list
    .................
            End If
            Next
     
    Lần chỉnh sửa cuối:
    Upvote 0
    Code đoạn này có tác dụng: Lấy mã tra cứu theo trường tương ứng với MSTTCGP gọi là trường Chính. Nếu tra cứu theo trường mặc định này mà không có kết quả thì trả theo toàn bộ trường trong list.
    - Mình gặp trường hợp nếu tra theo trường Chính thì có kết quả: PC-250119174705-00263836502.
    - Nhưng Macro vẫn thực thi tiếp đoạn code sau cho ra kết quả của trường khác trong list: "Sai FKey"
    Các bác vào hỗ trợ giúp tình huống này với.
    Mình đã khắc phục được rồi.
     
    Upvote 0
    Hiện giờ mình thấy có chứng từ thuế thu nhập cá nhân cũng đã tích hợp trên trang thuedientu, mình muốn tải danh sách này về Excel. Mọi người có file tải dữ liệu này xin chia sẻ giúp mình, mình sẽ rất biết ơn.
     

    File đính kèm

    • 1773410444453.png
      1773410444453.png
      210 KB · Đọc: 25
    Upvote 0
    nè bác file gốc sửa cái đó thôi. Cảm ơn

    ongke0711

    Cảm ơn Ad nhiều ạ. Bản này mình thấy chạy ok rồi ạ. Nhưng mà theo ngày thì đang loạn xạ , Ad có thể hỗ trợ khi xuất ra sẽ sort theo cột thời gian ngày lập hóa đơn, hoặc ngày lập ký số được ko ạ ? Mình muốn theo ngày nào trước thì xuất ra trước, ngày sau thì ra sau, hoạc có thể chỉ minfh chỉ code chỗ nào được ko ạ....! Xin cảm ơn Ad ạ !
     
    Upvote 0
    Cảm ơn Ad nhiều ạ. Bản này mình thấy chạy ok rồi ạ. Nhưng mà theo ngày thì đang loạn xạ , Ad có thể hỗ trợ khi xuất ra sẽ sort theo cột thời gian ngày lập hóa đơn, hoặc ngày lập ký số được ko ạ ? Mình muốn theo ngày nào trước thì xuất ra trước, ngày sau thì ra sau, hoạc có thể chỉ minfh chỉ code chỗ nào được ko ạ....! Xin cảm ơn Ad ạ !
    Bạn mở cửa sổ Vba, nhấn F2, dán tên sub: taiHoaDon_Total vào thanh tìm kiếm. Xong sửa code như ở đây 613 là sắp theo thứ tự ngày tháng theo 2 phần:
    - Phần 1 là hóa đơn Có mà + Không mã; Phần 2 là hóa đơn từ máy tính tiền.
    - Phương án 2 là chờ nó tải dữ liệu xong thì vào sắp xếp theo ngày tháng. Có điều là sau khi sắp xếp thì thứ tự hóa đơn xuất hiện ở sheet Tổng hợp và Chi tiết sẽ khác nhau.
     
    Upvote 0
    Hiện giờ mình thấy có chứng từ thuế thu nhập cá nhân cũng đã tích hợp trên trang thuedientu, mình muốn tải danh sách này về Excel. Mọi người có file tải dữ liệu này xin chia sẻ giúp mình, mình sẽ rất biết ơn.
    không biết ongke0711 có thể giúp một file để tải dữ liệu này không, mình cũng đang cần về việc tải dữ liệu này.
     
    Upvote 0

    Bài viết mới nhất

    Back
    Top Bottom