Jump to content

Search the Community

Showing results for tags 'invoice'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


WHMCS.Community

  • The latest WHMCS Release
    • WHMCS 8.3 Release Discussion Board
  • The Latest from the WHMCS Team
    • News, Announcements & Blogs from WHMCS
  • WHMCS.Community
    • Community Announcements
    • Introduce Yourself
  • Using WHMCS
    • Pre-Sales Questions
    • Admin & Configuration Questions
    • Installation, Upgrade, and Import Support
    • Using WHMCS
    • Troubleshooting Issues
    • Vendor Discussions
  • WHMCS Showcase
    • Showcase Your Site
    • Share Your Best Practices & Tips
  • Developing & Extending WHMCS
    • Third Party Add-ons
    • Service Offers & Requests
    • Developer Corner
    • Building Modules
    • Share Ideas for WHMCS Modules
  • Community Competitions
    • Competitions
  • General Discussions
    • General Discussion
  • General Feedback & Assistance
    • Feedback
    • WHMCS.Community Tips & Tricks
  • Third Party Developers's Topics
  • Turkish International Discussions's Topics
  • Russian International Discussions's Topics
  • Spanish International Discussions's Topics
  • Portuguese International Discussions's Topics
  • French International Discussions's Topics
  • Italian International Discussions's Topics
  • German International Discussions's Topics
  • WHMCS Brasil's Topics
  • WHMCS Brasil's Tópicos
  • ModulesGarden Club's Topics
  • Hungarian International Discussions's Segítség
  • ThemeMetro Club's Topics
  • WHMCS Services Club's Topics
  • WHMCS Global Services Club's Topics
  • Katamaze's Free Scripts
  • Katamaze's Modules
  • Zomex Club's Topics
  • 0100Dev Club's Topics

WHMCS Version

  • V8.2.x Hotfixes
  • V8.1.x Hotfixes
  • V8.0.x Hotfixes
  • V7.10.x Hotfixes
  • V7.9.x Hotfixes

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


About Me

Found 72 results

  1. Hello, How to update the Credit Balance for a client after changing the Invoice and InvoiceItems? I'm using Paddle for processing my payments. When sending the invoice data to Paddle I send it without taxes. Then Paddle handles the taxes and at the Subscription Payment Success webhook I get if there are any taxes. Then I change the Invoice Items and the Invoice. ((((Don't know if UpdateClientProduct autorecalc is not working in v8.2 or it is used for something else)))) At the end I also update the Invoice with tax amount and the new total with taxes. I'm new with WHMCS (2 months now) and PHP (3 months). Now, I can't find the way how to update or trigger something to update the Credit Balance on the Summary for Client. It is still the old value that was before adding taxes to Invoices. Is there an API to update the Clients amounts, including Credit Balance and do I need to update something else after my changes to the Invoices? Here the part of the code that is doing this: $withoutTax = $fields['balance_fee'] + $fields['balance_earnings']; $taxAmount = $fields['balance_tax']; $withTax = $fields['balance_gross']; if ( $withoutTax <> 0 ) { $taxPercent = round(($taxAmount / $withoutTax) * 100, 2); } else { $taxPercent = 0; } if ( $taxPercent <> 0 ) { $itemTaxed = 1; } else { $itemTaxed = 0; } $command = 'GetInvoice'; $values = array( 'invoiceid' => $invoiceId, ); //$adminUsername = 'ADMIN_USERNAME'; // Optional for WHMCS 7.2 and later // Call the localAPI function $invoice = localAPI($command, $values, $adminUsername); logModuleCall('paddle_checkout_gateway_callback', 'UpdateInvoice_localAPI_invoice', $invoice, ""); if ($invoice['result'] == 'success') { foreach ($invoice['items']['item'] as $item) { //error_log($vars['invoiceid'].' item '.$item['id'].' has description of "'.$item['description'].'"'); $text = $item['description']; $updatedInfo = array( 'invoiceid' => $invoiceId, 'taxrate' => $taxPercent, 'itemdescription' => array($item['id'] => $text), 'itemamount' => array($item['id'] => $item['amount']), 'itemtaxed' => array($item['id'] => $itemTaxed) ); $updatedInvoice = localAPI('UpdateInvoice', $updatedInfo, $adminUsername); logModuleCall('paddle_checkout_gateway_callback', 'UpdateInvoice', $updatedInfo, $updatedInvoice); } } else { //echo "An Error Occurred: " . $results['result']; } // let's now trigger the recalculate of each hostingId from this updated invoiceid // I think that this is not working in v8.2 or the UpdateClientProduct autorecalc is used for something else $invoiceitems = Capsule::table('tblinvoiceitems') ->where('invoiceid', $invoiceId) ->where('type', 'Hosting')->get(); //->first(); foreach( $invoiceitems as $invoiceitem ){ //$invoiceitem->relid this is the id from the tblHosting table $resultOfAPI = localAPI('UpdateClientProduct', array('serviceid' => $invoiceitem->relid, 'autorecalc' => true), $adminUsername); logModuleCall('paddle_checkout_gateway_callback', 'recalculateProductItems', $invoiceitem->relid, $resultOfAPI); } // 20210927 maybe a bug in v8.2 // not updating the tax and the total amount of the invoice with UpdateClientProduct 'autorecalc' // manualy updating the table tblinvoices try { Capsule::table('tblinvoices') ->where('id', $invoiceId) ->update([ "tax" => $taxAmount, "total" => $withTax ]); } catch (\Exception $e) { logModuleCall('paddle_checkout_gateway_callback', 'recalculateProductItems_ERROR', "tax " .$taxAmount . " total " .$withtax ,$e); echo "Error in updating tblInvoices. {$e->getMessage()}"; }
  2. the problem is when the cust buys 2 item and only of them has promo but the invoice somehow calculate both it together in the same promo. this is not promotion setting problem. Can anyone help out?
  3. 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
  4. 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.
  5. I have two accounts that don't have a credit card on file. (They were lost during a migration somehow). And I don't know what's causing those accounts to be delivered an email EVERY day that says "We tried to bill your card but you don't have one on file." What is the setting that's causing this? The only things I suspect are 2 settings in automation. 1. "Retry every week for..." was set to 0 (but I thought that meant disable not every day. 2. The "Send invoice payment reminder" for 2nd and 3rd were both set to 0 also. But those specifically say 0 to disable. I don't feel like either of those should behave that way though.
  6. 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.
  7. 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
  8. 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
  9. In Billing Extension 2.2.133, we renewed the existing plugin that trasmits invoice PDF to a remote FTP server. We extended this concept to emails so that you can achieve the following goals. First. If you company uses a DMS (Document Management System) you can process invoices as PDF files. The module can store them in a logical folder structure so that your DMS can extrat data from file content, name and dirctory. Here is a list of the available auto-tags: {YEAR} Format yyyy (2020, 2021...) {MONTH} Format mm (10, 11...) {DAY} Format gg (09, 10...) {NUMBER} Invoice number (tblinvoices.invoicenum) {ID} Invoice ID (tblinvoices.id) {TYPE} Document type (Proforma, Invoice, CreditNote) {USERID} User ID {COUNTRY} User country ISO 3166-1 alpha-2 (IT, US, DE...) {CURRENCY} User currency (EUR, USD, AUD...) {PAYMENTMETHOD} Payment gateway system name (paypal, stripe...) Let us show you two examples. Using {YEAR}/{MONTH}/{CURRENCY}/{COUNTRY}-{NUMBER}.pdf gives the following path/file structure: 2020/04/USD/US-Invoice 120.pdf 2020/04/USD/US-Invoice 121.pdf 2020/04/EUR/IT-Invoice 122.pdf 2020/04/EUR/FR-Invoice 123.pdf Here's another example with {TYPE}/{PAYMENTMETHOD}/{TYPE}-{ID}.pdf: Proforma/stripe/Proforma-1290.pdf Invoice/stripe/Invoice-1298.pdf CreditNote/paypal/CreditNote-1305.pdf Proforma/banktransfer/Proforma-1354.pdf The same feature is available for email sending. The module can automatically send all PDF files as attachments via email to multiple recipients (eg. you accountant) on a weekly (every monday) or monthly basis (on the first of every month). You can customize the way files are stored in the zip as describved previously by simply using auto-tags. This way you no longer need to use Bath PDF Invoice Export to send invoices to your accountant.
  10. 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.
  11. Hello everyone. greetings from me again. i need to print out monthly sales report to submit tax office and the way whmcs sales tax liability report print its not possible to submit. there is no company name showing and also we dont work with clients name so i dont need to show the client name in the report. also after print out the report it showing in the top the whole whmcs admin link and whmcs printer friendly report. is there any chance i can customize the pdf report? like the way we customize the pdf invoice Hope someone can help me on this issue Thanks again
  12. Hello everyone. how are you? i need some expert help for my whmcs. basically i have setup a product with billing cycle quarterly with price of 150 euros. the customer used that for almost 2 and half months. now system generate an invoice for 150 euros again for the next 3 months. and now customer rang me and said he would like to go for monthly payment which is 55 a month. problem is invoice is generated and if i cancel the invoice system will not be generating any more invoice for him. so what can i do now? i need to remove or cancel that 3 months invoice and generate him a monthly invoice can someone please help with some idea. i am sure lot of people face this issue before Thanks very much in advance for reading my post
  13. Hello, I am trying to customize viewinvoice.tpl I have almost finished customization but I have stuck in adding qty and item price of product and configurable options. I have attached screenshot of what i want to achieve.
  14. Hello, currently we're using WHMCS 7.10.2 We've received a complaints for: - 2 Customers who has paid monthly recurring amount, but then getting suspended - This is because "next due date" not getting updated. (We've double-checked on payment portal, indeed the customer has paid) May I know what is the root cause behind this bug? Thanks!
  15. hello thanks for reading my text. i have whmcs latest version and what is the issue is i can see the cron not generating the monthly invoice. i have a customer who have an active product due at 08/08/2020 but i cant understand why the cron is not generating the invoice when its suppose to be generate 14 days earlier. but if i click on the customer dashboard generate due invoice i can see system create the invoice for that client. so can someone guide me what can be issue?? i can see in the logs but i can't find any issue at all 😞 dont know what to do just to let you know i have customized pdf invoice . is that giving any issue? thanks a million in advance. please stay safe
  16. Hello everyone Can you help me something on this please. In my invoice list I have changed the button name from Unpaid to Make-Payment. Because what I want is when my customer click on this make payment button it will be take them direct to payment page instead of viewinvoice page.. Because I have put a button to download the pdf invoice so my customer can download the pdf invoice if they want to see it. But I really need to skip the viewinvoice page. So if I have PayPal as a payment method for that invoice then when client click on that Make-Payment button it will be take them to PayPal directly. Can someone help me with the code in the template file. Thanks a million in advance Please see the current invoice list page
  17. Hello everyone. i hope everyone is doing great. i need again some help from the community. hope someone correct my invoicepdf tpl file so it can complete my demand. i have done some modify but i can't understand how to fix some more. i want to make my invoice like this and this is my current code. its already modified mostly <?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, '', 9); 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->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(10); $pdf->Ln(10); $pdf->Ln(10); # 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(125, 6, $customfield['fieldname'] . ': ' . $customfield['value'], 0, 1, 'L', '1'); } } $pdf->Cell(125, 6, "Invoice Number " . ': ' . $invoiceid, 0, 1, 'L', '1'); $pdf->Cell(125, 6, "Bill Issue Date" . ': ' . $datecreated, 0, 1, 'L', '1'); $pdf->Cell(125, 6, "Billing Period" . ': ' . $datecreated, 0, 1, 'L', '1'); $pdf->Ln(10); $startpage = $pdf->GetPage(); # Invoice Items $tblhtml = '<table width="70%" 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:14px;"> <td align="right">' . "Total Amount Due" . '</td> <td align="center">' . $total . '</td> </tr> </table>'; $pdf->writeHTML($tblhtml, true, false, false, false, ''); $pdf->Ln(5); if ($status == 'Unpaid'){ $html = "<h2 style=\"color:red;\">&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 correct the code so my pdf invoice will be looks same like the image i provide thanks everyone and plesae stay safe
  18. Hi Community, Anyone help me regard this when our client is the visit our invoice in our website prohosty.com then Rupees Symbol is working Fine See this screenshot http://prntscr.com/myl1j4 and if client download invoices then rupees symbols change into "?" symbol see this screenshot http://prntscr.com/myl1r8 Please help to fix it
  19. Hi Client charged 2nd time even if invoice is paid, Client paying using PayPal subscription. BUT In previous two months it was normal and charging only once per invoice. Invoice 1: https://nimb.ws/J2Apmk Invoice 2: https://nimb.ws/W1ci0K Log: https://nimb.ws/gdYsqv Is this setting from PayPal Subscription or anything else in Product setup? Thanks in advance kan
  20. I need to add Restitution (one time) item with minus value if there's subscription that didn't meet the SLA from last month on the Invoice generate on the next month. I know it should need manual admin intervention. Is there any idea where I should implement it ? Use the billiable item or maybe is there any suggestion ?
  21. So far I've hooked dedicated ip from tblhosting to viewinvoice.tpl and is assigned to paid services accordingly. What I'm trying to figure out : -> To show dedicated ip assigned in WHMCS Billing for -> Where you can view dedicated ip in the description as well. ( To help our billing member search for dedicated ip to be cancelled at ease by looking at customer's invoice items in WHMCS->Billing) For example : What is in my mind : How do I query the database tblhosting [dedicatedip] into WHMC->Billing->Invoices->Any customer's Invoice id description as shown above ? As far as I know, WHMCS admin .php file is encoded where we do not able to edit. Hopefully and I believe there is a way to append to show the dedicated ip !
  22. We have introduced our new module in WHMCS Market, Recurring Invoice Management Module allows WHMCS admin to create custom recurring invoices without creating new products and services. In short, our module bypasses the product creation process while generating recurring invoices to the clients. You can use this module well when you want to generate custom recurring subscriptions for custom tasks to your clients. Here is how you can generate a recurring invoice: Buy module here: https://whmcsglobalservices.com/whmcs-recurring-invoice-management-module/
  23. Hi, I want to perform some tasks that require the service id on a hook(specifically invoice creation) the paramters there are limited all I get is the invoice id. Is there a way to fetch service id using that invoice id any indication/help/solution would be highly appreciated. The hook must trigger either before or after invoice generation. Thanks. 👍
  24. Certain companies have different departments. In this case, there is a gentleman who bought our product in his name for the company, so his account is set up on WHMCS, he now receives all emails and invoices. How does one set that the invoices get sent to a separate email? Like the accounts department. I see there is a tab where you can add a sub contact in the contact itself but i do not know how to use it. Would that be the solution?
  25. Is there a way to send recurring invoice (quarterly) X days in advance before its invoice date?
×
×
  • 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