If you’ve used the WHMCS software billable time feature you know the invoice is created, sends email, and sets the same day as due date after generating the invoice from billable time entries.

The problem with this is it provides a negative user experience because it will be jarring to a customer receiving an invoice with no explanation AND due the same day received.

I have been looking for a solution or work around for a long time now.

  1. Mark all your time entries to invoice on next cron.
  2. Visit the clients’ profile and click “Generate due invoices”
    1. WHMCS  will ask if you want to send emails right now or no.
    2. Choose no and visit the invoices tab.
    3. Each billable time entry will be it’s own invoice.
  3. Visit the invoices tab for the client. Fortunately invoices can be merged.
  4. If you have a lot of time entries filter by invoice status unpaid.
  5. Select all invoices that should be merged
  6. Click the merge invoices button.
  7. This will have pulled all the items in to a single invoice.
  8. Change the due date to something more appropriate before sending the invoice to the client.

I hope this helps someone who had the same issues for me.

Source: WHMCS Forum

Share this Story

Before graduating if your school allows Alum to signup for an email address they can keep do it! There are many valuable reasons to keep a .edu address, discounts and freebies. Most perks are only temporary. Everything from Apple discounts to free web hosting. The idea behind providing perks to students are getting the students acclimated with products. Assuming the products are good this will entice the student to continue using and maybe pay for the product. Generally if discounts are offered online the single requirement is a .edu address.

If discounts and freebies sound good here are a few:



This is a fraction of what exists for students. If you have your .edu address handy search online for student discounts before buying something. Even if the discount or freebie is small in most cases it is worth it. As mentioned above sometimes simply finding the student site will yield discounts as some places don’t require proof at all.

Note: It may be against the company’s policy if not currently enrolled in school.

Share this Story


I had an issue where I installed Ubuntu 14.04 in VirtualBox and apt-get kept hanging at 0%.

I noticed it was automatically attempting to use IPv6 because normally apt-get says connecting to the IPv4 address (eg 0% connecting to This time the address looked like version 6.

To force apt-get to use IPv4 exclusively

  1. Create a file in /etc/apt/apt.conf.d/99force-ipv4
  2. Add this line to newly created file Acquire::ForceIPv4 false;
  3. Apt-get will now use IPv4 exclusively


This article on StackExchange helped me find the right answer!
Convince apt-get *not* to use IPv6

Share this Story

I fell into the trap while installing Ubuntu in virtual box to only give Ubuntu 8gb for the hard drive because it was recommended. I quickly realized that this wasn’t big enough. While searching on the internet I found the commands for virtualbox to increase the VDI size. I ran the command and started Ubuntu. Everything appeared normal until after logging in. Ubuntu just sat and didn’t do anything. After realized that the resize likely caused this issue I searched online and found a great article  Growing a hard drive partition in a VirtualBox ubuntu guest. The article mentions resizing Ubuntu’s partition after resizing the VDI. I resized the partition and everything is working as expected!

Steps to resize VDI

  1. Run VBoxManage modifyhd <absolute path to file> –resize <size in MB>
  2. Boot the VM to either gparted cd or Ubuntu live CD
  3. Resize Ubuntu’s main partition (You might need to delete the swap partition and readd to move main parititon)
  4. Restart
  5. Enjoy :)
Share this Story

Laravel 4 is capable of running on a shared hosting environment. It’s a lot easier than you probably think.

  1. Login to your host and go to your home directory. This does not mean your public home directory, they are separate.
  2. Upload all the contents Laravel project EXCEPT the public folder to your home directory.
  3. Upload the contents of your Laravel public directory to your public directory on your host. The public directory is sometimes called public_html.
  4. Edit file paths.php located in the bootstrap folder so the public path matches the path to your public directory on your host.

After completing each of those steps you should now have a working Laravel 4 project on a shared hosting environment. This assumes the shared host has all the PHPmodules required to run Laravel as well. I was able to accomplish this on HostGator.

If you have any questions feel free to ask.

Share this Story

Blue Screen Of Death (BSOD) an inevitable part of using a windows machine.

Today I received a BSOD with an error CRITICAL_STRUCTURE_CORRUPTION while working on my Android homework. The error wasn’t very descriptive and I wasn’t hopeful to find a resolution. I thought maybe this was random, but searched and fortunately Google lead me to  StackOverflow.

In the post it outlines the cause is possibly due to Intel Hardware Accelerated Execution Manager  (HAXM) software which is used to speed up Android emulators. The post also mentions to download the new updated Intel HAXM software through Intel and not necessarily Android SDK Manager. I had just updated through the Android SDK Manager prior to the blue screen with version 1.0.6. I thought the most recent version was just installed, but I was wrong. Intel’s site has 1.0.8 which apparently fixes the BSOD issue.

Here’s the link to Intel’s site for the most up to date version.

Share this Story

I did an unboxing and initial thoughts video on YouTube check it out.

Let me know if you have any questions!

Share this Story

The following is the .gitignore file for my Android development in Android Studio.

This is what worked for me, but if anyone has additional input that’s welcome too.

# built application files
# files for the dex VM
# Java class files
# generated files
# Local configuration file (sdk path, etc)
# Eclipse project files
# Android Studio
# Possibly need
Share this Story

For some reason my server started displaying code instead of actually processing or rendering the code.

After playing around with the server I noticed the php5 module was missing from Apache.

If your code is displaying and not rendering you may have the same issue.

To install and enable it run the following command.

sudo apt-get install libapache2-mod-php5
sudo a2enmod php5

Then restart your apache. The restart command is different depending on the distro you’re using.
A simple Google search will help you.


This is the forum post that helped me fix my issue.

Share this Story

I had a problem where I want to push my branch and overwrite what was the on the server.

I kept receiving an error telling me to merge. I did not want to merge and found a way to force push a branch.

In general you don’t want to do this unless you absolutely have to.

git push -f origin <branch>


This Stackoverflow question and answers helped me.

Share this Story

Nate Alex: As far as I'm concerned it should stay in the background for ..

random linux user: thanks! ..

MWB21: Thanks for this, one question: What is a domain name and whe ..

How to configure Android 4 devices to use WiFi with WPA2 enterprise security | Quis custodiet ipsos custodes?: […] I followed the instructions given in a couple of a ..

Atif: amazing !!! worked like charm ..

Jose: Excellent guide, I ran into the same issue with Ubuntu 14.04 ..

Teen Inquirer: I have 802.1x EAP but when the username/password screen come ..

Conradino: What is domain name please. ..

Touqeer: I have the same problem with my andriod 4.2.2 It couldn.t co ..

shrtwhitebldguy: @nick_escobedo nice looking machine just need an OS to do it ..

I messed up my hard drive during a Plex Media Server tutorial. How can I fix this? | Ubuntu InfoUbuntu Info: […] incorrectly with the fstab text editor, so I start ..

NIrmal: Love u very very much... for the help.... ..

Sam: am on nexus 4S, it says network not in range, though on iPho ..

civilclerk1: Yes I am sure everything is being put in correctly. I am on ..

civilclerk1: I have programmed many iPhones and had no problem but when i ..

civilclerk1: I am using Android 4.1.2 ..

civilclerk1: Sorry Nick I didn't see the response until now. ..

Nick Escobedo: Thank you! Yea, this sort of thing would be nice if it were ..

JoePublic: Good find. However, this kind of thing is the reason Linux w ..

J: Doesn't work on my iPad. I use my US Netflix account in Cana ..

Nick Escobedo: What version of Android are you on? Are you sure it's a WPA2 ..

Nick Escobedo: Did you resolve your issue? If not send me a couple screensh ..

Nick Escobedo: I should have clarified that this solutions was only for a c ..

civilclerk1: I tried this and it didn't work ..

LLLoungelizard: Spotflux works ok but does not work with PlayStation, Xbox, ..

Nick Escobedo: I don't remember the exact commend, but I believe it involve ..

John Zeiger: How did you determine what version of php-common and php-soa ..

atasoyh: I need change DNS Suffix ? ..

hatasoy: I can connect Ipad and after change "search domains" , and a ..

Nick Escobedo: Yup that works too. Just two different approaches. I'm glad ..

Ben: Thanks for your quick response though!! ..

Ben: I figured out another way to do it while I was waiting. I do ..

Nick Escobedo: Ben please see my gist. ..

Ben: If I wanted clicking a button to hide content under other bu ..

Nick Escobedo: I would try to do a reset on your router. Keep in mind doing ..

Nick Escobedo: You're welcome I'm glad it helped! ..

Nick Escobedo: Is the access point broadcasting the SSID? ..

Person123: My device does not actually display the network, but other c ..

Lauris Olups: I get an "invalid command:check" message, and then a list of ..

Akshay: Great article. My Binatone router is stuck on WPA2 Enterpris ..

Surbhi Sheth: Customize shipping, delivery and billing methods for your Ma ..

Nick Escobedo: Can you explain a little more please? This function will sho ..

Amol: Hi, do you know how to use slideUp up to SHOW elements inste ..

mr rowland: worked for me thanks!!! ..

Nick Escobedo: I'm unsure at this time. I haven't ran into this issue. If y ..

Nick Escobedo: Glad things worked out for you! ..

Nick Escobedo: What OS version are you running? ..

Nick Escobedo: You're welcome, I'm glad it worked! ..

Nick Escobedo: I didn't have to give a certificate. After you entered in ev ..

civilclerk1: I have the Samsung Galaxy SIII and have followed the steps a ..

Tom: I followed these instructions for my chromebook and it worke ..

Victor J Morin: Glad to hear that. I look forward to learning about them! :) ..

Nick Escobedo: I'll be bring it back shortly just for you. I have some grea ..

Victor Jay: what happened to your mobile app of the week holmes ..

El Travieso: Kudos to you Nick .. I've been searching on how to do this f ..

Nick Escobedo: Did you make sure to put in your domain before your username ..

Madhavi: hi i have done the same settings for my samsung galaxy table ..

Micky Duncan: thank-you sir! ..

Civilclerk1: When I type in a password it doesn't do anything else. Am I ..

Nick Escobedo: If you send me your code I can help. ..

Vani: not working it is not sliding up and down ..

Enchantedsun: Really glad to have found this guide: thank you! Just one qu ..

Coolguy: Hi I m also using the same settings but my Phase 2 Authentic ..

David Longstreth: Worked! Thanks for posting this! ..

Mail: Worked the first time.  Thank you. ..

Topher: Ya I've tried several times making sure the password is righ ..

Nick Escobedo: I've encountered this issue with a non enterprise network. I ..

Topher: Nick, I have been using this method and my phone finds our n ..

Wy555: I have the same problem as yours. Have you found a way for W ..

Bernard Gyamfi: u are truly proffessional good job man ..

Nick Escobedo: You shouldn't need to configure those things. ..

LAWALFX2009: thanks for the information. BUT DO I CONFIGURE STATIC IP ,SU ..

Marc_david50: if my sister turn on the Portable Wi-Fi hotspot then i will ..

Nick Escobedo: You would have to probably pay them extra for them to try to ..

Bubblesprite13: so the same things happened to me and i want know if i can s ..

Guy Incognito: Thanks for the steps. I couldn't get connected so I looked t ..

Ankush Agarwal: Hey. Thanks for the description of the method. This was the ..

: I couldn't get it to work with an HTC Evo 4g ..

Nick Escobedo: The wep password is the password for the wifi you're trying ..

Katiegorman: what is the wep password for samsung galaxy plus ..

??????? ????????: thanks, this works ..

Henrijs Romans: Thanks, Nick! Your tutorial is really useful! ..

Nick Escobedo: Which tablet are you using and version of Android? ..

Eaintchuhlaing: could you kindly please help me with the android tablet ? Th ..

Nick Escobedo: Does the error message say anything besides "Error" and whic ..

Praveen Lobo: recently bought samsung galaxy Ace, it is not able to connec ..

Nakshatra: Hey.. Thanks a log. :) ..

Nick Escobedo: You're welcome! :) ..

Nick Escobedo: You bet!  ..

Nick Escobedo: You bet! :) ..

Nick Escobedo: You're welcome! :) ..

Logda: thanks a lot ..

Nick Escobedo: Which version of Android are you using? ..

Randy: I have a Samsung Galaxy S(I9000). To install the certificate ..

Roger Damo: Thanks for sharing! ..

Mitch Paschen: Hey, is it too late to get one of those invites? ..

Tony: Perfect! Thank you for your help! ..

Nick Escobedo: It's on an invite only basis. You can only get in if you've ..

Karen Peña: so i only heard about it i didn't know you could actually ge ..

Anthony Escobedo: I want one! hook a brotha up! ..

Jacob Israel Avery Foulker: Did that yesterday. ..

Nick Escobedo: Awesome, hope everything is working great! ..

Ramir Racelis: great.... thanks it works for me ramir ..

Nick Escobedo: Great, I'm glad I could help! :) ..

Ryan Done: Awesome, that worked great for me too! Thanks for sharing! ..

Nick Escobedo: You're welcome! The Acclaim has been out for a while now :). ..

Ben: Never mind I found the update! Thanks for the info, I've bee ..

Ben: Nick, is this update also available for the Samgsung Acclaim ..

Eva: Good to know! ..

Nick Escobedo: You're welcome! :) Yes, if possible scope out deals a head o ..

Eva: This is very new to me. Thanks for the info! Any buyer advic ..

Nick Escobedo: Auto run is the major feature I wish CCleaner had. Auslogics ..

Ralph: I like Auslogics Boostspeed. It can be set up to auto run th ..