Repository navigation
Blog: three posts on books and taxes - #19
Merged
Merged
Conversation
T2125 payment fees move to 8871, where T4002 puts bank charges, matching TP-80 line 216. GIFI moves them to 8715 Bank charges; RC4088's only example for 8716 is credit card interest. The TP-80 report notes that line 264 equals line 250 without home office or partnership amounts. Schedule C notes that Part V names software subscriptions, and that the de minimis safe harbor needs the practice in place on January 1. The de minimis comment cites Notice 2015-82 for the $2,500 limit.
/blog lists the posts newest first and /blog/<slug> renders one, with its date, author and BlogPosting structured data. Posts are prerendered, listed in the sitemap, served as markdown, and linked from the footer.
How to get Stripe into QuickBooks or Xero, which tax line each software cost goes on, and why OpenProfit writes books from provider APIs instead of a bank feed.
A loader that throws notFound() leaves loaderData undefined, so head() wrote "undefined · OpenProfit" on /docs/nope, /compare/nope and /integrations/nope. These routes now return no head without data, as /p/... already does, and the 404 keeps the root title. Blog posts skip their BlogPosting data the same way.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds a blog at /blog with three posts about Books, plus two fixes found while writing them.
Blog
/bloglists posts newest first;/blog/<slug>renders one with its date, author and BlogPosting structured data.src/content/blog/, prerendered, listed in the sitemap, served as markdown to agents, and linked from the footer.Posts
Every price and limit in the posts comes from the vendor's own page, checked on October 8, 2026.
Fixes
/docs/nope,/compare/nopeand/integrations/nopehad the title "undefined · OpenProfit". A loader that throwsnotFound()leavesloaderDataundefined, so these routes now skip their head without data, as/p/...does.Checked
npx tsc --noEmit, Biome on the changed files,pnpm build.scripts/check-books-tax.tspasses./blogreturn 200, a missing post 404s, missing pages keep the site title, and the sitemap and markdown responses list the posts.