Skip to content
Report · Payables

Vendor spend by month

Spend per vendor per month from bills less vendor credits, with each figure linked to the lines behind it.

  • monthly
  • spend
  • drill-through
Sample preview, fictional dataYour own figures appear after import.

01

About this report

Bill lines less vendor credit lines, before tax, in base currency, by vendor and month for the last 24 months. The Bills column counts the bills and credits in the month.

Click a Spend figure to open Vendor bill lines filtered to that vendor and month, where the lines add up to the figure clicked. Group by Quarter or Year, or filter on Vendor, to prepare a vendor review.

02

Sample preview

Fictional figures in the shape you will see. Yours come from your account.

MonthVendorBillsSpend
2026-09Cloudway Hosting214,200
2026-09Ridgeline Contractors311,380
2026-09Pacific Office Partners13,120.40
2026-08Ridgeline Contractors416,250
2026-08Metro Courier Services61,284.75

03

The SuiteQL

This is the query each report runs. Read it, copy it, or change it after import.

Vendor spend by month
SELECT TO_CHAR(t.trandate, 'YYYY-MM') AS period,
       t.entity AS vendor__id,
       NVL(v.altname, v.entityid) AS vendor,
       COUNT(DISTINCT t.id) AS bills,
       SUM(tl.foreignamount * t.exchangerate) AS spend
  FROM transaction t
  JOIN transactionline tl ON tl.transaction = t.id
  JOIN entity v ON v.id = t.entity
 WHERE t.type IN ('VendBill', 'VendCred')
   AND t.posting = 'T'
   AND tl.mainline = 'F'
   AND tl.taxline = 'F'
   AND NVL(tl.itemtype, 'x') NOT IN ('TaxGroup', 'TaxItem', 'Subtotal', 'Description', 'EndGroup')
   AND t.trandate >= ADD_MONTHS(TRUNC(SYSDATE, 'MM'), -23)
 GROUP BY TO_CHAR(t.trandate, 'YYYY-MM'), t.entity, NVL(v.altname, v.entityid)
 ORDER BY period DESC, spend DESC
Vendor bill lines
SELECT TO_CHAR(t.trandate, 'YYYY-MM') AS period,
       TO_CHAR(t.trandate, 'YYYY-MM-DD') AS tran_date,
       NVL(v.altname, v.entityid) AS vendor,
       BUILTIN.DF(t.type) AS type,
       NVL(t.tranid, t.transactionnumber) AS document,
       BUILTIN.DF(tl.expenseaccount) AS account,
       BUILTIN.DF(tl.item) AS item,
       tl.memo AS memo,
       tl.foreignamount * t.exchangerate AS amount
  FROM transaction t
  JOIN transactionline tl ON tl.transaction = t.id
  JOIN entity v ON v.id = t.entity
 WHERE t.type IN ('VendBill', 'VendCred')
   AND t.posting = 'T'
   AND tl.mainline = 'F'
   AND tl.taxline = 'F'
   AND NVL(tl.itemtype, 'x') NOT IN ('TaxGroup', 'TaxItem', 'Subtotal', 'Description', 'EndGroup')
   AND t.trandate >= ADD_MONTHS(TRUNC(SYSDATE, 'MM'), -23)
 ORDER BY t.trandate DESC, t.tranid

04

Appears in

ReportPayables

Vendor spend by month

Screenshot of the Vendor spend by month report in HiScale Advanced Reports, filled with fictional sample data
Sample preview, fictional dataOpen image full size (opens in a new tab)