addrbookFor publishers
← The evidence ledger

Evidence row 67958

Observed , by baseline/1.

Kind
listing
About
source_record x402_bazaar:https://api.paidpilot.io/v1/receivables-report
Recorded
Previous row
None: the first of its kind about this subject
Body SHA-256
d72ee9252b8c957d5c96e585c9427ea6c02863aec4f7b826dca02e79abdadfd8
Leaf
0xd4b01a63d7f859b2e5995006a2f42375b9f05b674adad341dd28d94e04324c19

What was observed

{
  "endpoints": [
    [
      "x402",
      "https://api.paidpilot.io/v1/receivables-report"
    ]
  ],
  "name": "PaidPilot Invoice API",
  "owner_address": "0x2daf658b01e257206375798a15832e9f547d65dd",
  "raw": {
    "accepts": [
      {
        "amount": "1000000",
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "maxTimeoutSeconds": 120,
        "network": "eip155:8453",
        "payTo": "0x2dAF658B01e257206375798a15832E9f547D65dD",
        "scheme": "exact"
      }
    ],
    "description": "Analyze accounts receivable aging from an invoice CSV or JSON export. $1 USDC on Base per call. Takes up to 1000 open invoices (QuickBooks, Xero, FreshBooks, Wave, Stripe or custom). Returns an A-F health grade, 0-100 score, aging buckets, overdue %, DSO and a collection priority list. Don't use this for a single invoice; use /v1/reminder-draft or /v1/late-fee.",
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "body": {
              "as_of": "2026-10-13",
              "csv": "Invoice Number,Customer,Invoice Date,Due Date,Total,Amount Paid,Status,Paid Date\nINV-1001,Blue River Bakery,2026-06-02,2026-07-02,2400.00,0,Open,\nINV-1002,Hill & Co Dental,2026-08-05,2026-09-04,1850.00,0,Open,\nINV-1003,Blue River Bakery,2026-08-20,2026-09-19,960.00,400.00,Partial,\nINV-1004,Maple Street Realty,2026-09-15,2026-10-15,3200.00,0,Open,\nINV-1005,Hill & Co Dental,2026-07-01,2026-07-31,1200.00,1200.00,Paid,2026-08-12\nINV-1006,Prairie Auto Repair,2026-09-01,2026-10-01,725.50,0,Open,\nINV-1007,Maple Street Realty,2026-08-01,2026-08-31,3200.00,3200.00,Paid,2026-09-03",
              "currency": "USD"
            },
            "bodyType": "json",
            "method": "POST",
            "type": "http"
          },
          "output": {
            "example": {
              "aging": {
                "1_30": {
                  "amount": 1285.5,
                  "count": 2,
                  "display": "$1,285.50",
                  "percent": 14.7
                },
                "31_60": {
                  "amount": 1850,
                  "count": 1,
                  "display": "$1,850.00",
                  "percent": 21.2
                },
                "61_90": {
                  "amount": 0,
                  "count": 0,
                  "display": "$0.00",
                  "percent": 0
                },
                "current": {
                  "amount": 3200,
                  "count": 1,
                  "display": "$3,200.00",
                  "percent": 36.6
                },
                "no_due_date": {
                  "amount": 0,
                  "count": 0,
                  "display": "$0.00",
                  "percent": 0
                },
                "over_90": {
                  "amount": 2400,
                  "count": 1,
                  "display": "$2,400.00",
                  "percent": 27.5
                }
              },
              "as_of": "2026-10-13",
              "collection_priority": [
                {
                  "balance": 2400,
                  "bucket": "over_90",
                  "customer": "Blue River Bakery",
                  "days_overdue": 103,
                  "display": "$2,400.00",
                  "due_date": "2026-07-02",
                  "invoice_number": "INV-1001",
                  "next_action": {
                    "detail": "Send a final notice with a date, then decide on a payment plan, collections or small-claims court.",
                    "step": "final_notice",
                    "tool": "POST /v1/reminder-draft with tone=final"
                  }
                },
                {
                  "balance": 1850,
                  "bucket": "31_60",
                  "customer": "Hill & Co Dental",
                  "days_overdue": 39,
                  "display": "$1,850.00",
                  "due_date": "2026-09-04",
                  "invoice_number": "INV-1002",
                  "next_action": {
                    "detail": "Send a firm reminder and add the late fee your terms allow.",
                    "step": "firm_reminder_and_late_fee",
                    "tool": "POST /v1/reminder-draft with tone=firm; POST /v1/late-fee"
                  }
                },
                {
                  "balance": 725.5,
                  "bucket": "1_30",
                  "customer": "Prairie Auto Repair",
                  "days_overdue": 12,
                  "display": "$725.50",
                  "due_date": "2026-10-01",
                  "invoice_number": "INV-1006",
                  "next_action": {
                    "detail": "Send a friendly reminder with the payment link.",
                    "step": "friendly_reminder",
                    "tool": "POST /v1/reminder-draft with tone=friendly"
                  }
                },
                {
                  "balance": 560,
                  "bucket": "1_30",
                  "customer": "Blue River Bakery",
                  "days_overdue": 24,
                  "display": "$560.00",
                  "due_date": "2026-09-19",
                  "invoice_number": "INV-1003",
                  "next_action": {
                    "detail": "Send a friendly reminder with the payment link.",
                    "step": "friendly_reminder",
                    "tool": "POST /v1/reminder-draft with tone=friendly"
                  }
                }
              ],
              "currency": "USD",
              "customers": [
                {
                  "customer": "Maple Street Realty",
                  "display": "$3,200.00",
                  "invoices": 1,
                  "oldest_days_overdue": 0,
                  "open_balance": 3200,
                  "overdue_balance": 0,
                  "share_percent": 36.6
                },
                {
                  "customer": "Blue River Bakery",
                  "display": "$2,960.00",
                  "invoices": 2,
                  "oldest_days_overdue": 103,
                  "open_balance": 2960,
                  "overdue_balance": 2960,
                  "share_percent": 33.9
                },
                {
                  "customer": "Hill & Co Dental",
                  "display": "$1,850.00",
                  "invoices": 1,
                  "oldest_days_overdue": 39,
                  "open_balance": 1850,
                  "overdue_balance": 1850,
                  "share_percent": 21.2
                },
                {
                  "customer": "Prairie Auto Repair",
                  "display": "$725.50",
                  "invoices": 1,
                  "oldest_days_overdue": 12,
                  "open_balance": 725.5,
                  "overdue_balance": 725.5,
                  "share_percent": 8.3
                }
              ],
              "input_report": {
                "csv_columns_used": {
                  "amount": "Total",
                  "amount_paid": "Amount Paid",
                  "customer": "Customer",
                  "due_date": "Due Date",
                  "invoice_number": "Invoice Number",
                  "issue_date": "Invoice Date",
                  "paid_date": "Paid Date",
                  "status": "Status"
                },
                "default_terms": "Net 30",
                "due_dates_assumed_from_terms": 0,
                "rows_excluded_void_draft_or_future": 0,
                "rows_read": 7,
                "rows_skipped": []
              },
              "notes": [
                "Pure calculation on the data you sent: nothing is stored or sent anywhere.",
                "Days overdue and buckets use the due date; rows without one use the invoice date plus the row's terms (or default_terms).",
                "Not accounting, legal or credit advice."
              ],
              "recommendations": [
                "Start with the 1 invoice over 60 days ($2,400.00): the older an invoice gets, the less likely it is to be paid.",
                "Send reminders on the 2 invoices 1-30 days late ($1,285.50) this week, before they age.",
                "Maple Street Realty is 36.6% of your receivables. Ask for a deposit or shorter terms on new work, and watch this account weekly.",
                "Customers take 38 days to pay on average. Offer card/ACH payment links, send invoices the day work is done, and consider 2/10 Net 30 to reward fast payment."
              ],
              "report": "receivables_health",
              "summary": {
                "average_days_to_pay": 38,
                "customers_with_open_balance": 4,
                "dso_days": 79,
                "dso_note": "Open balance / amount invoiced in the last 90 days x 90. Needs every invoice from that window (paid ones too) in the input to be accurate.",
                "grade": "F",
                "headline": "$5,535.50 of $8,735.50 owed to you is past due (63.4%), across 4 invoices.",
                "open_balance": 8735.5,
                "open_display": "$8,735.50",
                "open_invoices": 5,
                "over_60_percent": 27.5,
                "overdue_balance": 5535.5,
                "overdue_invoices": 4,
                "overdue_percent": 63.4,
                "paid_invoices_measured": 2,
                "score": 48,
                "score_reasons": [
                  "63.4% of open receivables are past due (-32).",
                  "27.5% are more than 60 days past due, the part least likely to be collected (-18).",
                  "Maple Street Realty holds 36.6% of what you are owed (-2)."
                ],
                "top_customer_share_percent": 36.6,
                "weighted_days_outstanding": 68
              }
            },
            "type": "json"
          }
        },
        "schema": {
          "$schema": "https://json-schema.org/draft/2020-12/schema",
          "properties": {
            "input": {
              "additionalProperties": false,
              "properties": {
                "body": {
                  "$schema": "https://json-schema.org/draft/2020-12/schema",
                  "additionalProperties": false,
                  "properties": {
                    "as_of": {
                      "description": "Report date, default today (UTC)",
                      "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
                      "type": "string"
                    },
                    "csv": {
                      "description": "CSV export (QuickBooks, Xero, FreshBooks, Wave, Stripe or your own). Header row required. Recognized columns: invoice number, customer, amount/total, amount paid, balance/open balance, invoice date, due date, terms, paid date, status.",
                      "maxLength": 60000,
                      "type": "string"
                    },
                    "currency": {
                      "default": "USD",
                      "type": "string"
                    },
                    "default_terms": {
                      "default": "Net 30",
                      "description": "Used when a row has no due date and no terms",
                      "maxLength": 40,
                      "type": "string"
                    },
                    "invoices": {
                      "description": "Or JSON rows instead of CSV",
                      "items": {
                        "additionalProperties": false,
                        "properties": {
                          "amount": {
                            "maximum": 10000000000,
                            "minimum": 0,
                            "type": "number"
                          },
                          "amount_paid": {
                            "maximum": 10000000000,
                            "minimum": 0,
                            "type": "number"
                          },
                          "balance": {
                            "maximum": 10000000000,
                            "type": "number"
                          },
                          "customer": {
                            "maxLength": 120,
                            "minLength": 1,
                            "type": "string"
                          },
                          "due_date": {
                            "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
                            "type": "string"
                          },
                          "invoice_number": {
                            "maxLength": 60,
                            "minLength": 1,
                            "type": "string"
                          },
                          "issue_date": {
                            "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
                            "type": "string"
                          },
                          "paid_date": {
                            "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
                            "type": "string"
                          },
                          "status": {
                            "maxLength": 30,
                            "type": "string"
                          },
                          "terms": {
                            "maxLength": 40,
                            "type": "string"
                          }
                        },
                        "required": [
                          "invoice_number",
                          "customer",
                          "amount"
                        ],
                        "type": "object"
                      },
                      "maxItems": 1000,
                      "type": "array"
                    },
                    "revenue_window_days": {
                      "default": 90,
                      "description": "Window for DSO: invoiced amount in the last N days",
                      "maximum": 365,
                      "minimum": 30,
                      "type": "integer"
                    }
                  },
                  "type": "object"
                },
                "bodyType": {
                  "enum": [
                    "json",
                    "form-data",
                    "text"
                  ],
                  "type": "string"
                },
                "method": {
                  "enum": [
                    "POST"
                  ],
                  "type": "string"
                },
                "type": {
                  "const": "http",
                  "type": "string"
                }
              },
              "required": [
                "type",
                "method",
                "bodyType",
                "body"
              ],
              "type": "object"
            },
            "output": {
              "properties": {
                "example": {
                  "type": "object"
                },
                "type": {
                  "type": "string"
                }
              },
              "required": [
                "type"
              ],
              "type": "object"
            }
          },
          "required": [
            "input"
          ],
          "type": "object"
        }
      }
    },
    "lastUpdated": "2026-10-24T14:46:15.613Z",
    "quality": {
      "l30DaysTotalCalls": 1,
      "l30DaysUniquePayers": 1,
      "lastCalledAt": "2026-10-24T14:46:15.476Z"
    },
    "resource": "https://api.paidpilot.io/v1/receivables-report",
    "serviceName": "PaidPilot Invoice API",
    "tags": [
      "accounts-receivable",
      "ar-aging",
      "dso",
      "collections",
      "quickbooks"
    ],
    "type": "http",
    "x402Version": 2
  },
  "source": "x402_bazaar",
  "summary": "Analyze accounts receivable aging from an invoice CSV or JSON export. $1 USDC on Base per call. Takes up to 1000 open invoices (QuickBooks, Xero, FreshBooks, Wave, Stripe or custom). Returns an A-F health grade, 0-100 score, aging buckets, overdue %, DSO and a collection priority list. Don't use this for a single invoice; use /v1/reminder-draft or /v1/late-fee."
}

What the leaf hashes

{"body":"d72ee9252b8c957d5c96e585c9427ea6c02863aec4f7b826dca02e79abdadfd8","id":67958,"kind":"listing","method":"baseline/1","observed_us":1793025465456830,"prev":null,"subject":"x402_bazaar:https://api.paidpilot.io/v1/receivables-report","subject_kind":"source_record"}

Proof

Its day has not closed yet. A day closes ten minutes after midnight UTC; the proof appears here then.

How to check it · This row as JSON