/** * Copyright (C) 2014-2020 ServMask Inc. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * ███████╗███████╗██████╗ ██╗ ██╗███╗ ███╗ █████╗ ███████╗██╗ ██╗ * ██╔════╝██╔════╝██╔══██╗██║ ██║████╗ ████║██╔══██╗██╔════╝██║ ██╔╝ * ███████╗█████╗ ██████╔╝██║ ██║██╔████╔██║███████║███████╗█████╔╝ * ╚════██║██╔══╝ ██╔══██╗╚██╗ ██╔╝██║╚██╔╝██║██╔══██║╚════██║██╔═██╗ * ███████║███████╗██║ ██║ ╚████╔╝ ██║ ╚═╝ ██║██║ ██║███████║██║ ██╗ * ╚══════╝╚══════╝╚═╝ ╚═╝ ╚═══╝ ╚═╝ ╚═╝╚═╝ ╚═╝╚══════╝╚═╝ ╚═╝ */ if ( ! defined( 'ABSPATH' ) ) { die( 'Kangaroos cannot jump here' ); } class Ai1wm_Export_Content { public static function execute( $params ) { // Set archive bytes offset if ( isset( $params['archive_bytes_offset'] ) ) { $archive_bytes_offset = (int) $params['archive_bytes_offset']; } else { $archive_bytes_offset = ai1wm_archive_bytes( $params ); } // Set file bytes offset if ( isset( $params['file_bytes_offset'] ) ) { $file_bytes_offset = (int) $params['file_bytes_offset']; } else { $file_bytes_offset = 0; } // Set content bytes offset if ( isset( $params['content_bytes_offset'] ) ) { $content_bytes_offset = (int) $params['content_bytes_offset']; } else { $content_bytes_offset = 0; } // Get processed files size if ( isset( $params['processed_files_size'] ) ) { $processed_files_size = (int) $params['processed_files_size']; } else { $processed_files_size = 0; } // Get total content files size if ( isset( $params['total_content_files_size'] ) ) { $total_content_files_size = (int) $params['total_content_files_size']; } else { $total_content_files_size = 1; } // Get total content files count if ( isset( $params['total_content_files_count'] ) ) { $total_content_files_count = (int) $params['total_content_files_count']; } else { $total_content_files_count = 1; } // What percent of files have we processed? $progress = (int) min( ( $processed_files_size / $total_content_files_size ) * 100, 100 ); // Set progress Ai1wm_Status::info( sprintf( __( 'Archiving %d content files...
%d%% complete', AI1WM_PLUGIN_NAME ), $total_content_files_count, $progress ) ); // Flag to hold if file data has been processed $completed = true; // Start time $start = microtime( true ); // Get content list file $content_list = ai1wm_open( ai1wm_content_list_path( $params ), 'r' ); // Set the file pointer at the current index if ( fseek( $content_list, $content_bytes_offset ) !== -1 ) { // Open the archive file for writing $archive = new Ai1wm_Compressor( ai1wm_archive_path( $params ) ); // Set the file pointer to the one that we have saved $archive->set_file_pointer( $archive_bytes_offset ); // Loop over files while ( list( $file_abspath, $file_relpath, $file_size, $file_mtime ) = fgetcsv( $content_list ) ) { $file_bytes_written = 0; // Add file to archive if ( ( $completed = $archive->add_file( $file_abspath, $file_relpath, $file_bytes_written, $file_bytes_offset ) ) ) { $file_bytes_offset = 0; // Get content bytes offset $content_bytes_offset = ftell( $content_list ); } // Increment processed files size $processed_files_size += $file_bytes_written; // What percent of files have we processed? $progress = (int) min( ( $processed_files_size / $total_content_files_size ) * 100, 100 ); // Set progress Ai1wm_Status::info( sprintf( __( 'Archiving %d content files...
%d%% complete', AI1WM_PLUGIN_NAME ), $total_content_files_count, $progress ) ); // More than 10 seconds have passed, break and do another request if ( ( $timeout = apply_filters( 'ai1wm_completed_timeout', 10 ) ) ) { if ( ( microtime( true ) - $start ) > $timeout ) { $completed = false; break; } } } // Get archive bytes offset $archive_bytes_offset = $archive->get_file_pointer(); // Truncate the archive file $archive->truncate(); // Close the archive file $archive->close(); } // End of the content list? if ( feof( $content_list ) ) { // Unset archive bytes offset unset( $params['archive_bytes_offset'] ); // Unset file bytes offset unset( $params['file_bytes_offset'] ); // Unset content bytes offset unset( $params['content_bytes_offset'] ); // Unset processed files size unset( $params['processed_files_size'] ); // Unset total content files size unset( $params['total_content_files_size'] ); // Unset total content files count unset( $params['total_content_files_count'] ); // Unset completed flag unset( $params['completed'] ); } else { // Set archive bytes offset $params['archive_bytes_offset'] = $archive_bytes_offset; // Set file bytes offset $params['file_bytes_offset'] = $file_bytes_offset; // Set content bytes offset $params['content_bytes_offset'] = $content_bytes_offset; // Set processed files size $params['processed_files_size'] = $processed_files_size; // Set total content files size $params['total_content_files_size'] = $total_content_files_size; // Set total content files count $params['total_content_files_count'] = $total_content_files_count; // Set completed flag $params['completed'] = $completed; } // Close the content list file ai1wm_close( $content_list ); return $params; } } Có phải nộp thuế GTGT và thuế TNCN đối với tiền lãi vay không? - Vay Tài Chính 247

Có phải nộp thuế GTGT và thuế TNCN đối với tiền lãi vay không?

Khi vay tiền, nhiều người thường thắc mắc rằng liệu lãi tiền vay có phải nộp thuế TNCN hay không? Bài viết này sẽ phần nào giải đáp các vấn đề xoay quanh hoá đơn cũng như cách tính thuế TNCN từ tiền lãi cho vay.

Đóng thuế TNCN

1. Cách tính thuế TNCN từ tiền lãi cho vay

Theo quy định tại Điều 10 và Điều 25 tại Thông tư 111/2013/TT-BTC cho biết:

– Đối với thu nhập từ đầu tư vốn sẽ áp dụng thuế suất là 5% theo biểu thuế toàn phần, cụ thể:

Tiền thuế TNCN phải nộp = Thu nhập tính thuế x Thuế suất 5%

– Tổ chức, cá nhân trả thu nhập từ đầu tư vốn theo hướng dẫn ở khoản 3, điều 2 cần có trách nhiệm khấu trừ thuế thu nhập cá nhân trước khi trả thu nhập cho cá nhân, ngoại trừ trường hợp cá nhân tự khai thuế theo hướng dẫn khác.

Như vậy, nếu doanh nghiệp đi vay tiền của một cá nhân (không phải là tổ chức tín dụng) mà bắt buộc phải trả tiền lãi thì phải khấu trừ thuế TNCN 5% dựa trên tổng số tiền lãi vay phải trả.

  1. Có phải nộp thuế TNCN đối với tiền lãi vay hay không?

Theo khoản 3, Điều 2 Thông tư số 111/2013/TT-BTC ngày 15/08/2013 thì các khoản thu nhập phải chịu thuế gồm có thu nhập đầu tư vốn là khoản thu nhập cá nhân nhận được dưới mọi hình thức, bao gồm: Tiền lãi có được từ việc cho các tổ chức, doanh nghiệp, hộ gia đình, cá nhân kinh doanh, nhóm cá nhân kinh doanh vay theo hợp đồng vay hoặc thỏa thuận vay. Không bao gồm tiền gửi nhận được từ các tổ chức tín dụng, chi nhánh ngân hàng nước ngoài.

Do đó, nếu cá nhân cho vay tiền mà thu tiền lãi thì tiền lãi cho vay là khoản thu nhập phải chịu thuế TNCN.

3. Tiền lãi cho vay có phải chịu thuế GTGT hay không?

Theo điểm b, khoản 8, Điều 4 Thông tư số 219/2013/TT-BTC thì đối tượng không chịu thuế GTGT bao gồm: Hoạt động cho vay riêng lẻ không được xem là hoạt động kinh doanh hay có tính chất thường xuyên. Do đó, nếu doanh nghiệp cho vay tiền thì khoản tiền lãi cho vay có được từ đó không cần phải chịu thuế GTGT.

Thuế TNCN

4. Có cần xuất hoá đơn khi thu tiền lãi cho vay không?

Theo điểm a, khoản 7, Điều 3 của Thông tư 26/2015/TT-BTC quy định những trường hợp phải xuất hoá đơn GTGT là hàng hoá, dịch vụ (bao gồm cả trường hợp hàng hoá, dịch vụ dùng để khuyến mại, quảng cáo, hàng mẫu); hàng hoá, dịch vụ dùng để cho, biếu, tặng, trao đổi hoặc trả thay lương cho người lao động (ngoại trừ hàng hoá luân chuyển hay tiêu dùng nội bộ để duy trì quá trì sản xuất).

Dựa theo đó, nếu vay tiền của doanh nghiệp thì:

– Bên cho vay: Lập hóa đơn GTGT có ghi rõ nội dung thu lãi tiền vay. Riêng mục dòng thuế suất, số thuế GTGT thì gạch chéo.

– Bên đi vay: Phải đảm bảo có các giấy tờ đầy đủ bao gồm hợp đồng vay tiền, chứng từ thanh toán, hoá đơn thu tiền lãi vay.

5. Thời điểm xuất hoá đơn lãi vay?

Theo quy định tại Điều 16, Thông tư 39/2014/TT-BTC thì:

– Ngày lập hoá đơn đối với cung ứng dịch vụ là ngày hoàn thành việc cung ứng dịch vụ, không cần phân biệt đã thu được tiền hay chưa thu được tiền.

– Nếu tổ chức cung ứng dịch vụ đã thu tiền trước hoặc trong khi cung ứng dịch vụ thì ngày lập hoá đơn được xem là ngày thu tiền.

Như vậy, thu tiền lãi vay vào thời điểm nào thì phải lập hoá đơn vào đúng ngày hôm đó. Nếu khoản tiền lãi vay dưới 200,000 VND thì không cần phải lập hoá đơn. Nếu từ 200,000 VND trở lên mà người vay không lấy hoá đơn hoặc không cung cấp tên, địa chỉ, mã số thuế thì vẫn phải tiến hành lập hoá đơn và nêu rõ “người vay không lấy hoá đơn/người vay không cung cấp thông tin”.

– Khi thu tiền lãi vay, doanh nghiệp cần lập hoá đơn theo đúng quy định để giao cho bên vay. Trên hoá đơn cần ghi rõ các thông tin bao gồm: Tên, địa chỉ, mã số thuế của người mua.