Overview

By default, Luminous creates an invoice the moment a shipment is recorded. If your carrier posts freight charges after the shipment event, the invoice (and the first QuickBooks push) will be missing those costs. End-of-Day Batch mode defers invoicing to a scheduled daily run, giving freight time to settle first.


Who this helps

Any sales channel that:

  • Has Create Invoice Automatically enabled, and
  • Auto-pushes invoices to QuickBooks, and
  • Ships via carriers that post freight/tracking after the initial shipment record (e.g. ShipStation-pulled rates, third-party freight).

How to enable it

  1. Go to Manage → Channels and open (or create) a sales channel.
  2. In the Settings section, make sure the Create Invoice Automatically toggle is on.
  3. Under Invoice Creation Timing, select End of day batch (wait for freight/tracking, then invoice once).
  4. Two new fields will appear:
    • Batch Run Time — the local time the batch runs for this channel (e.g. 18:00). Leave blank to use the default of 6:00 PM.
    • Batch Timezone — an IANA timezone name such as America/Denver or America/New_York. Leave blank to use your account's default timezone.
  5. Save the channel.

How it works

  • When a shipment is created on an End-of-Day Batch channel, no invoice is generated immediately. The shipment is queued for the next batch run.
  • Luminous checks eligible channels every hour. A channel's batch fires during the one-hour window that starts at its configured run time in its configured timezone.
  • The batch selects all shipments from the last 2 days that are: posted, shipped or partially shipped, not voided, and not yet invoiced.
  • The same invoice-creation logic used for real-time invoicing is applied — one invoice per shipment — so invoice line items, amounts, and QuickBooks mapping behave identically.
  • The batch is idempotent: if a shipment was already invoiced (manually or otherwise), it is skipped.

Common questions

Can I still use the other Invoice Creation Timing options on other channels? Yes. The End-of-Day Batch setting applies only to the channel it is configured on. Other channels continue to invoice in real-time or at whatever timing you select.

What if freight hasn't posted by 6 PM either? You can set the Batch Run Time to a later hour (e.g. 22:00) to give your carrier more time. The batch window is one hour wide, so a setting of 22:00 will run between 10 PM and 11 PM in the channel's timezone.

What if a shipment has no line items yet when the batch runs? Luminous attempts to backfill shipment items from the linked fulfillment order before invoicing. If items still cannot be resolved, that shipment is skipped and will be retried on the next batch run (within the 2-day lookback window).

Will this affect my Invoice Push Timing to QuickBooks? No. Your Invoice Sync Timing (when the invoice is pushed to QuickBooks after creation) is a separate setting and is unchanged. The End-of-Day Batch only controls when the invoice is created.

Can I trigger the batch manually? Yes — contact your Luminous administrator. The batch command supports a --forcerun flag that bypasses the per-channel scheduled run time and processes all eligible channels immediately, as well as a --dry-run flag to preview what would be invoiced without making changes.