How do I join on a timestamp and include NULL entries?
I have managed to get this, by removing the join altogether from the main query and creating a CASE WHEN subquery to look first if a match is made, and assign 0 if not. Then, to sum the invoices on conditions met.

If there is a better method to handle this than the query I now have below, please let me know. Since I am working with a CASE WHEN and subqueries within, it reads to me that this part can be better streamlined somehow. But if it works, it works and does not seem terribly expensive.

Also, please note: above I make a reference to a.account_id in error, on line 18 (second from the bottom). That happened when I modified the exact tables being used in my situation to a more simple set for understanding the SQL being used. To be sure of the fields in my accounting table representation:

a.account_id = IDs representing Chart of Accounts
a.invoice_id = IDs representing the Sales Group on the invoice (this above is in error at a.account_id is 20, and should read a.invoice_id = 20)
a.credit = Double Ledger Accounting Credits
a.debit = Double Ledger Accounting Debits  

WITH RECURSIVE t(days,budget) AS (
SELECT 1 as days,b.amount/30 AS budget
FROM budgets b
WHERE b.id = 10
UNION ALL
SELECT t.days + 1,t.budget
FROM t WHERE t.days &lt; 30)
SELECT
t.days AS "Day",
SUM ( CASE WHEN
( SELECT a.date FROM accounting a
LEFT JOIN t ON date_part('day',a.date) = t.days
WHERE a.date &gt;= '2020-04-01'
AND a.date &lt;= '2020-04-30'
AND a.invoice_id = 20
LIMIT 1) IS NULL
THEN 0 ELSE
( SELECT SUM
( CASE WHEN a.account_id IN (17,43,44)
THEN a.credit - a.debit ELSE 0 END)
FROM accounting a
WHERE date_part('day',a.date) = t.days
AND a.date &gt;= '2020-04-01'
AND a.date &lt;= '2020-04-30'
AND a.invoice_id = 20)
END ) AS "Invoices",
t.budget AS "Budget"
FROM t
GROUP BY 1,3
ORDER BY 1;  

I appreciate those who took a peek at this query, and considered an approach to solve it.