PEMBERITAHUAN: Faktur Pajak ini telah dilaporkan ke Direktorat Jenderal Pajak dan telah memperoleh persetujuan sesuai dengan ketentuan peraturan perpajakan yang berlaku. PERINGATAN: PKP yang menerbitkan Faktur Pajak yang tidak sesuai dengan keadaan yang sebenarnya dan/atau sesungguhnya sebagaimana dimaksud Pasal 13 ayat (9) UU PPN dikenai sanksi sesuai dengan Pasal 14 ayat (4) UU KUP{PAGENO} dari {nbpg}
Faktur Pajak
Kode dan Nomor Seri Faktur Pajak : _NO_PAJAK_
Pengusaha Kena Pajak
Nama:_REG_NAME_
Alamat:_REG_ADDRESS_ _REG_CITY_
NPWP:_REG_NPWP_
Pembeli Barang Kena Pajak / Penerima Jasa Kena Pajak
Nama:_OUT_NAME_
Alamat:_OUT_ADDRESS_ _OUT_CITY_
NPWP:_OUT_NPWP_
'; $_line = ''; $_foot = '
No.Nama Barang Kena Pajak / Jasa Kena PajakHarga Jual/Penggantian/Uang
Muka/Termin
%s%s%s
Harga Jual / Penggantian_TOT_INVOICE_
Dikurangi Potongan Harga_TOT_DISC_
Dikurangi Uang Muka_TOT_DP_
Dasar Pengenaan Pajak_TOT_BTAX_
Total PPN = _PPN_STRING_% x Dasar Pengenaan Pajak_TOT_TAX_
Total PPnBM (Pajak Penjualan Barang Mewah)0,00
Sesuai dengan ketentuan yang berlaku, Direktorat Jenderal Pajak mengatur bahwa Faktur Pajak ini telah ditandatangani secara elektronik sehingga tidak diperlukan tanda tangan basah pada Faktur Pajak ini.
 _REG_CITY_, _TGL_PAJAK_




_REG_OWNER_
'; $db->Query("SELECT *,DATE_FORMAT(Tgl_Pajak,'%d-%m-%Y') Tgl_Pajak2 FROM inv_jual_pajak WHERE No_Pajak='".$nota."'"); if ($db->Next()) $ainfo = $db->AllRow(); if (intval($ainfo['OutletID'])>0) { $db->Query("SELECT * FROM para_outlet WHERE OutletID='".$ainfo['OutletID']."'"); if ($db->Next()) { if (!$ainfo['No_NPWP']) $ainfo['No_NPWP'] = $db->Row("No_NPWP"); if (!$ainfo['Nama_NPWP']) $ainfo['Nama_NPWP'] = $db->Row("Nama_NPWP"); if (!$ainfo['Alamat_NPWP']) $ainfo['Alamat_NPWP'] = $db->Row("Alamat_Outlet"); $ainfo['Kota_NPWP'] = $db->Row("Kota_Outlet"); } } $html = str_replace("_NO_PAJAK_", "010.".format_nofp($ainfo['No_Pajak']), $html); $html = str_replace("_REG_NAME_", strtoupper($_SESSION['__WEB_APP']['REG_NAME']), $html); $html = str_replace("_REG_ADDRESS_", $_SESSION['__WEB_APP']['REG_ADDRESS'], $html); $html = str_replace("_REG_CITY_", $_SESSION['__WEB_APP']['REG_CITY'], $html); $html = str_replace("_REG_NPWP_", $_SESSION['__WEB_APP']['REG_NPWP'], $html); $html = str_replace("_OUT_NAME_", strtoupper($ainfo['Nama_NPWP']), $html); $html = str_replace("_OUT_ADDRESS_", rapi_alamat($ainfo['Alamat_NPWP']), $html); $html = str_replace("_OUT_CITY_", $ainfo['Kota_NPWP'], $html); $html = str_replace("_OUT_NPWP_", $ainfo['No_NPWP'], $html); $_foot = str_replace("_REG_CITY_", $_SESSION['__WEB_APP']['REG_CITY'], $_foot); $_foot = str_replace("_TGL_PAJAK_", tgl_panjang($ainfo['Tgl_Pajak2']), $_foot); $_foot = str_replace("_REG_OWNER_", $_SESSION['__WEB_APP']['REG_OWNER'], $_foot); $_foot = str_replace("_PPN_STRING_", "11", $_foot); //$_foot = str_replace("_PPN_STRING_", (($ainfo['Tgl_Pajak'] >= $_SESSION['__APP_IAS']['PPN_TGL']) ? $_SESSION['__APP_IAS']['PPN_STRING'] : "11"), $_foot); $nomor = 1; $tot_inv = $tot_disc = $tot_btax = $tot_tax = 0; $ppn = 0; $db->Query("SELECT P.Nama_Produk,R.Nama_Rasa,SUM(-D.Qty) Qty,ROUND(D.Harga_Jual/(1+D.PPN),2) Harga_Jual,SUM(-D.Qty*ROUND(D.Harga_Jual/(1+D.PPN),2)) Total_Jual,SUM(IF(D.Total_Diskon=(-D.Qty*D.Harga_Jual),-D.Qty*ROUND(D.Harga_Jual/(1+D.PPN),2),ROUND(D.Total_Diskon/(1+D.PPN),2))) Total_Diskon,D.PPN FROM (SELECT * FROM inv_detail WHERE No_Ref IN (SELECT No_Jual FROM inv_jual WHERE No_Pajak='".$nota."') AND Qty<>0) D LEFT JOIN inv_produk P ON (D.InvID=P.InvID) LEFT JOIN para_rasa R ON (D.RasaID=R.RasaID) WHERE P.Pajak=1 GROUP BY D.InvID, D.RasaID, D.SatuanID ORDER BY P.Nama_Produk"); while ($db->Next()) { $ppn = $db->Row("PPN"); $_tdisc = ($db->RowFloat("Total_Diskon")==0) ? "" : "
Potongan Harga : Rp ".rupiah2($db->Row("Total_Diskon")); $html .= sprintf($_line, $nomor, $db->Row("Nama_Produk").data_rasafp($db->Row("Nama_Rasa"))."
Rp ".rupiah2($db->Row("Harga_Jual"))." x ".rupiah2($db->Row("Qty")).$_tdisc, rupiah2($db->Row("Total_Jual"))); $tot_inv += $db->Row("Total_Jual"); $tot_disc += $db->Row("Total_Diskon"); $nomor++; } $tot_btax = floor($tot_inv - $tot_disc); $tot_tax = floor($tot_btax * $ppn); $_foot = str_replace("_TOT_INVOICE_", rupiah2($tot_inv), $_foot); $_foot = str_replace("_TOT_DISC_", rupiah2($tot_disc), $_foot); $_foot = str_replace("_TOT_DP_", rupiah2(0), $_foot); $_foot = str_replace("_TOT_BTAX_", rupiah2($tot_btax), $_foot); $_foot = str_replace("_TOT_TAX_", rupiah2($tot_tax), $_foot); $html .= $_foot; $mpdf = new \Mpdf\Mpdf([ 'default_font_size' => 10, 'mode' => 'c', 'format' => 'A4', 'margin_left' => 5, 'margin_right' => 5, 'margin_top' => 5, 'margin_header' => 5, 'margin_footer' => 5 ]); $mpdf->SetDisplayMode('fullpage'); $css = file_get_contents($_SESSION['__WEB_APP']['REAL_PATH'].'assets/css/pdf/fp.css'); $mpdf->WriteHTML($css, \Mpdf\HTMLParserMode::HEADER_CSS); $mpdf->WriteHTML($html, \Mpdf\HTMLParserMode::HTML_BODY); $mpdf->SetAuthor($_SESSION['__WEB_APP']['REG_NAME']); $mpdf->SetCreator($_SESSION['__WEB_APP']['APP_NAME']." v".$_SESSION['__WEB_APP']['APP_VER']); $mpdf->setTitle("Faktur Pajak No. ".$nota); $mpdf->Output($nota.".pdf", \Mpdf\Output\Destination::INLINE); unset($mpdf); } function fp_retur($db, $nota="") { if (trim($nota)=="") return; $html = '
PEMBERITAHUAN: Faktur Pajak ini telah dilaporkan ke Direktorat Jenderal Pajak dan telah memperoleh persetujuan sesuai dengan ketentuan peraturan perpajakan yang berlaku. PERINGATAN: PKP yang menerbitkan Faktur Pajak yang tidak sesuai dengan keadaan yang sebenarnya dan/atau sesungguhnya sebagaimana dimaksud Pasal 13 ayat (9) UU PPN dikenai sanksi sesuai dengan Pasal 14 ayat (4) UU KUP{PAGENO} dari {nbpg}
Nota Retur
Nomor : _NO_PAJAK_
Pembeli Barang Kena Pajak
Nama:_REG_NAME_
Alamat:_REG_ADDRESS_ _REG_CITY_
NPWP:_REG_NPWP_
Kepada Penjual
Nama:_OUT_NAME_
Alamat:_OUT_ADDRESS_ _OUT_CITY_
NPWP:_OUT_NPWP_
'; $_line = ''; $_foot = '
No.Nama Barang Kena Pajak / Jasa Kena PajakHarga Jual/Penggantian/Uang
Muka/Termin
%s%s%s
Harga Jual / Penggantian_TOT_INVOICE_
Dikurangi Potongan Harga_TOT_DISC_
Dikurangi Uang Muka_TOT_DP_
Dasar Pengenaan Pajak_TOT_BTAX_
Total PPN = _PPN_STRING_% x Dasar Pengenaan Pajak_TOT_TAX_
Total PPnBM (Pajak Penjualan Barang Mewah)0,00
Sesuai dengan ketentuan yang berlaku, Direktorat Jenderal Pajak mengatur bahwa Faktur Pajak ini telah ditandatangani secara elektronik sehingga tidak diperlukan tanda tangan basah pada Faktur Pajak ini.
 _REG_CITY_, _TGL_PAJAK_




_REG_OWNER_
'; $db->Query("SELECT *,DATE_FORMAT(Tgl_Pajak,'%d-%m-%Y') Tgl_Pajak2,DATE_FORMAT(Tgl_Retur,'%d-%m-%Y') Tgl_Retur2 FROM inv_beli_pajak WHERE No_Pajak='".$nota."'"); if ($db->Next()) $ainfo = $db->AllRow(); if (intval($ainfo['SupID'])>0) { $db->Query("SELECT * FROM para_supplier WHERE SupID='".$ainfo['SupID']."'"); if ($db->Next()) { $ainfo['No_NPWP'] = $db->Row("No_NPWP"); $ainfo['Nama_NPWP'] = $db->Row("Nama_Sup"); $ainfo['Alamat_NPWP'] = $db->Row("Alamat_Sup"); $ainfo['Kota_NPWP'] = $db->Row("Kota_Sup"); } } $html = str_replace("_NO_RETUR_", $ainfo['No_Retur'], $html); $html = str_replace("_NO_PAJAK_", $ainfo['No_Pajak'], $html); $html = str_replace("_TGL_PAJAK_", $ainfo['Tgl_Pajak2'], $html); $html = str_replace("_REG_NAME_", strtoupper($_SESSION['__WEB_APP']['REG_NAME']), $html); $html = str_replace("_REG_ADDRESS_", $_SESSION['__WEB_APP']['REG_ADDRESS'], $html); $html = str_replace("_REG_CITY_", $_SESSION['__WEB_APP']['REG_CITY'], $html); $html = str_replace("_REG_NPWP_", $_SESSION['__WEB_APP']['REG_NPWP'], $html); $html = str_replace("_OUT_NAME_", strtoupper($ainfo['Nama_NPWP']), $html); $html = str_replace("_OUT_ADDRESS_", rapi_alamat($ainfo['Alamat_NPWP']), $html); $html = str_replace("_OUT_CITY_", $ainfo['Kota_NPWP'], $html); $html = str_replace("_OUT_NPWP_", $ainfo['No_NPWP'], $html); $_foot = str_replace("_REG_CITY_", $_SESSION['__WEB_APP']['REG_CITY'], $_foot); $_foot = str_replace("_TGL_PAJAK_", tgl_panjang($ainfo['Tgl_Pajak2']), $_foot); $_foot = str_replace("_REG_OWNER_", $_SESSION['__WEB_APP']['REG_OWNER'], $_foot); $_foot = str_replace("_PPN_STRING_", "11", $_foot); //$_foot = str_replace("_PPN_STRING_", (($ainfo['Tgl_Pajak'] >= $_SESSION['__APP_IAS']['PPN_TGL']) ? $_SESSION['__APP_IAS']['PPN_STRING'] : "11"), $_foot); $nomor = 1; $tot_inv = 0; $tot_tax = 0; $ppn = 0; $db->Query("SELECT P.Nama_Produk,R.Nama_Rasa,S.Nama_Satuan,-D.Qty Qty,(D.Harga_Pokok/(1+D.PPN)) Harga_Satuan,FLOOR((-D.Qty*D.Harga_Pokok)/(1+D.PPN)) Total_Beli FROM (SELECT * FROM inv_detail WHERE No_Ref IN (SELECT No_Beli FROM inv_beli WHERE No_Pajak='".$nota."' AND Data_Beli=0) AND Qty<>0) D LEFT JOIN inv_produk P ON (D.InvID=P.InvID) LEFT JOIN para_satuan S ON (D.SatuanID=S.SatuanID) LEFT JOIN para_rasa R ON (D.RasaID=R.RasaID)"); while ($db->Next()) { $ppn = $db->Row("PPN"); $html .= sprintf($_line, $nomor, $db->Row("Nama_Produk").data_rasafp($db->Row("Nama_Rasa"))."
Rp ".rupiah2($db->Row("Harga_Satuan"))." x ".rupiah2($db->Row("Qty")), rupiah2($db->Row("Total_Beli"))); $tot_inv += $db->Row("Total_Beli"); $nomor++; } $tot_tax = floor($tot_inv * $ppn); $_foot = str_replace("_TOT_INVOICE_", rupiah2($tot_inv), $_foot); $_foot = str_replace("_TOT_DISC_", rupiah2(0), $_foot); $_foot = str_replace("_TOT_DP_", rupiah2(0), $_foot); $_foot = str_replace("_TOT_BTAX_", rupiah2($tot_tax), $_foot); $_foot = str_replace("_TOT_TAX_", rupiah2($tot_tax), $_foot); $html .= $_foot; $mpdf = new \Mpdf\Mpdf([ 'default_font_size' => 10, 'mode' => 'c', 'format' => 'A4', 'margin_left' => 5, 'margin_right' => 5, 'margin_top' => 5, 'margin_header' => 5, 'margin_footer' => 5 ]); $mpdf->SetDisplayMode('fullpage'); $css = file_get_contents($_SESSION['__WEB_APP']['REAL_PATH'].'assets/css/pdf/fp.css'); $mpdf->WriteHTML($css, \Mpdf\HTMLParserMode::HEADER_CSS); $mpdf->WriteHTML($html, \Mpdf\HTMLParserMode::HTML_BODY); $mpdf->SetAuthor($_SESSION['__WEB_APP']['REG_NAME']); $mpdf->SetCreator($_SESSION['__WEB_APP']['APP_NAME']." v".$_SESSION['__WEB_APP']['APP_VER']); $mpdf->setTitle("Faktur Pajak No. ".$nota); $mpdf->Output($nota.".pdf", \Mpdf\Output\Destination::INLINE); unset($mpdf); } function fp_biaya($db, $nota="") { if (trim($nota)=="") return; $html = '
PEMBERITAHUAN: Faktur Pajak ini telah dilaporkan ke Direktorat Jenderal Pajak dan telah memperoleh persetujuan sesuai dengan ketentuan peraturan perpajakan yang berlaku. PERINGATAN: PKP yang menerbitkan Faktur Pajak yang tidak sesuai dengan keadaan yang sebenarnya dan/atau sesungguhnya sebagaimana dimaksud Pasal 13 ayat (9) UU PPN dikenai sanksi sesuai dengan Pasal 14 ayat (4) UU KUP{PAGENO} dari {nbpg}
Faktur Pajak
Kode dan Nomor Seri Faktur Pajak : _NO_PAJAK_
Pengusaha Kena Pajak
Nama:_REG_NAME_
Alamat:_REG_ADDRESS_ _REG_CITY_
NPWP:_REG_NPWP_
Pembeli Barang Kena Pajak / Penerima Jasa Kena Pajak
Nama:_OUT_NAME_
Alamat:_OUT_ADDRESS_ _OUT_CITY_
NPWP:_OUT_NPWP_
'; $_line = ''; $_foot = '
No.Nama Barang Kena Pajak / Jasa Kena PajakHarga Jual/Penggantian/Uang
Muka/Termin
%s%s%s
Harga Jual / Penggantian_TOT_INVOICE_
Dikurangi Potongan Harga_TOT_DISC_
Dikurangi Uang Muka_TOT_DP_
Dasar Pengenaan Pajak_TOT_BTAX_
Total PPN = _PPN_STRING_% x Dasar Pengenaan Pajak_TOT_TAX_
Total PPnBM (Pajak Penjualan Barang Mewah)0,00
Sesuai dengan ketentuan yang berlaku, Direktorat Jenderal Pajak mengatur bahwa Faktur Pajak ini telah ditandatangani secara elektronik sehingga tidak diperlukan tanda tangan basah pada Faktur Pajak ini.
 _REG_CITY_, _TGL_PAJAK_




_REG_OWNER_
'; $db->Query("SELECT *,DATE_FORMAT(Tgl_Pajak,'%d-%m-%Y') Tgl_Pajak2 FROM biaya_pajak WHERE No_Biaya='".$nota."'"); if ($db->Next()) $ainfo = $db->AllRow(); if (intval($ainfo['SupID'])>0) { $db->Query("SELECT * FROM para_supplier WHERE SupID='".$ainfo['SupID']."'"); if ($db->Next()) { $ainfo['No_NPWP'] = $db->Row("No_NPWP"); $ainfo['Nama_NPWP'] = $db->Row("Nama_Sup"); $ainfo['Alamat_NPWP'] = $db->Row("Alamat_Sup"); $ainfo['Kota_NPWP'] = $db->Row("Kota_Sup"); } } $html = str_replace("_NO_PAJAK_", "010.".format_nofp($ainfo['No_Pajak']), $html); $html = str_replace("_REG_NAME_", strtoupper($_SESSION['__WEB_APP']['REG_NAME']), $html); $html = str_replace("_REG_ADDRESS_", $_SESSION['__WEB_APP']['REG_ADDRESS'], $html); $html = str_replace("_REG_CITY_", $_SESSION['__WEB_APP']['REG_CITY'], $html); $html = str_replace("_REG_NPWP_", $_SESSION['__WEB_APP']['REG_NPWP'], $html); $html = str_replace("_OUT_NAME_", strtoupper($ainfo['Nama_NPWP']), $html); $html = str_replace("_OUT_ADDRESS_", rapi_alamat($ainfo['Alamat_NPWP']), $html); $html = str_replace("_OUT_CITY_", $ainfo['Kota_NPWP'], $html); $html = str_replace("_OUT_NPWP_", $ainfo['No_NPWP'], $html); $_foot = str_replace("_REG_CITY_", $_SESSION['__WEB_APP']['REG_CITY'], $_foot); $_foot = str_replace("_TGL_PAJAK_", tgl_panjang($ainfo['Tgl_Pajak2']), $_foot); $_foot = str_replace("_REG_OWNER_", $_SESSION['__WEB_APP']['REG_OWNER'], $_foot); $_foot = str_replace("_PPN_STRING_", "11", $_foot); //$_foot = str_replace("_PPN_STRING_", (($ainfo['Tgl_Pajak'] >= $_SESSION['__APP_IAS']['PPN_TGL']) ? $_SESSION['__APP_IAS']['PPN_STRING'] : "11"), $_foot); $nomor = 1; $tot_inv = $tot_disc = $tot_btax = $tot_tax = 0; $ppn = 0; $db->Query("SELECT *,(Qty*Harga_Jual) Total_Jual,0 Total_Diskon FROM biaya_pajak_detail WHERE No_Biaya='".$nota."' ORDER BY ID"); while ($db->Next()) { $ppn = $db->Row("PPN"); $_tdisc = ($db->RowFloat("Total_Diskon")==0) ? "" : "
Potongan Harga : Rp ".rupiah2($db->Row("Total_Diskon")); $html .= sprintf($_line, $nomor, $db->Row("Uraian_Biaya")."
Rp ".rupiah2($db->Row("Harga_Jual"))." x ".rupiah2($db->Row("Qty")).$_tdisc, rupiah2($db->Row("Total_Jual"))); $tot_inv += $db->Row("Total_Jual"); $tot_disc += $db->Row("Total_Diskon"); $nomor++; } $tot_btax = floor($tot_inv - $tot_disc); $tot_tax = floor($tot_btax * $ppn); $_foot = str_replace("_TOT_INVOICE_", rupiah2($tot_inv), $_foot); $_foot = str_replace("_TOT_DISC_", rupiah2($tot_disc), $_foot); $_foot = str_replace("_TOT_DP_", rupiah2(0), $_foot); $_foot = str_replace("_TOT_BTAX_", rupiah2($tot_btax), $_foot); $_foot = str_replace("_TOT_TAX_", rupiah2($tot_tax), $_foot); $html .= $_foot; $mpdf = new \Mpdf\Mpdf([ 'default_font_size' => 10, 'mode' => 'c', 'format' => 'A4', 'margin_left' => 5, 'margin_right' => 5, 'margin_top' => 5, 'margin_header' => 5, 'margin_footer' => 5 ]); $mpdf->SetDisplayMode('fullpage'); $css = file_get_contents($_SESSION['__WEB_APP']['REAL_PATH'].'assets/css/pdf/fp.css'); $mpdf->WriteHTML($css, \Mpdf\HTMLParserMode::HEADER_CSS); $mpdf->WriteHTML($html, \Mpdf\HTMLParserMode::HTML_BODY); $mpdf->SetAuthor($_SESSION['__WEB_APP']['REG_NAME']); $mpdf->SetCreator($_SESSION['__WEB_APP']['APP_NAME']." v".$_SESSION['__WEB_APP']['APP_VER']); $mpdf->setTitle("Faktur Pajak No. ".$nota); $mpdf->Output($nota.".pdf", \Mpdf\Output\Destination::INLINE); unset($mpdf); } $db = (is_resource($db)) ? $db : new MySQL(); $data = Param::Get("data"); $nomor = Param::Get("Nomor_Cetak"); if ( $data == "fp-jual" ) { fp_jual($db, $nomor); } else if ( $data == "fp-retur" ) { fp_retur($db, $nomor); } else if ( $data == "fp-biaya" ) { fp_biaya($db, $nomor); } else if ( $data == "default") {} ?>