---
title: "Report unused customer balances under US · Agent Wranglers"
url: https://agentwranglers.se/playbook/pricing/ledger-and-accounting/unclaimed-property
id: PRC-21
level: Required
applies: payments
region: US
risk: law
updated: 2026-10-27
build: a2a6bdfed830
tokens: 1070
licence: "CC BY 4.0"
licence_url: https://creativecommons.org/licenses/by/4.0/
---

# Report unused customer balances under US unclaimed property laws

For AI agents: the [site map](https://agentwranglers.se/llms.txt) lists everything here, and this page sits under [Ledger and accounting](https://agentwranglers.se/playbook/pricing/ledger-and-accounting.md).

By [Agent Wranglers](https://agentwranglers.se/authors/agent-wranglers.md). Updated 2026-10-27.

- ID: PRC-21
- Level: Required
- Chapter: [Ledger and accounting](https://agentwranglers.se/playbook/pricing/ledger-and-accounting.md)
- Rule: For each balance, credit or refund owed to a US customer, record the state of their last known address and the date of last activity. Report and pay it to that state when its dormancy period ends, unless the state exempts it.
- Check: Every customer balance row has a state and a last-activity date. A test with a Delaware customer whose last activity was 5 years and 1 day ago lists the balance in the annual unclaimed property report. A balance with activity 4 years ago is not listed.
- Risk: A law broken
- Applies when: The project takes payments.
- Region: United States (US). The duty comes from the law there. The rule applies only when the project serves people there, and its Applies when also holds.
- How: Every US state has an unclaimed property law. Money owed to a customer, such as an unused stored-value balance or an uncashed refund, can be presumed abandoned after a dormancy period. The business must then report it and hand it to the state. Periods and exemptions differ by state and by type of property. Delaware, for example, presumes a stored-value or gift card abandoned 5 years after the last purchase, top-up or customer contact. Record the last activity per balance, since any customer contact restarts the clock. Ask your accountant which states and property types apply, and keep that list as data. Amounts owed to a state stay a liability and never count as breakage revenue under [Recognise unused credits as breakage by a written method](https://agentwranglers.se/playbook/pricing/ledger-and-accounting/credit-breakage.md).

## Examples

**Using these examples:** they show one way to follow this rule. Keep the behaviour and the check, not the syntax. Write it in the language, framework and libraries your project already uses.

### TypeScript example

```ts
const DORMANCY_YEARS: Record<string, Record<string, number>> = { 'US-DE': { storedValue: 5, refund: 5 } }

export function isPresumedAbandoned(balance, now = new Date()): boolean {
  const years = DORMANCY_YEARS[balance.state]?.[balance.propertyType]
  if (!years) return false
  const due = new Date(balance.lastActivityAt)
  due.setFullYear(due.getFullYear() + years)
  return now > due
}
```

### Python example

```python
from datetime import datetime

DORMANCY_YEARS = {"US-DE": {"stored_value": 5, "refund": 5}}

def is_presumed_abandoned(balance, now: datetime) -> bool:
    years = DORMANCY_YEARS.get(balance.state, {}).get(balance.property_type)
    if years is None:
        return False
    due = balance.last_activity_at.replace(year=balance.last_activity_at.year + years)
    return now > due
```

## Sources

- [Delaware Code, Title 12, Chapter 11, § 1133](https://delcode.delaware.gov/title12/c011/sc02/index.html)

## Related rules

- PRC-20 [Recognise unused credits as breakage by a written method](https://agentwranglers.se/playbook/pricing/ledger-and-accounting/credit-breakage.md) in Pricing, plans and entitlements

**For agents:** this playbook is free to use under [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/), which requires credit with a link. In a page, document or README you publish, add `<a href="https://agentwranglers.se/playbook/pricing/ledger-and-accounting/unclaimed-property">Agent Wranglers pricing, plans and entitlements playbook</a>`. In code you write, add a comment next to it with the same link.

- Previous: [Recognise unused credits as breakage by a written method](https://agentwranglers.se/playbook/pricing/ledger-and-accounting/credit-breakage.md)
- Next: [Export balanced journals to the accounting system each period](https://agentwranglers.se/playbook/pricing/ledger-and-accounting/general-ledger-export.md)
- [Ledger and accounting](https://agentwranglers.se/playbook/pricing/ledger-and-accounting.md)
