← Back to Blog
5 min read Last reviewed October 1, 2026

How to Automate Fetching Utility Bills Across Multiple Accounts

Stylized landscape with a winding purple path through green hills and a pale sun

One utility account is easy: log in once a month and download the bill. Twenty accounts is a chore. Two hundred accounts across electric, gas, water, and waste providers is a part-time job, full of forgotten passwords, missed bills, and spreadsheets that are never quite up to date. Deck automates that work by logging into each account’s portal on a schedule and returning every bill as structured data.

How do you automate fetching utility bills across multiple accounts?

Utility bill fetching is the automatic collection of bills, usage, and account details from each utility provider’s customer portal, so nobody has to log in and download them by hand.

To automate it across many accounts, you need three things: a complete list of accounts, a safe place to store every login, and a tool that can log into each portal on its own and pull the bill when it posts.

Deck is a computer use agent platform that automates workflows by operating any web interface directly, so the target system never has to expose an API for it to work. Deck works through the same utility portals your team already uses and returns every bill as schema-validated JSON through its API.

Setting it up takes five steps:

  1. Build an account list: record the provider, account number, service type, and location for every account.
  2. Connect each login once: Deck stores the credentials encrypted in its vault, so nobody keeps passwords in a spreadsheet.
  3. Pick the fields you want: such as account number, service period, usage, demand, and charges.
  4. Set the schedule: Deck checks each portal after that account’s bill usually posts, every billing cycle.
  5. Send the data where you need it: a spreadsheet, a database, or an energy management tool.

The more accounts you have, the less the problem is reading bills and the more it is keeping track of them.

Why does fetching bills get harder as accounts grow?

The volume is real. The U.S. Energy Information Administration reports more than 19.3 million commercial electricity customers in the United States in 2023, and that’s before counting gas, water, and waste accounts. Any organization with more than a few locations ends up managing a long list of them.

Four things start to break as the list grows:

Think of it like watering 200 plants, each on its own schedule. Watering one is easy. Remembering every plant on the right day is the hard part.

How do the main options compare?

Manual collection works for a handful of accounts. As the list grows, it depends on someone remembering every login and every billing date. Deck checks every account on schedule, so no bill depends on one person’s memory.

Shared password spreadsheets make manual collection faster, but they put every login in one unprotected file. Deck stores credentials in a PCI-compliant vault with per-tenant keys and encrypts all data at rest with AES-256, as listed on its security page. Its guide to credential vaulting explains how the vault handles the login so the password never passes through the automation itself.

RPA tools like UiPath can log into utility portals, but each provider needs its own recorded bot, and a portal redesign breaks it. Deck agents read each portal as it loads, so a redesign doesn’t require a new recording. A new utility portal often goes from connected to running the same day it is configured.

Custom scripts built with tools like Playwright give a technical team full control. That team then handles every login change, MFA prompt, and CAPTCHA itself. Deck handles those inside its own managed sessions and can run many utility portal sessions at once.

What does this look like in practice?

Here is an illustrative example. A property operations team manages about 150 utility accounts across a dozen providers. Each month, one person spends several days logging in, downloading PDFs, and typing totals into a spreadsheet, and a few bills always slip through.

With Deck, the team connects each login once. Deck fetches each bill as it posts and returns the same JSON fields for every account, whichever provider it came from. The team reviews one complete list instead of chasing down bills.

The same data supports other work once it’s flowing. Deck’s guides cover consolidating bill data across locations, catching billing errors across hundreds of accounts, and getting alerts when a bill amount changes unexpectedly.

FAQs

Can Deck fetch bills from several accounts at the same utility?

Yes. Deck stores each login separately in its vault, so accounts at the same provider can each run on their own schedule. Each bill comes back as its own JSON record with its account number.

Does Deck keep the original bill PDF?

Yes. Deck can retrieve the original bill PDF from the portal along with the structured data, so your team keeps the source document for audits and disputes.

How many accounts can Deck fetch bills from at once?

Deck is built to run hundreds of sessions at the same time, each isolated from the others. That lets large account lists run in parallel instead of one portal after another.

Ready to get started?

See how Deck can connect your product to any system — no APIs needed.

Build my Agent →

Related reading