Jump to content

Recommended Posts

Hi, i live in Romania and in our country is mandatory to have the total of the invoice in the local currency also for example if the total is 5 Euro, to display under the currency in RON also.

Plz help me configure this invoice so i can start my buissnes.

 

Share this post


Link to post
Share on other sites

For at least the invoice page, using the ClientAreaPageViewInvoice hook that calls GetCurrencies API, get the exchange rate for RON and do maths on the invoice total and then overwrites an existing template variable might do what you want.   For example, appending the total variable with the RON amount.   For the invoice PDF, editing the invoicepdf template file and basically doing the same thing would be needed.    

Share this post


Link to post
Share on other sites
Posted (edited)

You better read this before making changes.

In essence WHMCS doesn't keep historical currency rates and as we know rates fluctuate on a daily basis. On the invoice you must print the rate in effect on the date on which the invoice is issued. You can't do the math on the fly otherwise your numbers on invoices will fluctuate causing more than one billing error. In fact the same invoice will give different exchange rates depending on when customers download/view it.

There are third-party modules that bla bla bla... good luck.

Edited by Kian

Share this post


Link to post
Share on other sites

Ok so i tryed something, i edited the invoicepdf.tpl to this:

But as u can see i need Fixed Invoice Data Mod, i want to mention that i did NOT create this file, how do i install the mod and fix this code, here is a example of the error that it gives : image.png.9ce584face9eb5ffa0fd41532f443518.png

I want it to get the values on the left and convert it in RON, btw i have the conversion rate on top .image.png.0276490a6626eccaac2e7a9078fe89b7.png

<?php




##################################
# Use this only if you have installed Fixed Invoice Data Mod
###################################
# Begin Fixed Invoice Data Mod - uncoment if needed

$result = select_query("mod_invoicedata","",array("invoiceid"=>$invoiceid));
$data = mysql_fetch_array($result);
$match = $data[0];
if ($match) {
    $clientsdetails = unserialize($data[1]);
    $customfields = unserialize($data[2]);
}

# End Fixed Invoice Data Mod


# get the daily currency rate
$ron = select_query("tblcurrencies","rate","code='RON'");
$ron_data = mysql_fetch_array($ron);

$eur = select_query("tblcurrencies","rate","code='EUR'");
$eur_data = mysql_fetch_array($eur);

if ($currency[code] == "EUR" ) {
  $ron_data[0] = format_as_currency($ron_data[0]/$eur_data[0]);
}

# Logo - put it in [whmcs]/images/logo.png
if (file_exists(ROOTDIR.'/images/logo.png')) $pdf->Image(ROOTDIR.'/images/logo.png',16,5,75);
elseif (file_exists(ROOTDIR.'/images/logo.jpg')) $pdf->Image(ROOTDIR.'/images/logo.jpg',16,5,75);
else $pdf->Image(ROOTDIR.'/images/placeholder.png',16,5,75);

# Invoice Status
$statustext = $_LANG['invoices'.strtolower($status)];
$pdf->SetFillColor(223,85,74);
$pdf->SetDrawColor(171,49,43);
if ($status=="Paid") {
    $pdf->SetFillColor(151,223,74);
    $pdf->SetDrawColor(110,192,70);
} elseif ($status=="Cancelled") {
    $pdf->SetFillColor(200);
    $pdf->SetDrawColor(140);
} elseif ($status=="Refunded") {
    $pdf->SetFillColor(131,182,218);
    $pdf->SetDrawColor(91,136,182);
} elseif ($status=="Collections") {
    $pdf->SetFillColor(3,3,2);
    $pdf->SetDrawColor(127);
}
$pdf->SetXY(0,0);
$pdf->SetFont('freesans','B',28);
$pdf->SetTextColor(255);
$pdf->SetLineWidth(0.75);
$pdf->StartTransform();
$pdf->Rotate(-35,100,225);
$pdf->Cell(100,18,strtolower($statustext),'TB',0,'C','1');
$pdf->StopTransform();
$pdf->SetTextColor(0);

# Company Details
$pdf->SetXY(15,26);
$pdf->SetFont('freesans','',13);
$pdf->Cell(160,6,trim($companyaddress[0]),0,1,'R');
$pdf->SetFont('freesans','',9);
for ( $i = 1; $i <= ((count($companyaddress)>6) ? count($companyaddress) : 6); $i += 1) {
	$pdf->Cell(160,4,trim($companyaddress[$i]),0,1,'R');
}
$pdf->Ln(5);

# Header Bar
$invoiceprefix = $_LANG["invoicenumber"];
/*
** This code should be uncommented for EU companies using the sequential invoice numbering so that when unpaid it is shown as a proforma invoice **
** in this template we assume you are using the EU proforma / sequential numbering
*/
if ($status=="Unpaid") {
	$invoiceprefix = $_LANG["proformainvoicenumber"];
}
$ypos = $pdf->GetY();
$pdf->SetFont('freesans','B',15);
$pdf->SetFillColor(255);
$pdf->Cell(180,10,$invoiceprefix.$invoicenum,0,1,'L','1');
$pdf->SetXY(140,$ypos);
$pdf->SetFont('freesans','',9);
if ($status!="Paid") {
        $pdf->Cell(55,5,$_LANG["invoicesdatecreated"].': '.$datecreated.'',0,1,'R','1');
        $pdf->SetX(140);
        $pdf->Cell(55,5,$_LANG["invoicesdatedue"].': '.$duedate.'',0,1,'R','1');
} else {
        $pdf->Cell(55,5,$_LANG["invoicesdatecreated"].': '.$datepaid.'',0,1,'R','1');
        $pdf->SetX(140);
        $pdf->Cell(55,5,$_LANG["invoicerefnum"].': '.$invoiceid.'',0,1,'R','1');
}
$ypos = $pdf->GetY();
$pdf->SetXY(140,$ypos);
#$pdf->Cell(55,5,$_LANG["invoicesdatecreated"].': '.$datecreated.'',0,1,'R','1');
#$pdf->SetX(140);
#$pdf->Cell(55,5,$_LANG["invoicesdatedue"].': '.$duedate.'',0,1,'R','1');
$pdf->SetFillColor(255);
if ($currency["code"] != "RON") {
    $pdf->Cell(55,4,"1 ".$currency["code"]." = ".$ron_data["0"].' lei',0,1,'R','1');
} else {
$pdf->Ln(1);
}
$pdf->Ln(5);

$startpage = $pdf->GetPage();

# Customer Details
$addressypos = $pdf->GetY();
$pdf->SetFont('freesans','B',10);
$pdf->Cell(40,4,$_LANG["invoicesinvoicedto"],0,1);
$pdf->SetFont('freesans','B',9);
if ($clientsdetails["companyname"]) {
	$pdf->Cell(96,4,$clientsdetails["companyname"],0,0,'L');
	$pdf->Cell(0,4,$_LANG["invoicesattn"].": ".$clientsdetails["firstname"]." ".$clientsdetails["lastname"],0,1,'R');
} else {
	$pdf->Cell(0,4,$clientsdetails["firstname"]." ".$clientsdetails["lastname"],0,1,'L');
}
$pdf->SetFont('freesans','',8);
$pdf->Cell(0,4,$clientsdetails["address1"],0,1,'L');
if ($clientsdetails["address2"]) {
	$pdf->Cell(0,4,$clientsdetails["address2"],0,1,'L');
}
$pdf->Cell(0,4,$clientsdetails["city"].", ".$clientsdetails["state"].", ".$clientsdetails["postcode"],0,1,'L');
$pdf->Cell(0,4,$clientsdetails["country"],0,1,'L');
if ($customfields) {
    $pdf->Ln();
    foreach ($customfields AS $customfield) {
        $pdf->Cell(0,4,$customfield['fieldname'].': '.$customfield['value'],0,1,'L');
    }
}

$pdf->Ln(10);

# Invoice Items
$pdf->SetFont('freesans','',8);
### draw a simple table if customer uses RON currency ###
if ("RON" == $currency["code"]) {
$tblhtml = '<table width="100%" bgcolor="#ccc" cellspacing="1" cellpadding="2" border="0">
    <tr height="30" bgcolor="#e1e1e1" style="font-weight:bold;text-align:left;">
        <td width="80%">'.$_LANG['invoicesdescription'].'</td>
        <td width="20%" style="text-align:right;">'.$_LANG['quotelinetotal'].'</td>
    </tr>';
foreach ($invoiceitems AS $item) {
    $tblhtml .= '
    <tr bgcolor="#ffffff" style="border:1px solid #333;">
        <td align="left">'.nl2br($item['description']).'</td>
        <td align="right">'.$item['amount'].'</td>
    </tr>';
}
$tblhtml .= '
    <tr height="30" bgcolor="#fefefe" style="font-weight:bold;">
        <td align="right">'.$_LANG['invoicessubtotal'].'</td>
        <td align="right">'.$subtotal.'</td>
    </tr>';
if ($taxname) $tblhtml .= '
    <tr height="30" bgcolor="#fefefe" style="font-weight:bold;">
        <td align="right">'.$taxrate.'% '.$taxname.'</td>
        <td align="right">'.$tax.'</td>
    </tr>';
if ($taxname2) $tblhtml .= '
    <tr height="30" bgcolor="#fefefe" style="font-weight:bold;">
        <td align="right">'.$taxrate2.'% '.$taxname2.'</td>
        <td align="right">'.$tax2.'</td>
    </tr>';
$tblhtml .= '
    <tr height="30" bgcolor="#fefefe" style="font-weight:bold;">
        <td align="right">'.$_LANG['invoicescredit'].'</td>
        <td align="right">'.$credit.'</td>
    </tr>
    <tr height="30" bgcolor="#f9f9f9" style="font-weight:bold;">
        <td align="right">'.$_LANG['invoicestotal'].'</td>
        <td align="right">'.$total.'</td>
    </tr>
</table>';
} else {
$tblhtml = '<table width="100%" bgcolor="#ccc" cellspacing="1" cellpadding="2" border="0">
    <tr height="30" bgcolor="#efefef" style="font-weight:bold;text-align:center;">
        <td width="70%">'.$_LANG['invoicesdescription'].'</td>
        <td width="15%" style="text-align:right">'.$_LANG['quotelinetotal']." ".$currency["code"].'</td>
        <td width="15%" style="text-align:right">'.$_LANG['quotelinetotal']." RON".'</td>
    </tr>';
foreach ($invoiceitems AS $item) {
    $tblhtml .= '
    <tr bgcolor="#fff" style="border:1px solid #333;">
        <td align="left">'.nl2br($item['description']).'</td>
        <td align="right">'.$item['amount'].'</td>
        <td align="right">'.format_as_currency($ron_data["0"]*$item['amount'])." lei".'</td>
    </tr>';
}
$tblhtml .= '
    <tr height="30" bgcolor="#fefefe" style="text-align:right;font-weight:bold;">
        <td>'.$_LANG['invoicessubtotal'].'</td>
        <td>'.$subtotal.'</td>
        <td>'.format_as_currency($ron_data["0"]*$subtotal)." lei".'</td>
    </tr>';
if ($taxname) $tblhtml .= '
    <tr height="30" bgcolor="#fefefe" style="font-weight:bold;text-align:right;">
        <td>'.$taxrate.'% '.$taxname.'</td>
        <td>'.$tax.'</td>
        <td>'.format_as_currency($ron_data["0"]*$tax)." lei".'</td>
    </tr>';
if ($taxname2) $tblhtml .= '
    <tr height="30" bgcolor="#fefefe" style="font-weight:bold;text-align:right;">
        <td>'.$taxrate2.'% '.$taxname2.'</td>
        <td>'.$tax2.'</td>
        <td>'.format_as_currency($ron_data["0"]*$tax2)." lei".'</td>
    </tr>';
$tblhtml .= '
    <tr height="30" bgcolor="#fefefe" style="font-weight:bold;text-align:right;">
        <td>'.$_LANG['invoicescredit'].'</td>
        <td>'.$credit.'</td>
        <td>'.format_as_currency($ron_data["0"]*$credit)." lei".'</td>
    </tr>
    <tr height="30" bgcolor="#f9f9f9" style="font-weight:bold;text-align:right;">
        <td>'.$_LANG['invoicestotal'].'</td>
        <td>'.$total.'</td>
        <td>'.format_as_currency($ron_data["0"]*($subtotal+$tax+$tax2+$credit))." lei".'</td>
    </tr>
</table>';
}

$pdf->writeHTML($tblhtml, true, false, false, false, '');
$pdf->Ln(3);

# Transactions
$pdf->SetFont('freesans','B',9);
$pdf->Cell(0,4,$_LANG["invoicestransactions"],0,1);
$pdf->Ln(2);
$pdf->SetFont('freesans','',8);
$tblhtml = '<table width="100%" bgcolor="#ccc" cellspacing="1" cellpadding="2" border="0">
    <tr height="30" bgcolor="#efefef" style="font-weight:bold;text-align:center;">
        <td width="25%">'.$_LANG['invoicestransdate'].'</td>
        <td width="25%">'.$_LANG['invoicestransgateway'].'</td>
        <td width="30%">'.$_LANG['invoicestransid'].'</td>
        <td width="20%" style="text-align:right">'.$_LANG['invoicestransamount'].'</td>
    </tr>';

if (!count($transactions)) {
    $tblhtml .= '
    <tr bgcolor="#fff">
	<td colspan="4" align="center">'.$_LANG['invoicestransnonefound'].'</td>
    </tr>';
} else {
    foreach ($transactions AS $trans) {
        $tblhtml .= '
        <tr bgcolor="#fff">
    	<td align="center">'.$trans['date'].'</td>
    	<td align="center">'.$trans['gateway'].'</td>
    	<td align="center">'.$trans['transid'].'</td>';
        if ($currency["code"] != "RON") {
            $tblhtml .= '<td align="right">'.format_as_currency($ron_data["0"]*$trans['amount'])." lei".'</td>';
        } else {
		$tblhtml .= '<td align="right">'.$trans['amount']." lei".'</td>';
    	}
	$tblhtml .= '</tr>';
    }
}
$tblhtml .= '
    <tr height="30" bgcolor="#efefef" style="font-weight:bold;">
        <td colspan="3" align="right">'.$_LANG['invoicesbalance'].'</td>
        <td align="right">';
        if ($currency["code"] != "RON") {
            $tblhtml .= format_as_currency($ron_data["0"]*$balance)." lei".'</td>';
        } else {
	    $tblhtml .= $balance.'</td>';
    	}
$tblhtml .= '
    </tr>
</table>';

$pdf->writeHTML($tblhtml, true, false, false, false, '');

# Notes
if ($notes) {
    $pdf->Ln(2);
	$pdf->SetFont('freesans','',8);
	$pdf->MultiCell(170,5,$_LANG["invoicesnotes"].": $notes");
}

# Generation Date
$pdf->SetFont('freesans','',7);
$pdf->Ln(1);
$pdf->Cell(180,4,$_LANG['invoicepdfgenerated'].' '.getTodaysDate(1),'','','C');
?>

 

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Similar Content

    • By Nelson Neoh
      Hi there.
      After a long search in Google and this community, I didn't really able to find a clue on how to handle this, if there is a product which upgrade will incurs a full charge, rather than default prorated charge in WHMCS.  Do you guys has any hints or workaround?
      Here's the full list of issues I am experiencing now, hope will get any help from you here.  Thanks in advance.
      1. What's the proper procedures to take, if there is a product/service renewal or upgrade will incurs a full charge rather than prorated according to remaining days?
      2. When a product/service renewed (recurring auto CC charged or invoice paid), which hook or function in Addons/Provisions can use to trigger follow up actions?  Like post an API request to principle for such renewal action.
      3. When a Renewal button being click, either on Admin/Client Panel, it will triggers invoice and charge directly on client deposited funds if sufficient fund available.  Which localAPI should I call?
      4. I noticed if the Product/Service being created with recurring terms, for example monthly or annually, it will automatically triggered an invoice by WHMCS cron.  Wish to know if there is sufficient fund in client account, will the cron direct credited its balance and send a paid invoice?  Which hook should I use if the invoice send is a paid invoice?
      Best Regards,
      Nelson
    • By vpshove
      Hello,
      It's almost half year, our customers complain on Paid Invoice getting terminated (Whether it is on time/due/suspended).
      It is not sure what causes it, the customer is increasing leading to increasing complains on service terminated (Which cannot be recovered) although that it has been paid.
      For example of Use Case: For Subscription A, due is on today and knowing termination date is 2 days after. I managed to paid it before termination date. However, the system still terminate my service on specified termination date. End of Use Case  
      Known changes made last year:
      - Installed LiteSpeed Web Server.
      - Upgraded to php73 (from ea-php56 to ea-php73) of Apache + (Cloudlinux Uninstalled)
      - Updated CronJob accordingly for php73
      [Note: I've also removed all custom hooks made to see if it is the causes, it doesn't seems like it]
      [Current version of WHMCS: 8.1.3 (Manual Update)]
      Modules Extension used:
      1. ASPnix License Manager
      2. Braintree Advacne Fraud Helper
      3. Braintree Transaction Lookup
      4. EunaRede Core (GA Ecommerce Tracking)
       
      Thank you. I try my best to give more details if needed.
    • By Hank Cohen
      Forgive me for a newbie but I have been reading documentation and this community community all day without an answer.
      I want to print the order number as reported in the customer order confirmation email on the customer's invoice and the invoice email.
      Seems a natural enough thing to want but the order_number seems not to exist in the context of invoices.  Why?
      Is this a bug or a feature?
       
      Thanks,
      Hank Cohen
    • By sokalsondha
      hello everyone.
      hope all are doing fine. can some one help me with correct my tpl file for the pdf invoice.
      basically what i am looking for is....
      my product price is 55 euros which is included TAX . my tax rate is 21%
      so my product real price is 45.45 euros and 9.55 is TAX
      at the moment its showing like this

      which is accurate i know. but i want to hide that line 21.00% VAT from this pdf
      all i want it too looks like

      i dont want to remove the functionality just i want to hide the TAX thing from the invoicepdf
      here is my code
      <?php
      # Logo
      $logoFilename = 'placeholder.png';
      if (file_exists(ROOTDIR . '/assets/img/logo.png')) {
          $logoFilename = 'logo.png';
      } elseif (file_exists(ROOTDIR . '/assets/img/logo.jpg')) {
          $logoFilename = 'logo.jpg';
      }
      $pdf->Ln(5);
      $pdf->SetFont($pdfFont, 'B', 15);
      $pdf->SetFillColor(255);
      $pdf->SetFont($pdfFont, '', 16);
      $pdf->Cell(100, 6, "My Bill Summary", 0, 1, 'L', '1');
      $pdf->Image(ROOTDIR . '/assets/img/' . $logoFilename, 120, 25, 75);
      # Company Details
      $pdf->SetXY(15, 70);
      $pdf->SetFont($pdfFont, '', 13);
      foreach ($companyaddress as $addressLine) {
          $pdf->Cell(180, 4, trim($addressLine), 0, 1, 'R');
          $pdf->SetFont($pdfFont, '', 9);
      }
      if ($taxCode) {
          $pdf->Cell(180, 4, $taxIdLabel . ': ' . trim($taxCode), 0, 1, 'R');
      }
      $pdf->Ln(5);
      # Clients Details
      $pdf->SetXY(15, 70);
      $pdf->SetFont($pdfFont, 'B', 10);
      $pdf->SetFont($pdfFont, 'B', 14);
      if ($clientsdetails["companyname"]) {
          $pdf->Cell(0, 4, $clientsdetails["companyname"], 0, 1, 'L');
          $pdf->Cell(0, 4, Lang::trans('invoicesattn') . ': ' . $clientsdetails["firstname"] . ' ' . $clientsdetails["lastname"], 0, 1, 'L');
      } else {
          $pdf->Cell(0, 4, $clientsdetails["firstname"] . " " . $clientsdetails["lastname"], 0, 1, 'L');
      }
      $pdf->SetFont($pdfFont, '', 12);
      $pdf->Cell(0, 4, $clientsdetails["address1"], 0, 1, 'L');
      if ($clientsdetails["address2"]) {
          $pdf->Cell(0, 4, $clientsdetails["address2"], 0, 1, 'L');
      }
      $pdf->Cell(0, 4, $clientsdetails["city"] . ", " . $clientsdetails["postcode"], 0, 1, 'L');
      $pdf->Cell(0, 4, $clientsdetails["country"], 0, 1, 'L');
      if (array_key_exists('tax_id', $clientsdetails) && $clientsdetails['tax_id']) {
          $pdf->Cell(0, 4, $taxIdLabel . ': ' . $clientsdetails['tax_id'], 0, 1, 'L');
      }
      $pdf->Ln(5);
      $pdf->Ln(5);
      $pdf->Ln(5);
      # Header Bar
      /**
       * Invoice header
       *
       * You can optionally define a header/footer in a way that is repeated across page breaks.
       * For more information, see http://docs.whmcs.com/PDF_Invoice#Header.2FFooter
       */
      $pdf->SetFont($pdfFont, 'B', 15);
      $pdf->SetFillColor(239);
      $pdf->SetFont($pdfFont, '', 12);
      if ($customfields) {
          foreach ($customfields as $customfield) {
              $pdf->Cell(75, 6, $customfield['fieldname'] . '        ' . $customfield['value'], 0, 1, 'L', '1');
          }
      }
      $pdf->Cell(75, 6, "Invoice Number " . '        ' . $invoiceid, 0, 1, 'L', '1');
      $pdf->Cell(75, 6, "Bill Issue Date" . '           ' . $datecreated, 0, 1, 'L', '1');
      $pdf->Cell(75, 6, "Payment Method" . '       ' . $paymentmethod, 0, 1, 'L', '1');
      $pdf->Ln(10);
                                           
      $startpage = $pdf->GetPage();
      # Invoice Items
      $tblhtml = '<table width="85%" bgcolor="#ccc" cellspacing="1" cellpadding="2" border="0">
          <tr height="30" bgcolor="#efefef" style="font-weight:bold;text-align:center;">
              <td width="80%">' . Lang::trans('invoicesdescription') . '</td>
              <td width="20%">' . Lang::trans('quotelinetotal') . '</td>
          </tr>';
      foreach ($invoiceitems as $item) {
          $tblhtml .= '
          <tr bgcolor="#fff">
              <td align="left">' . nl2br($item['description']) . '<br /></td>
              <td align="center">' . $item['amount'] . '</td>
          </tr>';
      }
      $tblhtml .= '
          <tr height="30" bgcolor="#efefef" style="font-weight:bold;">
              <td align="right">' . Lang::trans('invoicessubtotal') . '</td>
              <td align="center">' . $subtotal . '</td>
          </tr>';
          
      if ($taxname) {
          $tblhtml .= '
          <tr height="30" bgcolor="#efefef" style="font-weight:bold;">
              <td align="right">' . $taxrate . '% ' . $taxname . '</td>
              <td align="center">' . $tax . '</td>
          </tr>';
      }
      if ($taxname2) {
          $tblhtml .= '
          <tr height="30" bgcolor="#efefef" style="font-weight:bold;">
              <td align="right">' . $taxrate2 . '% ' . $taxname2 . '</td>
              <td align="center">' . $tax2 . '</td>
          </tr>';
      }
          
      $tblhtml .= '
          <tr height="30" bgcolor="#efefef" style="font-weight:bold;">
              <td align="right">' . Lang::trans('invoicescredit') . '</td>
              <td align="center">' . $credit . '</td>
          </tr>
          <tr height="30" bgcolor="#efefef" style="font-weight:bold;font-size:16px;">
              <td align="right">' . "Total Amount Due" . '</td>
              <td align="center">' . $total . '</td>
          </tr>
      </table>';
      $pdf->writeHTML($tblhtml, true, false, false, false, '');
      $pdf->Ln(5);
      $html = "<h2 style=\"color:red;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Please pay by ${duedate} </h2>";
      $pdf->writeHTML($html, true, false, false, false, '');
      $pdf->Ln(10);
      $pdf->SetFont($pdfFont, 'B', 15);
      $pdf->SetFillColor(239);
      $pdf->SetFont($pdfFont, '', 10);
      $pdf->Cell(125, 6, "Failure to pay your account in full may result in loss of service.", 0, 1, 'L', '1');
      $pdf->Cell(125, 6, "Reactivation of your service could take up to 7 days and will incur a fee. ", 0, 1, 'L', '1');
      $pdf->Ln(10);
      # Notes
      if ($notes) {
          $pdf->Ln(5);
          $pdf->SetFont($pdfFont, '', 8);
          $pdf->MultiCell(170, 5, Lang::trans('invoicesnotes') . ': ' . $notes);
      }
      /**
       * Invoice footer
       */
       
       
      can someone please help me in this issue.. i really need to solve it
       
      Thanks a million in advnace
    • By code47
      Hello,
      I am creating a module for invoice to display data from database. I want to know how to add that fetch value from module to invoice using hooks.
  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use & Guidelines and understand your posts will initially be pre-moderated