Skip to main content

Overview & Getting Started

A plain-language guide for the billing and coordinator team. No technical background needed β€” if you've ever chased "did this invoice actually make it onto the customer's portal?", this tool is for you.

New here?

Read this page top to bottom, then jump to Running a Reconciliation when you're ready to work a run. The deeper pages (Matching Logic, How a Run Works) are there when you're curious β€” you don't need them to get started.

What this tool does​

Many of our biggest customers β€” JLL, CBRE, UPS and others β€” don't pay from a normal invoice. They only pay for work that has been submitted into their own vendor portal (Ariba, Coupa, Corrigo, FM Pilot, VAWS, and more). That creates three ways money quietly leaks:

  • We bill something in CieTrade but never submit it to the customer's portal, so it never gets paid.
  • We do work and submit it on the portal but never bill it in CieTrade.
  • We bill an amount that doesn't match what the portal shows, so it gets short-paid or disputed.

The Portal Reconciliation app pulls our live CieTrade accounts-receivable (AR) and compares it against files you download from each customer portal, then shows you exactly where those gaps are β€” so nothing falls through the cracks.

Who uses it​

The app is at portal-recon.politegrass-38e79dd2.eastus.azurecontainerapps.io β€” sign in with your Wasteology Microsoft account. What you can do depends on your role, shown as a badge next to the title:

RoleWhat you can do
UploaderEverything an editor can, plus upload portal files and run new reconciliations. Usually one designated person runs the authoritative all-portal reconciliation that everyone else views.
EditorAdd notes, set an alternate invoice number, edit a location, mark lines as Waiting on Customer or Unresolvable, and manage the customer→portal mappings. All coordinators have this.
View-onlyRead everything and export to Excel, but not edit. Ask Kent to be added to the editor list.

The three things it finds​

Every reconciliation boils down to three questions, each with a clear action:

It finds…In plain termsWhat you do
Unbilled workWe did the work on the portal but haven't billed it in CieTradeBill it in CieTrade
Unsubmitted invoicesWe billed it in CieTrade but it's not on any customer portalSubmit it to the right portal
Amount mismatches (variance)It's on both sides, but the dollars disagree by more than a pennyInvestigate and correct

Variance simply means CieTrade amount minus the portal amount. Near zero is fine; anything else means the two sides don't agree and someone should look.

The tabs at a glance​

TabWhat it's for
SummaryOne row per customer with a color-coded status (Current, Not Submitted, Variance, Open PO…). A quick health check with charts on top.
Invoices Needing ActionYour working queue β€” one row per open invoice that needs something. Add notes, set an alternate invoice #, edit the location, or mark lines Waiting on Customer / Unresolvable. Keep the "Only items needing action" filter on.
Open OrdersPurchase-order and work-order commitments and how much is left on each (the "Remaining" column). Red means lots left / likely unsubmitted; green means nearly used up.
FlaggedPortal submissions needing manual follow-up β€” disputed, rejected, on-hold, abandoned, or an FM Pilot work order with a spending cap but no cost recorded.
Channels (editors)Where you map each customer to the portal it submits through β€” the in-app replacement for editing the Third Party Customers spreadsheet by hand.

How a coordinator uses it (step by step)​

  1. Pick a run. A run is one complete reconciliation β€” the portal files plus the CieTrade data at that moment, saved so anyone can reopen it. The newest run is selected for you. The run's timestamp is the age of the data (there's no automatic refresh).
  2. (Uploaders only) Upload and run. Drag in the downloaded portal files (CSV, XLSX or XLS). The app figures out which portal each file is from, checks them, runs the reconciliation, and saves a new run.
  3. Filter to your work. Set the Service Month (you can pick several to work arrears), then narrow by customer, portal, status, or a search on the Invoices Needing Action tab.
  4. Work the queue. Resolve items directly in the app β€” notes, alternate invoice numbers, and the Waiting on Customer / Unresolvable flags. Use the bulk panel to act on many rows at once.
  5. Export to share, not to edit. The Download Excel button produces a report that mirrors whatever filters you have on screen. The Write-off CSV collects everything you've marked Unresolvable for accounting. You resolve work in the app β€” you don't mark up the Excel and send it back.
Your work is saved to the invoice, not the run

Notes and flags stay attached to the invoice across runs β€” a line you park as Waiting on Customer stays parked (and auto-clears if it later matches), so you never lose your triage when a new run comes in.

The 8 portals in one glance​

The app auto-detects which portal a file came from by its name. A few have quirks worth knowing:

PortalQuirk to know
AribaIts PO export shows a whole-year commitment, not a single month.
CoupaExports line-by-line, so lines are added up per invoice. Draft submissions are ignored.
FM PilotA work-order report, not an invoice report. Carries a DNE ("Do Not Exceed") spending cap.
CorrigoWork-order portal; open orders come from the same file as the invoices.
VAWSUPS work orders β€” some rows match by work-order number, not invoice number.
VendorCafePays by payment number; treated as already paid.
Oracle / MercadoNot connected yet β€” waiting on sample files.

For the full details, see Portal Coverage.

Words you'll see​

  • AR (Accounts Receivable): what customers owe us, held in CieTrade. Fully paid invoices are removed from AR β€” so old paid items on a portal won't match, and that's expected.
  • CieTrade / CT: our billing system and the source of truth for what we billed. CT Amount is what we billed; CT Status is Posted or the billsheet status.
  • Third Party: the customer's portal (the "third party" we submit to) and the amount recorded there.
  • Variance: CT Amount minus Third Party Amount. Near zero is fine.
  • Group invoice / Group #: several CieTrade invoices bundled under one number; customers often submit one portal invoice for the whole group, and the app compares against the group's summed total.
  • Service Month: the month the work was actually performed (not necessarily when it was posted).
  • DNE ("Do Not Exceed"): an FM Pilot spending cap. If CieTrade is at or under the cap there's no variance; only going over the cap flags.
  • Needs Billing: a charge approved/completed in CieTrade but not yet posted to AR β€” ready to invoice, not yet invoiced.
  • Waiting on Customer / Unresolvable: editor flags β€” one parks a line off your action list; the other marks it for write-off.

Have a request or found a bug?​

Use the Request / Report button in the app header to send a bug report, feature idea, documentation update, or chore straight to the team's tracker. Pick a Type (Bug, Feature, Chore, or Documentation Update), add a title and details, and β€” for a bug or feature β€” attach a screenshot so the team can see exactly what you saw. It shows similar open requests as you type so you don't file a duplicate. See Submitting a Request or Report for a worked example of each type.

Where to go next​