Jump to content


  • Content Count

  • Joined

  • Last visited

  • Days Won


wellconnit last won the day on April 25 2020

wellconnit had the most liked content!

Community Reputation

1 Neutral

About wellconnit

  • Rank
    Level 2 Member

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. Hi All, I use WHMCS to bill some customers for internet services, because there is no API from the ISP to get the usage values I can't directly API into their systems from WHMCS; however I can get a text file with all of the information - service ID, upload/download usage, last updated, etc, etc. Just wondering the best way to get WHMCS to read this so that I can display the usage details(similar to the way that the disk space/bandwidth consumption is show for cPanel accounts). The internet service will have a custom field that will have the service ID in it, so that WHMCS can just do a simple read from the SQL DB for the values. I'm writing the script myself to take it from the text file to the SQL database so I can customise the data going in as needed. Any ideas?
  2. Hi @brian! It's more if a client says what tickets have I had this month I envisage it'd show a table of the following. That you can filter by a specific time frame or by day/week/month Ticket ID | Date | Subject | Priority | Status | Created By It's not a complex ask, it's just something I would've thought may have made it onto standard features as it's a staple for every single other ticket management system. If we want to get fancy, it'd be great to have the ability to email it to a customer at scheduled intervals(e.g. monthly report on the 1st of the month) - but I know now I'm asking way too much. Any ideas @brian! ?
  3. Hi All, I've looked high and low throughout WHMCS but I can't find any way to be able to send a report of support tickets to a customer? There's also no way to export tickets? No PDF/CSV/etc? So I can't even make one myself. Am I just missing something or is the support system half baked? Any ideas? Thanks!
  4. Hi @brian!, You're an absolute superstar. When you write code I actually seem to be able to read it, the assistance has been much appreciated! Thank You!
  5. Hi @brian!, Sorry for the long long delay! Your code worked perfectly ! I got it working on a single template perfectly. But haven't got the knowhow to get it going on multiple email templates. I've added as below, I'm guessing I change the if statement but do I change it to if ($vars[message_names]) or is there a different syntax I should be using. Much appreciated if you could assist again. The remind I want it created on is the Invoice Created Module. Let me know. Thanks! <?php # Email MergeFields Hook # Written by brian! use WHMCS\Database\Capsule; $message_names = Array("Invoice Payment Reminder","Invoice Created"); add_hook('EmailPreSend', 1, function($vars) { if ($vars['messagename'] == 'Invoice Payment Reminder') { $invoiceid = $vars['relid']; $userid = Capsule::table('tblinvoices')->where('id',$invoiceid)->value('userid'); $overdueinvoices = WHMCS\Billing\Invoice::with("transactions")->whereUserid($userid)->overdue()->massPay(false)->get(); $merge_fields['invoice_overdue_balance'] = formatCurrency($overdueinvoices->sum("balance")); return $merge_fields; } });
  6. Hi @WHMCS ChrisD, Thanks for the response. Unfortunately that doesn't really solve the issue because I can't tell users that they have an overdue amount if there are invoices that are not overdue yet. I'm not sure if anyone else has any suggestions? Maybe utilising a for loop and checking the invoices that are overdue and adding the numbers, but it does seem like a big headache for something that should be simple
  7. Hi, I've searched but haven't been able to find a merge field that will show a customers overdue amount. I want to add a line when a new invoice is created that says Please note you have an outstanding invoice amount of: {$OverdueAmountVariableHere}. But I can only see the merge field {$invoice_total_balance_due} And because WHMCS add's the currency to the end of the outstanding amount, I've had to reverse the IF statement to reflect. {if $invoice_total_balance_due != "$0.00AUD"} To me it would've made more sense to have the amount and the currency as two separate variables. Does anyone have any solutions?
  8. @57881-kian Thanks for the prompt response ! I've never noticed that button, I'll have to look for it next time I put in my own domain orders. Shame there isn't just a tickbox that'd do it automatically. Thanks !
  9. Hi All, Currently if I go into the WHMCS admin and create a new order for a domain it will generate an invoice for the customer, but it won't automatically register the domain, I'm assuming because payment hasn't been made, is there a way to get it to register the domain only for admin created orders?(if an admin has created it I am happy to take the risk that the customer will pay for it within my terms). Any hints on this are much appreciated. Thanks !
  10. Hi @WHMCS Nate, I definitely look forward to going over that documentation to try and help with getting things working that aren't available out of the box. Just on that point, I found a bug in the API, #CORE-11360, it was related to GetTLDPricing and someone broke the functionality. It was only when I brought it to support's attention that it ended up getting fixed in a subsequent release. Again, I understand that not all scenario's can be accounted for due to obvious reasons, but if WHMCS can release software that has issues and then wait until the next version to patch them, I believe that it should be the prerogative of the developer to include these things in their own website. Just my 2 cents. Thanks for the content though !
  11. Hi @WHMCS Nate, Thank you for the most concise response to any API query I have seen so far. I do agree that it's a dangerous path to try and 'hack' together an API or custom call and expect it to work perpetually with so many changes that happens to software. As much as I agree with this, and I understand completely that there are not a Microsoft size team of developers working on the software, if I'm happy to take the risk of something breaking due to an upgrade that breaks the code I've written, then it should be up to the dev to take the risk, same as with any other piece of software. Due to missing API functionality something as simple as Getting customer uploaded files from WHMCS is not accessible, I've had to write an SQL query to pull that data out of the system and because I can't write an API call it needs to be in a separate container and separate function to get this cleanly into the site. Same with updating a user login? I can display the last login to the user, but I can't then update it to show when they've logged in via my own website? So I had to SQL that also? These should be simple, when the dev's write the get API they should write the set API too? The biggest 'omitted' feature in the API from my view is the ability to pull PDF files out of the system and into an external system? It's impossible to let the customer get their invoice, I understand that it's created on the fly, but there should be some sort of a way to get it going. There's been a working example online from one user, however I haven't been able to get that working on 7.5 http://thewanderingsysadmin.net/?p=35#comment-8709 I'm very very happy to take the time to learn how to create an add-on module and then extend it with a return call however there is less than zero documentation on how to even think about beginning a process like this? Which makes it hard for someone like me who wants to improve as a developer + wants to try stay within the rules; if you can put me in the right direction to get something like that sorted that'd be great and I'm sure it'd be a platform for others to use also. If you do have any assistance material or documentation on how we can get things started that'd be much appreciated. Thanks !
  12. Was really just showing a bit of an example of how it can be done. If you'd like to post an example of how you'd make it more secure i'm sure it'd help many of the other users on here.
  13. Hi All, I've written some PHP to extract client files from the WHMCS database because it's not a native API call. Just opened the thread to share it with anyone who may want to use it. I'm working on another to update the Last Login details also. Create the SQL Connection then Get the Files List - Pass $userID as the clientID - While loop ensures all records are put into the arrary function getfiles($userID) { $conn = new mysqli('DBAddress', 'DBUser', 'DBPW', 'DBName') $result = $conn->query("SELECT * FROM `tblclientsfiles` WHERE userid = $userID"); $rows = array(); while($row = $result->fetch_assoc()) { $rows[] = $row; } return $rows; } $filesData = getfiles($userID); for ($counter = 0; $counter < count($rows); $counter++) { $split = explode("_", $filesData[$counter]['filename']); echo "<tr><td>" . $split['1'] . "</td><td><a href='WHMCSWebsite/attachments" .$filesData[$counter]['filename']. "'>Download</a></td></tr>"; } That should be enough for people to be able to extract the files list and display it through the API.
  14. Yeah you could, however if someone was to type in an email address of someone that had an account it would reset their password without them actually requesting it, The UpdateClient API method will allow you to update a password, but won't let you send a verification email to check that it's actually the owner of the email address that has requested the password reset in the first place, which rules that process out. Unfortunately not a viable solution.
  15. Hi Intel, That's of no help whatsoever?. What part out of the two posts are going to assist with making a Forgot Password method?
  • 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