Read your workspace report
What the agent did with your real bills: what it paid and with what proof, what it stopped and why, how often a person stepped in, what it was worth, and sharing a live copy by a link.
The Report section says what the agent did with your workspace's bills since the workspace opened: how many it handled and how fast it decided, what it paid and the transaction for each payment, what it stopped and why, how often a person stepped in, what an early-payment discount took off a bill, what that was worth, kept apart as measured, estimated and not counted, and, bill by bill, what your business really paid beside what the agent decided. Every member of the workspace can read it, viewers included. An owner or admin can share a live copy of it by a link, for your partner, your accountant or an outside reviewer. It works the same on Arc testnet and on Arc mainnet.
What it counts
The report counts from two things the workspace already keeps: its signed ledger, and the transfers Circle confirmed. Nothing on it is typed in by hand, except what your business paid outside Vestiarion, in Agent vs what really happened, which says who recorded it.
- Bills are your payables. A bill from sample data is left out, with everything about it, once the workspace has a real bill. Until then the report counts the sample data, and the box says "This workspace has no real bill yet, so the report counts its sample data."
- Payments are the bills' confirmed transfers on Arc. The amount is what the transfer carried.
- In a sandbox, where payments are simulated, the box says "Sandbox: payments here are simulated." The figure reads Paid (simulated), and each payment is marked Simulated, with no transaction to open.
- Once the workspace is live, the box at the top says which money it was: "Payments on Arc testnet, in test USDC." or "Payments on Arc mainnet, in real USDC.".
- In shadow mode, the box also says since when, and that your business paid these bills itself. A payment made in shadow mode is marked Mirror: it is the copy, in USDC on Arc testnet, of a bill you paid as you always do.
The figures
- Bills handled: your real bills, and how many of them the agent has decided.
- Time to decide: the median time from a bill arriving to the agent's first decision on it.
- Paid on Arc: how many bills were paid, how much in each currency, and how many were paid on or before their due day (UTC).
- Stopped before paying: bills one of the agent's decisions kept from being paid, by the newest such decision, split by why: refused by code (a check the agent cannot talk its way past, such as a payment limit or a first payment to a new address), the agent's own call, and waited (no cash in the operating wallet, the agent paused, or the spending limit full for the day). When a payment the agent decided was not sent, because the transfer itself failed, it is counted as not sent. A payment held for your verdict in shadow mode is not counted as stopped: a person decides it by design.
- Needed a person: bills a person approved, rejected or returned after the agent or a check stopped them, and how many were paid with no one stepping in. In shadow mode every payment waits for your verdict by design, so that second figure is not shown.
- Your verdicts: in shadow mode, or once any verdict was given, how many of the agent's decisions you agreed with, and how many still wait for a verdict.
- Discounts captured: what early-payment discounts actually took off bills, measured as the bill's amount less what its transfer carried. Beside it, what was on offer across all bills with discount terms, worked out from the terms. That second figure is an estimate.
Value
Under the figures, Value says what the agent was worth in three groups, under "Three kinds of figures, never added together". Nothing adds one group to another, and no total is drawn across them.
- Measured, counted from the signed ledger and the confirmed transfers: Bills handled and how many the agent decided, Time to a first decision (the median), Paid on or before the due day, and Discounts taken, the bill less what its transfer carried.
- From your answer, an estimate. Time saved, estimated is the bills the agent paid or scheduled on its own times the minutes one bill took you before Vestiarion, in hours (in minutes when it is under one). On its own means nothing stopped its decision to pay, no person stepped in, and no verdict disagreed with it: a bill it held or flagged, or has not decided, saved nothing, so it is not counted. In shadow mode your business pays its bills itself, so the same figure for the bills decided there reads Time it would have saved, estimated, and a workspace in shadow mode shows only that one until the agent pays a bill outside it. A person's verdict still takes time, and it is not taken off. People who touched a bill before is shown as context: the estimate is not multiplied by it. Under them, who answered and when.
- Not counted, never counted as saved: Bills not paid yet, the bills still to pay, which leaves out a bill rejected, a repeat, or one your business recorded paying outside Vestiarion (see Agent vs what really happened), since no saving is projected onto a bill before it is paid; Flagged, or refused as a repeat, since stopping a bill is not money saved; Discounts on offer, not taken, missed because the bill was paid without its discount or its last day passed; and Discounts still on offer, on bills not paid yet whose last day has not passed. A rejected bill or a repeat is in neither of the two. Both are estimated from the bills' terms.
Answer how bills were handled before
The estimate rests on one answer about your business, which only an owner gives. Until then the middle group reads Answer the question for an owner, and "No answer given yet, so nothing is estimated." for everyone else.
Choose Answer the question, then fill in Before Vestiarion, how many minutes did one bill take you? (a whole number from 1 to 6,000) and How many people touched it? (from 1 to 100), and Save your answer. To change it, choose Change your answer: the new answer replaces the old one on the report, and the old one stays in the history and the audit log. Each answer is a signed report_baseline_answered entry, with who answered and the two numbers.
The two lists
What it stopped shows the newest ten stopped bills: the day, the payee, the amount, why it stopped, and what happened since: Paid since, Being paid (its transfer is on its way), Rejected or Still open.
Payments and their proof shows the newest ten payments: the day, the payee, the amount (and the bill's own amount when it was written in another currency), who decided it (The agent; A person, who approved it; or Your verdict, when you agreed with the agent's decision to pay it in shadow mode), and its transaction on the explorer. Every entry, signed: Audit log opens every entry, each signed and hash-linked, which you can export and check yourself: see Verify an audit export. For one payment's whole chain, from the purchase order to the receipt, open its bill on Bills & receivables and choose Why it was paid: see Why a payment was paid.
Before a live slice
In shadow mode, the report also lists what we suggest before you move a slice of your bills to real USDC on Arc mainnet, each ticked from the workspace's own records:
- Give verdicts on at least five decisions.
- Leave no decision waiting for your verdict.
- Have each supplier's own Arc address. A supplier paid at a mirror address needs its real address in a live workspace.
- Open a workspace on Arc mainnet for the slice: see Run alongside how you pay today.
Nothing on the report moves money, opens a workspace or changes a setting.
Agent vs what really happened
In shadow mode your business keeps paying its bills from its bank, as it does today. Agent vs what really happened sets, bill by bill, what the agent decided beside what your business actually did, once someone records it. Every member can read it; an owner or admin records it, as they add invoices.
For each bill that the agent decided on, or that has a record:
- The agent, on Arc testnet or Arc mainnet: its newest decision and its day, such as "Decided to pay it on", "Scheduled it for" or "Held it on" with why, or the day it was paid on Arc, with the payment's transaction. Your verdict: agreed or disagreed, when one was given.
- Your business: what was recorded. Paid on a day, the amount and currency, how and the reference; or Not paid, with the reason. Under it, Recorded by the member's email, and the day. A bill nobody has recorded says Not recorded. Nothing is guessed from a payment on Arc, a verdict or the bill's status, and a payment on Arc is always the agent's, never your bank's.
- Under both: how many days before or after your business paid the agent decided to pay it (or the day it scheduled, or for a bill a person paid on Arc after a hold, the day of that payment); the two amounts when they differ; and the early-payment discount each side took, measured from what was recorded, beside the one on offer, estimated from the terms.
Each figure links to where it comes from. The entry link beside the agent's decision, your verdict or your business's record opens that signed entry in the audit log; the transaction opens on the explorer.
These bills are marked as worth a look, and come first:
- Held by the agent, paid by your business: the agent held, flagged or asked about it, or a check in code stopped it, and your business paid it. A bill the agent only waited on, for cash, a pause or the spending limit, is not counted as held.
- Paid on Arc, not paid by your business, or The agent would pay it, your business did not.
- Amount differs: your business paid another amount than Arc carried, or than the bill, in the same currency.
The figures above the bills:
- Bills compared: bills with a decision of the agent's and a record, and how many decided bills are not recorded yet.
- Agent and business agreed: bills both paid, or neither paid, out of those compared.
- Days apart: the median of those days, from the agent's side.
- Worth a look: the bills marked, by why.
- Paid by your business: what was recorded, in each currency. Two currencies are never added together, and USD and USDC count as two.
- Discounts taken: by the agent and by your business, each measured; on offer, estimated from the terms.
In a sandbox the agent's payments are simulated and say so. While the workspace has no real bill, the comparison uses its sample data, as the rest of the report does.
Record what your business paid
An owner or admin chooses Record what you paid on the bill. Under Outcome, choose Paid or Not paid.
- Paid: the Day paid, the Amount paid as it left your account (it starts at the bill's amount), the Currency (the bill's own, unless you paid in another), How it was paid (Bank transfer, Card, Cash or Other), and the Reference, if any.
- Not paid: Why was it not paid?, in at most 280 characters.
Add a Note if you like, then Save. To change a record, choose Correct and Save the correction. The record you corrected stays in the history and in the audit log; the comparison reads the newest.
Import a CSV
Under Import what your business paid from a CSV, choose a file with the columns invoice, paid_date (YYYY-MM-DD) and amount, and if you like currency (blank is the bill's own), reference and method (blank is other). invoice is the Vestiarion invoice id, or the bill's invoice number when its memo carries it. Download the bills not recorded yet gives a CSV of those bills with their ids, payees, amounts and due days filled in, ready to complete.
Nothing is saved until you check the preview. Each row reads New, Corrects the record (the bill has a record, and the row differs), Same as recorded (skipped), Not matched or Not read, with why. Save N payments saves the rows that change something, each as its own signed entry, and the preview then shows what is left.
Import a bank statement
Your bank's CSV export of an account fills in many records at once, without typing each one. Under Import a bank statement, type the Account the statement is from, as you name it; the accounts named before are offered under Named before:. Then choose the file under Choose a statement CSV, or drop one here, or open Or paste the cells from a spreadsheet, paste them and choose Read the pasted cells. A statement is up to 2,000 lines and 2 MB. Nothing is saved until you tick the lines. A file saved as UTF-8 keeps names in any language; one that is not is read as Windows-1252, as many banks still export, and the card says "This file is not saved as UTF-8". If names look wrong, paste the cells instead.
The statement is read in your browser at once, under a heading with its name, such as How statement-october.csv is read, or How the pasted cells are read:
- Separator (comma, semicolon, tab or pipe) and Header row are found from the file. Banks put the account and the period above the header; a file with no header is read with No header row. Change either if it is wrong.
- Each column is suggested from its header, and you can change it. Booking date and Description are needed, and either one Amount column or Money out and Money in. Value date, Payee, Reference, Currency and Balance are read when the statement has them; choose Not in this statement for one it lacks. Each column shows its first value beside its name.
- With one amount column, say how In the amount column, money out is written: As a negative amount, such as -120.00, as most banks do, or As a positive amount, such as 120.00. A value in brackets, or with a minus after it, is read as negative, as is one with the minus sign (−) a spreadsheet writes, and DR or CR after a value says money out or money in. With money out and money in in two columns, the column says which, whatever the sign. A dash alone, as some banks write in the column a line leaves empty, is read as empty.
- With no currency column, type the Currency of the account, such as SGD or EUR, or USDC or EURC.
Nothing is guessed. When every date reads two ways, such as 03/04/2026, the card asks How are the dates written? and shows the day each way gives. When an amount such as 1,500 could be thousands or one and a half, it asks which. What is missing or does not fit is listed under Before the lines can be read.
Then it says how many lines were read, the first and last day, how many are money out and how many money in, and lists the rows not read as lines, each with why: a footer, a day after tomorrow, a value that is not an amount. With a Balance column, it checks the statement against its own running balance, in each currency. The statement's balance adds up gives the opening and closing balance and the money out and in; otherwise it names the line where it does not add up, and what the balance should have been there. A statement cut from a longer one can start mid-day, so you can still match its lines. When the lines add up only with money in and money out swapped, it says so: check the columns. These are your bank's figures for the account: the agent never counts or spends this money.
Choose Find the bills. Each line of money out is matched against the bills this report compares, in the same currency (USD is never USDC), booked from the day before the bill was added to 60 days after it was due (or was added, for a bill with no due day):
- The same amount is a match, ticked for you when the line and the bill are each other's only best fit. Each match says why: Same amount, the day paid against the due day (or the day the bill was added, for a bill with none), the payee's name or the invoice number found in the line, and the record it would correct. An invoice number is a word of the bill's memo with a digit in it, such as INV-1108 or 10442; a year, a date or an amount in the memo is not one, nor are four digits alone, which are as often a card's last digits.
- An amount within 5%, such as a bank fee or an early-payment discount, shows as Amount differs only when the payee's name or an invoice number is in the line. It is never ticked for you.
- When several bills fit as well, the line says Choose the bill: choose the one it paid, and the line is ticked.
- Already used: the line recorded a payment at an earlier import of this account. Already recorded: the bill's record already says this line. No bill matches: record that bill by hand if the line paid one.
- Money in is never matched: receivables are not part of this import. Two lines with the same day, amount and text are both kept, and marked Looks the same as another line.
Save N payments saves the ticked lines. The server reads the statement again and matches it again first, and saves a line only while its bill is still one it could have paid. Each is recorded as paid by bank transfer on the booking day, for the line's amount and currency, with its reference, correcting the bill's record when it has one, as its own signed entry. The bill's record then reads from a bank statement. A line used once is kept, so the same or an overlapping statement imported again shows it as Already used. The rest of the statement is never stored.
If something goes wrong
| Message | What to do |
|---|---|
| Recording what your business paid is not set up on this deployment yet. | The deployment's database has not been updated for it yet. The rest of the report is unchanged; try again after the next update. |
| What your business did about this bill is recorded already. Correct it instead. | Someone recorded it since the page loaded. Reload the page and choose Correct. |
| That record was corrected since. Reload the page and correct the newest one. | Reload the page: the comparison shows the newest record. |
| Someone recorded this bill a moment before. Reload the page to see it. | Reload the page, then correct it if it is not right. |
| Choose the day it was paid, on or before tomorrow. | Choose a day that has come. |
| Type the amount as it was paid, above zero, such as 1,250.00. | A currency with no cents, such as JPY, takes a whole amount. |
| Type the currency as a three-letter code, such as EUR, or USDC or EURC. | Type the code of the currency you paid in. |
| Say why it was not paid, in a few words. | Fill in the reason, then save. |
| Importing a bank statement is not set up on this deployment yet. | The deployment's database has not been updated for it yet. Record each bill, or import a CSV, until the next update. |
| Name the account the statement is from, in at most 80 characters. | Type the account's name under Account. |
| Choose a statement smaller than 2 MB. | Export a shorter period from your bank. |
| The statement has more than 2,000 lines. Import a shorter period. | Export a shorter period, and import each one. |
| Choose the column with the booking date. | Choose its column under Booking date, or the right Header row. The description and the amount columns are asked for the same way. |
| A value on line N is not a date in the order the other dates are written. | The column chosen as Booking date or Value date holds something else on that line, or dates in two orders. Check the columns. |
| Two values are written with different decimal marks. | The amounts mix a decimal point and a decimal comma. Check the amount and balance columns. |
| That bill is not one this line could have paid. Read the statement again. | The bills or their records changed since you chose Find the bills. Choose it again. |
| This line recorded a payment already, for a payee. | It was saved at an earlier import, perhaps by someone else a moment before. Nothing to do. |
Each record is a signed entry in the ledger: actual_payment_recorded, or actual_payment_corrected for a correction, with who recorded it, the payable and what was recorded. A record from a bank statement also carries via: "statement" and statementLine: the kept line's id, the account as you named it, the line of the file, its booking and value days, its amount (money out is negative), currency, description, payee, reference and the balance after it.
Currencies and rates
Under the rest of the report, Currencies and rates gives the bills as written, what was paid on Arc and what your business recorded paying, each in its own currency first, then in your reporting currency with the rates that took it there, or unknown when a rate was not recorded. It shows the FX variance on paid bills, every rate used with its kind, source and time, and two figures: Amounts with full provenance and Manual FX adjustments. See Work in your own currency.
Share this report
An owner or admin can give anyone a live copy of the report, without a login: your partner, your accountant, or an outside reviewer. Choose Share this report, beside the guide's link at the top of the report, then choose what the copy shows:
- Supplier names: Labels: Supplier A, Supplier B, in the order each supplier's first bill arrived (the agent's reasoning uses the same labels), or Their names.
- Amounts: Show amounts, or Hide every amount: bills, payments, sums and discounts, and the links to transactions, whose explorer page shows the amount. The counts stay.
- Title: This workspace's name, or A business on Vestiarion.
Choose Make the link. The link is shown once, with Copy: "Report shared. Copy the link now: it is shown only once." Vestiarion keeps only a hash of it, so a lost link cannot be shown again: stop it and make a new one.
A copy never shows memos, notes, references, invoice ids, or the names and emails of the workspace's members. The agent's reasoning is its first sentence, at most 200 characters, with any email, 0x address or id, and any purchase order reference or memo it quotes, hidden; so is a code in a memo, such as an invoice number with letters in it. In its own words, it may still say what a bill is for, and the dialog says so. With labels, every supplier name the workspace knows is replaced by its label, a name with a full stop in it included, and with amounts hidden, every number in it becomes #. With amounts shown, a payment on chain links to its transaction on the public explorer, which shows its amount and the address it was paid to, even when the copy shows labels. With amounts hidden, no transaction is linked: the copy says "Transactions are not linked while amounts are hidden: the public explorer shows what each one carried."
What the link shows
Anyone who opens the link sees the report as it is at that moment: it is recomputed each time the page opens, and says so: "Live: recomputed each time this page opens." with the time it was computed.
- The title, the period from the workspace's first entry to now, and the network.
- The box that says which money it was, as on the report: simulated in a sandbox, sample data while there is no real bill, shadow mode with your currency, or test or real USDC.
- The figures: bills handled and decided, time to decide, paid on Arc and on time, stopped before paying, and the people's verdicts with how often they agreed with the agent, counted as the console counts them.
- Value, in the same three groups, with From the business's answer for the estimate. It never names who answered.
- Agent vs what really happened, marked Totals only: bills compared, bills not recorded yet, the same outcome, a different outcome, and the median days apart. A bill nobody recorded is counted only as not recorded.
- Each decided bill's newest decision, newest first, at most 50: the day, the supplier or its label, the amount, what the agent did, its reasoning, the person's verdict, its ledger entry number and its transaction on the explorer, or Simulated. With amounts hidden, it reads Transaction not linked.
- Payments and their proof: the newest ten, with their transactions, or Not linked with amounts hidden.
Each decision has Check its signature: the reader's browser checks, with the workspace's public keys, that the workspace's key signed the entry and that it follows the entry before it. The entry's content is never published, since it holds names and amounts the copy may hide.
A link that was stopped, or that is not one, reads "This report is no longer shared." and names no one. When the report cannot be read for a moment, it reads "This report could not load. Try again in a moment."
Shared links
Every member sees Shared links at the foot of the report: each live link, what it shows, who made it and when. An owner or admin chooses Stop sharing, and from that moment the link reads "This report is no longer shared." A workspace can have up to 10 live links at once, each with its own choices; a stopped link is kept in the history, never deleted.
Each share is a signed report_shared entry with who made it and what it shows, and each stop a report_unshared entry. When a link cannot be recorded in the ledger, it is stopped at once and you are asked to try again.
| Message | What to do |
|---|---|
| Sharing the report is not set up on this deployment yet. | The deployment's database has not been updated for it yet. The rest of the report is unchanged; try again after the next update. |
| This workspace has 10 live links to its report. Stop sharing one before you make another. | Stop a link nobody uses any more, then make the new one. |
| The link could not be recorded in the ledger, so it was stopped at once. Try again in a moment. | Nothing was shared. Try again. |
| That link was stopped already. | Someone stopped it since the page loaded. Reload the page. |
| Your answer is not set up on this deployment yet. | The deployment's database has not been updated for it yet; the measured figures are unchanged. |
| Type the minutes one bill took, a whole number from 1 to 6,000. | Type a whole number of minutes, such as 25. |
A new workspace
Until the workspace has a bill, real or sample, the section says No real bills yet and links to Bills & receivables, where you add one.