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

Liên hệ QC

ongke0711

Thành viên gắn bó
Tham gia
7/9/06
Bài viết
2,230
Được thích
2,950
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.
 

File đính kèm

  • TaiHoaDonDienTu_v4_luuUserPass.xlsm
    264.1 KB · Đọc: 71
Lần chỉnh sửa cuối:
Tôi có đưa mục này vào comboBox luôn rồi mà bạn. Không ra kết quả sao bạn?

View attachment 304910

Tôi kiểm tra 600 mấy dòng mà không thấy dòng bị lỗi ngày. Quái thật.. :D .
View attachment 304911
Dạ không ra được hóa đơn từ máy tính tiền, dù vẫn có mục 8 - Tổng cục thuế đã nhận hóa đơn có mã khởi tạo từ máy tính tiền ở sheet LinkTraCuu á anh.
 
Upvote 0
Cảm ơn bạn, tôi không để ý chỗ này. Để tôi sửa lại xem như thế nào.
Mình có cách nào tự người dùng tự bổ sung vào không? để thuận tiện tải và tra cứu hóa đơn gốc, nhiều hóa đơn mà mình chưa biết đến. Cám ơn ongke0711 rất nhiều đã lắng nghe, ngày càng hoàn thiện hơn
- VETC (Hóa đơn không mã, trạm thu phí) có mã trong File XML và Link tra cứu https://tracuuhoadon.vetc.com.vn/
- MSTTCGP - 102519041thì tải File XML lên trang https://ihoadon.vn/kiem-tra/?lang=vn là tải được hóa đơn gốc
- Hóa đơn Chailease (ngân hàng vay tín chấp) thì ta gợi ý Link tra cứu https://ebill.chaileasetrade.com.vnhttps://ebill.chailease.com.vn cái bắt buộc phải có tài khoản mới tải được
...
 
Upvote 0
@ongke0711 có vẻ như ứng dụng anh viết có nhiều vấn đề.
Nhưng vấn đề em thấy lớn nhất là cần giảm tải đến Server dữ liệu. Nếu có 100, 200, người dùng, Server tạm xử lý được.
Nhưng 5000, 10000 người dùng, thì bên Server họ sẽ tính đến phương án chặn IP những người dùng gửi quá nhiều yêu cầu, nếu quá trình còn tiếp diễn.

Phương án tải dữ liệu mà không lưu trữ và xét lại ngày nào sẽ cần tải thêm, thì sẽ gây tốn kém cho nguồn cấp.
Trang hệ thống hóa đơn điện tử này hơi keo kiệt trong vấn đề về băng thông. Và thuật toán mã nguồn server của họ cũng có vấn đề cho việc trả về dữ liệu liên tục.


@dinhhuy thiết đặt như danh sách này là cách bạn muốn. Nhưng để tách được dữ liệu như danh sách này cần tạo giải thuật hơi rối một tí. Với danh sách này bạn có thể tự động điền thêm, khi có các hóa đơn mới chưa biết.

Đặt cột
Cột DS
Tiêu đề
Giá trị
Tiêu đề chính
key1
key2
key3
1
STT
1​
[STT]​
6
MST Nhà cung cấp
11111111​
nbmst​
2
Ký hiệu mẫu số HĐ
1​
khmshdon​
3
Ký hiệu hóa đơn
C11AAA​
khhdon​
4
Số hóa đơn
11111​
shdon​
14
Cơ quan thuế
7404​
cqt​
cttkhac​
ID mẫu hóa đơn​
Mua vào​
InvoiceTemplateID​
Là giảm thuế​
Mua vào​
IsTaxReduction​
21
Là giảm thuế 43​
Mua vào​
IsTaxReduction43​
ID tham chiếu​
Mua vào​
RefID​
Mô tả giảm thuế​
Mua vào​
TaxReductionDescription​
22
Số tiền Chữ số thập phân​
Mua vào​
AmountDecimalDigits​
Số tiền Chữ số thập phân OC​
Mua vào​
AmountOCDecimalDigits​
Chữ số thập phân hệ số​
Mua vào​
CoefficientDecimalDigits​
23
Chữ số thập phân tỷ giá hối đoái​
Mua vào​
ExchangRateDecimalDigits​
Tiền tệ chính​
Mua vào​
MainCurrency​
Số lượng Chữ số thập phân​
Mua vào​
QuantityDecimalDigits​
Đơn giá Chữ số thập phân​
Mua vào​
UnitPriceDecimalDigits​
Đơn giá OC Chữ số thập phân​
Mua vào​
UnitPriceOCDecimalDigits​
ID ứng dụng​
Mua vào​
AppID​
ID giao dịch​
Mua vào​
TransactionID​
16
Đơn vị tiền tệ
VND​
dvtte​
15
Hóa đơn
1​
hdon​
Hồ Sơ gốc có mã
xxxxxxxx-5719-456d-b949-7b58fd55670d​
hsgcma​
Hồ Sơ gốc
xxxxxxxx-f0d1-420b-ad59-81bc6bc28164​
hsgoc​
Hình thức hóa đơn
1​
hthdon​
Hình thức thanh toán
9​
htttoan​
Id
xxxxxxx-4283-ad2b-bfd4e0a162f5​
id​
Id Thuê Bao
idtbao​
Kí hiệu đơn
khdon​
Ký hiệu hóa đơn gốc
khhdgoc​
Ký hiệu mã số hóa đơn gốc
khmshdgoc​
Loại hóa đơn gốc
lhdgoc​
Mã hóa đơn
0041612B9Dxxxxxxxx4497C89C6E69CFA8F9​
mhdon​
Mã thông điệp
mtdiep​
Mã thông điệp đối chiếu
V01001091xxxxxxx3063644739A6AC644F08BB106​
mtdtchieu​
8
Địa chỉ người bán
Số 51/9 Đại Lộ xxxxx, Tổ 15, Khu phố xxxxx, Phường xxxxx, Thành phố xxxx , Tỉnh xxxx, Việt Nam​
nbdchi​
Hợp đồng kinh tế ngày (Người bán)
nbhdktngay​
Căn cứ hợp đồng kinh tế số (Người bán)
nbhdktso​
Hợp đồng số (Người bán)
nbhdso​
Lệnh điều chuyển nội bộ
nblddnbo​
Phương tiện vận chuyển (Người bán )
nbptvchuyen​
Số tài khoản người bán
2xxxx770002​
nbstkhoan​
7
Nhà cung cấp
CÔNG TY TNHH MTV xxxxxxx​
nbten​
Người bán tiếp nhận hàng
xxxxxxxxxxxxx​
nbtnhang​
Tên người vận chuyển (Người bán)
nbtnvchuyen​
[]​
nbttkhac​
24
Quận, huyện người bán​
Bán ra
Quận, huyện người bán​
25
Tỉnh/Thành phố người bán​
Bán ra
Tỉnh/Thành phố người bán​
Mã quốc gia người bán​
Bán ra
Mã quốc gia người bán​
Link tra cứu người bán​
Bán ra
Link tra cứu người bán​
Tên ngân hàng công ty có chi nhánh​
Mua vào​
CompanyBankNameWithBranch​
24
Địa chỉ người bán​
Mua vào​
SellerAddress​
25
Tài khoản ngân hàng của người bán​
Mua vào​
SellerBankAccount​
Tên ngân hàng của người bán​
Mua vào​
SellerBankName​
Số điện thoại của người bán​
Mua vào​
SellerPhoneNumber​
Ngày cấp mã
14/09/2024​
ncma​
Ngày cập nhật
14/09/2024​
ncnhat​
Người cập nhật
abc​
ngcnhat​
Ngày ký
14/09/2024​
nky​
Địa chỉ người mua
Số x, ấp x, Xã x, Huyện x, Tỉnh x, Việt Nam​
nmdchi​
Mã số thuế người mua
1111111111​
nmmst​
Số tài khoản người mua
nmstkhoan​
Tên người mua
xxxxxxxxx​
nmten​
Người mua tiếp nhận hàng
nmtnhang​
Họ tên người mua
nmtnmua​
[]​
nmttkhac​
26
Số fax người mua​
Bán ra
Số fax người mua​
Quận Huyện người mua​
Bán ra
Quận Huyện người mua​
Tỉnh/Thành phố người mua​
Bán ra
Tỉnh/Thành phố người mua​
Mã quốc gia người mua​
Bán ra
Mã quốc gia người mua​
Loại giấy tờ người mua​
Bán ra
Loại giấy tờ người mua​
Số giấy tờ người mua​
Bán ra
Số giấy tờ người mua​
Ngày sinh người mua​
Bán ra
Ngày sinh người mua​
26
Tài khoản thư điện tử SIDI​
Mua vào​
AccountObjectEmailAddressSIDI​
Ngày lập
14/09/2024​
ntao​
Ngày tiếp nhận
14/09/2024​
ntnhan​
Phiên bản
2.0.1​
pban​
Phương thức gửi
1​
ptgui​
Số hóa đơn gốc
shdgoc​
Tính chất
1​
tchat​
5
Thời điểm lập hóa đơn
14/09/2024​
tdlap​
17
Tỷ giá
1.0​
tgia​
9
Tổng tiền chưa thuế
67,442,708.0​
tgtcthue​
10
Tổng tiền thuế
5,395,417.0​
tgtthue​
Tổng tiền thanh toán bằng chữ
Ba mươi hai triệu tám trăm sáu mươi sáu nghìn năm trăm sáu mươi đồng​
tgtttbchu​
12
Tổng tiền thanh toán
5,395,417.0​
tgtttbso​
Tên hóa đơn
HÓA ĐƠN ĐIỆN TỬ GIÁ TRỊ GIA TĂNG (ND123 - TT78)​
thdon​
Tháng lập
202407​
thlap​
thttlphi​
thttltsuat​
27
Thuế suất​
tsuat​
28
Tiền​
thtien​
Tiền thuế​
tthue​
Giá trị thuế suất​
gttsuat​
HÓA ĐƠN ĐIỆN TỬ GIÁ TRỊ GIA TĂNG (ND123 - TT78)​
tlhdon​
11
Tổng tiền chiết khấu thương mại
0​
ttcktmai​
18
Trạng thái hóa đơn
Hóa đơn mới​
tthai​
Thông tin khác​
[]​
ttkhac​
Biển số​
Bán ra
Biển số​
29
TG xuất​
Bán ra
TG xuất​
Tuyến​
Bán ra
Tuyến​
Dịch vụ​
Bán ra
Dịch vụ​
Số đơn hàng​
Bán ra
Số đơn hàng​
Ghi chú​
Bán ra
Ghi chú​
Trạng thái thanh toán​
Bán ra
Trạng thái thanh toán​
Mã số bí mật​
Bán ra
Mã số bí mật​
Ghi chú hóa đơn​
Bán ra
Ghi chú hóa đơn​
29
Danh sách tên cổ phiếu​
1​
Mua vào​
ListStockName​
1​
tttbao​
ttttkhac​
30
Tổng tiền thuế tiêu thụ đặc biệt​
1,000,000.0​
Bán ra
Tổng tiền thuế tiêu thụ đặc biệt​
31
Tổng tiền phí​
1,000,000.0​
Bán ra
Tổng tiền phí​
30
Tổng số tiền​
1,000,000.0​
Mua vào​
TotalAmount​
Tổng số tiền bằng chữ (EN)​
Mua vào​
TotalAmountInWordsByENG​
31
Tổng số tiền chưa VAT​
1,000,000.0​
Mua vào​
TotalAmountWithoutVAT​
Tổng số tiền chưa VATOC​
1,000,000.0​
Mua vào​
TotalAmountWithoutVATOC​
Tổng số tiền chiết khấu​
1,000,000.0​
Mua vào​
TotalDiscountAmount​
Tổng số tiền chiết khấu OC​
1,000,000.0​
Mua vào​
TotalDiscountAmountOC​
Tổng số tiền bán​
1,000,000.0​
Mua vào​
TotalSaleAmount​
Tổng số tiền bán OC​
1,000,000.0​
Mua vào​
TotalSaleAmountOC​
Tổng số tiền VAT​
1,000,000.0​
Mua vào​
TotalVATAmount​
19
Kết quả kiểm tra hóa đơn
Đã cấp mã hóa đơn​
ttxly​
1111111111​
tvandnkntt​
Mã hồ sơ
mhso​
1​
ladhddt​
Mã khách hàng
mkhang​
Số điện thoại người bán
1111111111​
nbsdthoai​
Địa chỉ thư điện tử người bán
nbdctdtu​
FAX Người bán
nbfax​
Website người bán
nbwebsite​
Thông tin chung (Người bán)
nbcks​
32
Bên ký​
Subject​
Số serial​
SerialNumber​
Nhà phát hành​
14/09/2024​
Issuer​
Không quá​
14/09/2024​
NotAfter​
Không trước​
14/09/2024​
NotBefore​
Ngày ký​
14/09/2024​
SigningTime​
Số điện thoại người mua
nmsdthoai​
Địa chỉ thư điện tử người mua
nmdctdtu​
CCCD người mua
nmcmnd​
nmcks​
0​
bhphap​
hddunlap​
gchdgoc​
tbhgtngay​
bhpldo​
bhpcbo​
bhpngay​
Thời điểm lập hóa đơn gốc
tdlhdgoc​
13
Tổng tiền phí
1,000,000.0​
tgtphi​
Ủy nhiệm
unhiem​
Mã số thuế đơn vị nhận ủy nhiệm lập hóa đơn
mstdvnunlhdon​
Tên đơn vị nhận ủy nhiệm lập hóa đơn
tdvnunlhdon​
MSĐVCQHVNS (Người bán)
nbmdvqhnsach​
Bán theo Quyết định số
nbsqdinh​
nbncqdinh​
nbcqcqdinh​
Hình thức bán
nbhtban​
MSĐVCQHVNS (Người mua)
nmmdvqhnsach​
Địa điểm vận chuyển đến
nmddvchden​
Thời gian vận chuyển: Từ ngày
nmtgvchdtu​
Thời gian vận chuyển: Đến ngày
nmtgvchdden​
Tên người bán
nbtnban​
Địa chỉ đơn vị nhận ủy nhiệm lập hóa đơn
dcdvnunlhdon​
Số bảng kê
dksbke​
Ngày bảng kê
14/09/2024​
dknlbke​
Hình thức thanh toán
TM/CK​
thtttoan​
20
Mã số thuế tổ chức giải pháp
1111111111​
msttcgp​
CƠ QUAN THUẾ
cqtcks​
33
Bên ký CQT​
Subject​
Số serial CQT​
SerialNumber​
Nhà phát hành CQT​
14/09/2024​
Issuer​
Không quá CQT​
14/09/2024​
NotAfter​
Không trước CQT​
14/09/2024​
NotBefore​
Ngày ký CQT​
14/09/2024​
SigningTime​
Ghi chú
gchu​
kqcht​
HDNTGia
hdntgia​
Tổng giảm trừ không chịu thuế
tgtkcthue​
Tổng giảm trừ khác
tgtkhac​
Số hộ chiếu người mua
nmshchieu​
Ngày cấp hộ chiếu người mua
nmnchchieu​
Ngày hết hạn hộ chiếu người mua
nmnhhhchieu​
Quốc tịch
nmqtich​
Kiêm Tờ Khai Hoàn Thuế
ktkhthue​
13
hdhhdvu
idhdon​
idhdon​
id​
id​
Loại thuế suất​
ltsuat​
Số tiền bằng chữ​
stbchu​
1
STT​
1​
stt​
2
Tính chất​
tchat​
3
Tên hàng hóa dịch vụ​
XXXX​
ten​
4
Đơn vị tính​
m3​
dvtinh​
5
Số lượng​
6​
sluong​
6
Đơn giá​
1,000,000.0​
dgia​
7
Số tiền chiết khấu​
1,000,000.0​
stckhau​
8
Thuế suất​
tsuat​
9
Thành tiền​
1,000,000.0​
thtien​
10
Thành tiền chưa thuế​
1,000,000.0​
thtcthue​
Tỷ lệ chiết khấu​
tlckhau​
Tiền thuế​
tthue​
Sắp xếp​
sxep​
Đơn vị tiền tệ​
dvtte​
Tỷ giá​
tgia​
ttkhac​
Số tiền​
Mua vào
Amount​
Số tiền sau thuế tiêu thụ đặc biệt​
1,000,000.0​
Mua vào
AmountAfterExciseTax​
Số tiền sau thuế tiêu thụ đặc biệt OC​
1,000,000.0​
Mua vào
AmountAfterExciseTaxOC​
Số tiền OC​
1,000,000.0​
Mua vào
AmountOC​
12
Số tiền chưa có VATOC​
1,000,000.0​
Mua vào
AmountWithoutVATOC​
13
Số tiền chiết khấu​
1,000,000.0​
Mua vào
DiscountAmount​
Tỷ giá chuyển đổi chính​
Mua vào
MainConvertRate​
Số lượng chính​
Mua vào
MainQuantity​
Tên đơn vị chính​
Mua vào
MainUnitName​
Đơn giá chính​
1,000,000.0​
Mua vào
MainUnitPrice​
Loại hàng​
Mua vào
RowType​
Thứ tự sắp xếp​
Mua vào
SortOrder​
Đơn giá​
Mua vào
UnitPrice​
Đơn giá sau thuế tiêu thụ đặc biệt​
Mua vào
UnitPriceAfterExciseVAT​
11
Số tiền thuế GTGT​
Mua vào
VATAmount​
Số tiền thuế GTGT OC​
Mua vào
VATAmountOC​
Đơn giá sau thuế tiêu thụ đặc biệt​
Mua vào
UnitPriceAfterExciseVAT​
Số tiền sau thuế tiêu thụ đặc biệt OC​
Mua vào
AmountAfterExciseTaxOC​
Số tiền sau thuế tiêu thụ đặc biệt Thuế​
Mua vào
AmountAfterExciseTax​
11
Số lô​
Bán ra
Số lô​
Hạn dùng​
Bán ra
Hạn dùng​
Ghi chú dòng​
Bán ra
Ghi chú dòng​
12
Thành tiền thanh toán của hàng hóa​
1,000,000.0​
Bán ra
Thành tiền thanh toán của hàng hóa​
13
Tiền thuế dòng (Tiền thuế GTGT)​
1,000,000.0​
Bán ra
Tiền thuế dòng (Tiền thuế GTGT)​
Chiết khấu lần 2​
Bán ra
Chiết khấu lần 2​
Mã QR
qrcode​
ttmstten​
Loại áp dụng hóa đơn điện tử
ladhddtten​
Hóa đơn xuất khẩu
hdxkhau​
Hóa đơn dành cho khu phi thuế quan
hdxkptquan​
hdgktkhthue​
hdonLquans​
FALSE​
tthdclquan​
pdndungs​
hdtbssrses​
Hóa đơn trùng
hdTrung​
Là hóa đơn trùng
isHDTrung​
 
Upvote 0
Vâng, em thấy tốt nhất là cử tải file XML hoặc nếu được thì lấy thêm cả file HTML về, rồi muốn lấy thông tin gì thì gắp từ trong file XML ra cho khỏe các anh ạ.
 
Upvote 0
Vâng, em thấy tốt nhất là cử tải file XML hoặc nếu được thì lấy thêm cả file HTML về, rồi muốn lấy thông tin gì thì gắp từ trong file XML ra cho khỏe các anh ạ.
Nguồn không trả về XML cho các hóa đơn Tổng cục thuế đã nhận không mã hoặc có thể với các hóa đơn khác. API thì có trả về thông tin trong json.
 
Upvote 0
Nguồn không trả về XML cho các hóa đơn Tổng cục thuế đã nhận không mã hoặc có thể với các hóa đơn khác. API thì có trả về thông tin trong json.
Dữ liệu trong file json có khoảng 135 trường phải không anh, nếu vậy thì các anh cứ ghi tất cả dữ liệu đó ra Excel, sau này ai cần dữ liệu nào thì tự lấy chứ mấy anh cũng không cần phải lựa giữ trường nào, bỏ trường nào làm gì cho mất công.
Năm ngoái em có làm vụ tải hóa đơn điện tử với anh Nguyễn Đức Thanh, sản phẩm sau cùng thì cơ bản có 2 lựa chọn khi tải, 1 là tải file XML (Cứ hóa đơn nào có XML thì tải về hết), 2 là tải dữ liệu về Excel (Có bao nhiêu dữ liệu ghi vào 1 file Excel hết). Dữ liệu trong file Excel nó sẽ đầy đủ các loại hóa đơn hơn, ai muốn tra cứu thì tra, tuy nhiên về độ chi tiết thông tin của 1 hóa đơn thì XML sẽ toàn vẹn và đủ thông tin hơn, ví dụ như mã tra cứu chỉ có XML mới có.
 
Upvote 0
Rất hay và ý nghĩa nhưng Mình tải thử 21 ngày nó bị lỗi này
 

File đính kèm

  • 1729500107419.png
    1729500107419.png
    7.3 KB · Đọc: 34
Upvote 0
Dữ liệu trong file json có khoảng 135 trường phải không anh, nếu vậy thì các anh cứ ghi tất cả dữ liệu đó ra Excel, sau này ai cần dữ liệu nào thì tự lấy chứ mấy anh cũng không cần phải lựa giữ trường nào, bỏ trường nào làm gì cho mất công.
Năm ngoái em có làm vụ tải hóa đơn điện tử với anh Nguyễn Đức Thanh, sản phẩm sau cùng thì cơ bản có 2 lựa chọn khi tải, 1 là tải file XML (Cứ hóa đơn nào có XML thì tải về hết), 2 là tải dữ liệu về Excel (Có bao nhiêu dữ liệu ghi vào 1 file Excel hết). Dữ liệu trong file Excel nó sẽ đầy đủ các loại hóa đơn hơn, ai muốn tra cứu thì tra, tuy nhiên về độ chi tiết thông tin của 1 hóa đơn thì XML sẽ toàn vẹn và đủ thông tin hơn, ví dụ như mã tra cứu chỉ có XML mới có.
Đổ toàn bộ json sang excel thì rất đơn giản. Vấn đề là các nhà cung cấp giải pháp sẽ có một số thiết kế tên trường khác nhau bên cạnh các trường qui định chung , bạn phải tập hơp đủ hết các loại mới xây dựng toàn bộ tên cột trên excel, sau đó đổ dữ liệu vào các cột tương ứng.
Ví dụ như tên trường lấy mã tra cứu, mỗi nccgp đặt một tên khác nhau (bạn xem trong sheet LinkTraCuu) và nằm trong các tên trường khác nhau. Vậy khi đổ dữ liệu vào excel thì tôi không biết đổ như thế nào cho tất cả hoá đơn.
File XML mà các bạn tải, theo tôi xem là đã phân loại và sắp xếp vào các tên trường thống nhất rồi chứ không phải như Json.
Bài đã được tự động gộp:

Rất hay và ý nghĩa nhưng Mình tải thử 21 ngày nó bị lỗi này
Nó báo lỗi “Script out of range” hay sao bạn?
Theo hình thì chắc là do người bán không có MST. Để bẫy lỗi nó rồi bạn kiểm tra lại có lấy được hóa đơn chi tiết khi không có "nbmst" không nhé.
Chỗ dòng báo lỗi bạn thêm: & "" như hình xem như thế nào.
Screen Shot 2024-10-21 at 21.08.36.png
 
Lần chỉnh sửa cuối:
Upvote 0
Oh.. file XML và HTML hóa đơn điều nằm trong Json response mà bữa giờ không nhìn cho kỹ... haizza..:D

Nhưng mà chưa biết làm sao chuyển đổi UTF8 text sang Unicode hehe..Bạn nào rành vụ web này thì hướng dẫn giùm nhé.

Screen Shot 2024-10-21 at 22.08.34.png
 

File đính kèm

  • invoice.html.txt
    32.4 KB · Đọc: 9
  • invoice_XML.zip
    5.1 KB · Đọc: 10
Lần chỉnh sửa cuối:
Upvote 0
Oh.. file XML và HTML hóa đơn điều nằm trong Json response mà bữa giờ không nhìn cho kỹ... haizza..:D
CẬP NHẬT LIỀN ANH. HIHI. MÀ ANH ƠI. FILE ANH NƠI MÃ TRA CỨU CÓ LINK TRA CỨU MÀ KHÔNG CÓ MÃ TRA CỨU NƠI. ANH SỮA GIÚP VÀ CẬP NHẬT THÊM ĐƯỢC KHÔNG Ạ. ANH ĐẸP TRAI ÔNGKE
 
Upvote 0
Oh.. file XML và HTML hóa đơn điều nằm trong Json response mà bữa giờ không nhìn cho kỹ... haizza..:D

Nhưng mà chưa biết làm sao chuyển đổi UTF8 text sang Unicode hehe..Bạn nào rành vụ web này thì hướng dẫn giùm nhé.
Lưu với ADODB.Stream anh nhé, đặt type là 1, Charset là UTF-8
Nếu lỗi thêm Position = 0 và Type = 2 sau khi Write.
 
Upvote 0
@ongke0711 Cảm ơn Ad đã ra file này, mình cũng sử dụng file một vài công ty nhưng khi tra cứu hóa đơn từ máy tính tiền lại không tra cứu được, cái này phải xem xét thêm, File chạy cũng xảy ra một số lỗi code hiện ra thông báo rất kỳ cục (hình dưới), Thêm trường Tiền Thuế trong hóa đơn (đôi khi một số hóa đơn sẽ không trùng tiền thuế trên tool khi tính ra bảng tính làm tròn) ,Khi tra cứu một số hóa đơn từ các công ty đặc thù như xăng dầu sẽ không phải tra cứu từ vnpt mà là petrolimex, mình đã xem thấy cái đó cũng là một điều thiếu sót... Mong Ad sẽ nghiên cứu thêm phần này.... sẽ mong rằng có thêm tiện ích tải xml về máy để lưu trữ hóa đơn...

LOI KHI TRA KQ TRA CUU.PNG
Mình cũng bổ sung thêm cho Ad thêm vào Tool các nhà cung cấp hóa đơn khác
- Hóa đơn điện tử Petrolimex: https://hoadon.petrolimex.com.vn/ dùng trường Fkey để tra cứu
- Hóa đơn điện tử Thaco (ô tô Trường Hải): https://hoadondientu.thaco.com.vn/ dùng trường SearchKey để tra cứu
- Hóa đơn điện tử Thế Giới Di Động: https://hddt.thegioididong.com/ và Bách Hóa Xanh: https://hddt.bachhoaxanh.com/ Dùng số điện thoạiSố Hóa đơn để tra cứu
- Hóa đơn điện tử Myinvoice: https://tracuu.myinvoice.vn/#/ dùng Trường mã cơ quan thuế để tra cứu
- Hóa đơn điện tử Mắt Bão: https://matbao.in/tra-cuu-hoa-don/ dùng File XML để tra cứu
Do đó file XML cũng có thể tra cứu ngược lại với hệ thống tra cứu hóa đơn cũng rất tiện
Cảm ơn Admin đã đọc Cmt này... Luôn luôn ủng hộ Tool...
 
Lần chỉnh sửa cuối:
Upvote 0
Hóa đơn từ máy tính tiền thì trong url chỉnh "query" thành "sco-query" là được
 
Upvote 0
Cơ mà không có Account trang này để test thử code, thấy rôm rả quá
 
Upvote 0
Công cụ hay quá, rất có ích khi làm PL 142. Cám ơn bác. Nhưng phần hđ mua vào vẫn không tải được dữ liệu "Tổng cục thuế đã nhận hóa đơn có mã khởi tạo từ máy tính tiền". Phần chi tiết bảng kê bán r bán ra lệch cột Mã HHDV, Tên HHDV, Đơn vị tính, Số lượng, Đơn giá
 
Lần chỉnh sửa cuối:
Upvote 0
Vấn đề không lấy được tên người mua lý do là đối với Khách lẻ ( không phải doanh nghiệp) thì khi lập hóa đơn sẽ ghi vào trường "tên người mua" không ghi vào "Tên đơn vị". Vấn đề thứ 2 là bảng kê bán ra không lấy được mã hàng hóa dịch vụ trên hóa đơn, và ghi tên hàng hóa vào cột mã hàng hóa dịch vụ khiến cho lệch dòng, e đã test 2 công ty có khi tự tính được tiền thuế có khi không . Đề xuất khi tự tính tiền thuế thì làm tròn luôn không để lại thập phân
 
Upvote 0
OPTIONS trong HTTP là lệnh gửi yêu cầu thiết đặt tùy chọn tại server trước khi gửi yêu cầu tiếp theo, để server hiểu là yêu cầu tiếp theo gửi đến các tùy chọn là khớp với OPTIONS đó để server nhận đúng yêu cầu và sẽ trả về kết quả theo OPTIONS đó.
Nếu anh viết mã HTTP đồng bộ thì quá trình gửi OPTIONS này sẽ thêm độ trễ.
Viết mã HTTP Bất đồng bộ là lập trình VBA nâng cao, để tiến đến viết mã ứng dụng chuyên nghiệp mà người học lập trình nên hướng đến. Hãy xem một ví dụ là Chrome tải hình ảnh của Intagram của một cá nhân, với hàng trăm ảnh cùng lúc. Thì không thể tải đồng bộ, nó sẽ tạo ra độ trễ lớn cho người xem.


Hãy hiểu về svg trước bạn nhé, svg nó có các ký tự định nghĩa cú pháp M L Q Z ... bạn chỉ cần xóa hết các chỉ số định vị vị trí chiều rộng cao đi. Giữ lại các ký tự cú pháp. Bây giờ việc bạn cần làm là nhấn nút tạo mới captcha để chép lại các dãy mã SVG từ 0-9 A-Z xóa như trên để sau này so sánh với SVG mới. Hãy nghĩ xem bạn sẽ thấy mỗi ký tự có chỉ số định vị vị trí theo chiều ngang, so sánh 1 trong các chỉ số này của mỗi ký tự bạn sẽ có được thứ tự vị trí 6 ký tự.
Mỗi tệp svg đều có 2 3 đường kẻ che phía trước, các định nghĩa cú pháp SVG của nó rất đơn giản, nên rất dễ phát hiện chúng để loại trừ ra.

Sử dụng biểu thức chính quy bạn sẽ làm được các điều trên.

Tôi cũng đang viết ứng dụng này, bước captcha tôi đã xử lý xong, giai đoạn tiếp theo là xử lý khối dữ liệu và tải dữ liệu. Viết ứng dụng về HDDT là không đơn giản tí nào.

Bạn có thể xem qua hình ảnh ứng dụng tôi viết. Và cũng sẽ sớm chia sẻ.

View attachment 304547

@quocphuoc88
Dữ liệu API và XML là giống hệt nhau, từ dữ liệu API viết mã tạo tệp XML, thay vì tải zip. Bạn có 10k hóa đơn, nếu bạn tải về máy tính của bạn thì chỉ tốn kém. có 2 cách để giải quyết vấn đề tải zip để tiết kiệm cho việc tải:
1. Tải zip sau khi bạn lọc danh sách ít hóa đơn.
2. Từ Dữ liệu API tạo ra xml/html.
mình thấy hữu dụng bạn có thể chia sẻ cho anh e diễn đàn thử không
 
Upvote 0
Web KT

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

Back
Top Bottom