Remote Accountant / Bookkeeper - Canadian Multi-Entity (QuickBooks Online + GST)

Please login or register as jobseeker to apply for this job.

TYPE OF WORK

Full Time

SALARY

$1,400 USD per month

HOURS PER WEEK

40

DATE UPDATED

Aug 15, 2026

JOB OVERVIEW

READ THIS FIRST.
Your application must open with these two lines. Anything that doesn't gets deleted unread.

Line 1 - A dental practice in British Columbia is GST registered. It pays $2,400.00 plus $120.00 GST for clinical supplies. Is that $120.00 recoverable as an input tax credit? Yes or no, and one sentence why.

Line 2 - One thing you would need to ask me before you could answer Line 1 properly.

THE ROLE
I own a group of dental practices and related operating companies in British Columbia and Alberta, plus a holding company that owns a building. The books live in QuickBooks Online, one file per entity. I need one person to own all of it.

Day to day:
- Bank and credit card reconciliations across several entities
- Accounts payable - coding, bill entry, payment preparation
- Intercompany transactions between the operating companies and the holding company
- GST tracking and return preparation
- Month-end close, plus a short written summary I can actually read
- Chasing down what doesn't make sense instead of forcing it to balance

WHAT I ACTUALLY NEED
This is an operations accounting role, not data entry. I don't want to hand you a task list every morning. I want someone who notices an account looks wrong, investigates it, and comes back to me with a question and a recommendation.

REQUIREMENTS
- Real experience on Canadian books - GST, CRA remittances, provincial sales tax
- QuickBooks Online across multiple companies
- Full time, long term
- Enough overlap with Pacific time to have a conversation most days
- Written English good enough that your month-end summary needs no editing from me

NICE TO HAVE
- CPA or equivalent
- Dental, medical, or other health care clients
- Sage experience
- Books for a practice being acquired - opening balances, purchase price allocation

CONFIDENTIALITY
We operate healthcare-related businesses. You will not handle patient care or patient records, but professionalism and privacy are non-negotiable.

HOW HIRING WORKS
Applications that follow the instruction get read. Shortlisted people get a 25-minute unpaid exercise on fictional numbers - GST coding, a bank reconciliation, and an intercompany entry. Do well and we talk.

Don't send me a generic cover letter. I've read two hundred of them.

VIEW OTHER JOB POSTS FROM:
SHARE THIS POST
facebook linkedin
  BENCHMARKS  
Loading Time: Base Classes  0.0008
Controller Execution Time ( Jobseekers / Job )  0.0128
Total Execution Time  0.0141
  GET DATA  
No GET data exists
  MEMORY USAGE  
1,483,344 bytes
  POST DATA  
No POST data exists
  URI STRING  
jobseekers/job/Remote-Accountant-Bookkeeper-Canadian-Multi-Entity-QuickBooks-Online-GST-1709687
  CLASS/METHOD  
jobseekers/job
  DATABASE:  onlinejobs (Jobseekers:$db)   QUERIES: 13 (0.0072 seconds)  (Hide)
0.0003   SELECT *
                                
FROM exrates
                                WHERE rate_name 
'USD-PHP' 
0.0003   SELECT *
FROM `employer_jobs`
WHERE `job_id` = 1709687
 LIMIT 1 
0.0003   SELECT *
FROM `employers`
WHERE `employer_id` = 911208
 LIMIT 1 
0.0009   SELECT COUNT(*) AS `numrows`
FROM `t_thread` `t`
LEFT JOIN `t_thread_misc` `miscON `t`.`id` = `misc`.`thread_id`
WHERE `t`.`job_id` = 1709687
AND `misc`.`idIS NULL 
0.0004   SELECT e.business_namee.logoe.websitee.rebill_datee.date_added member_datehitsDATEDIFF('2026-08-17',ej.date_added) duration_daysDATEDIFF('2026-08-17',e.rebill_date) duration_rebillej.*, e.deactivate FROM employers eemployer_jobs ej WHERE e.employer_id ej.employer_id AND
                                   ((
e.user_level >= '500' AND ej.date_added <= e.rebill_date)
                                   OR 
e.employer_id '' OR (ej.date_approved <> '2000-01-01' and DATEDIFF('2026-08-17',ej.date_added) <= 14 ))
                                   AND 
e.deactivate != AND ej.deleted AND job_id '1709687' 
0.0003   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1709687 
0.0007   UPDATE employer_jobs SET hit_counts '***Aug-15-2026=1046***Aug-17-2026=1' WHERE job_id'1709687'  
0.0006   UPDATE employer_jobs SET monthly_hits '***Aug-2026=1047' WHERE job_id'1709687'  
0.0008   SELECT date_sent FROM jobseeker_sent_emails WHERE jobseeker_id '' AND job_id '1709687' AND status LIKE 'sent%' ORDER BY id DESC  
0.0002   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1709687 
0.0018   SELECT COUNT(*) AS `numrows`
FROM `employer_jobs`
WHERE `employer_id` = '911208'
AND `date_added` >= '2022-06-08' 
0.0003   select from teasers 
0.0002   SELECT FROM skill_categories WHERE skill_cat_id='' 
  HTTP HEADERS  (Show)
  SESSION DATA  (Show)
  CONFIG VARIABLES  (Show)