WHMCS One Invoice Billable Time Entries Without Sending Email

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 looked numerous times for a solution or work around and finally found one that worked.

  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
Load More Related Articles
  • PHP

    Using array_reduce to Transform Data

    First, why we might transform data? If we have raw data from a database and need to send data to an ...
  • Programming

    Selecting Your Next App Dependency

    We often turn to open source or proprietary packages for adding functionality to our apps. Here are some key points and questions to ask when selecting your next dependency.
  • Tips

    Trade-offs

    As developers we work with non-technical people and we can do a better job connecting with them. Non-technical people don’t care ...
  • Life Pro Tip Tips

    Mental Snapshots

    Think back to a time where you accomplished something you had no idea how to do or when you accomplished something ...
  • Laravel Programming

    The Importance of Eager Loading Laravel Relationships

    Problem Page took over 30 seconds to load locally on a local Vagrant virtual machine. After investigating the results were astonishing, ...
  • JavaScript Vue.js

    Website Launch: Champion Spotlight

    I launched a new website dedicated to finding champion spotlights: http://championspotlight.lol for the game League of Legends (LoL). If you haven’t ...
Load More By Nick Escobedo
Load More In How-To's

Check Also

Using array_reduce to Transform Data

First, why we might transform data? If we ...