Track bills from mail
Use “Track bills from mail” in Recued. Each bill read from your email becomes a commitment to pay it by its due date, and is marked done when a later email says it was paid. It starts when a bill arrives or changes, not on a timer, and never pays, replies or contacts anyone.
How it works
Inspect the data fetches, transforms, gates, and output this recipe runs.
Process (42 steps)
bill
defaults
Apply defaults
is_open
all
Check if all conditions are true
is_paid
all
Check if all conditions are true
acts
any
Check if any of the conditions are true
key
replace
Replace text in mail-fact-bill:{{step.bill.thing_id}}
due_ms
date_parse
Parse bill due at as a date
has_invoice
compare
Check if bill invoice number has data
has_period
compare
Check if bill period has data
has_amount
all
Check if all conditions are true
period_part
ternary
Apply ternary
reference_part
ternary
Apply ternary
amount_part
ternary
Apply ternary
statement
truncate
Truncate Pay {{step.bill.issuer}}{{step.reference_part}}{{step.amount_part}} to a max length
amount_parts
split
Split bill amount into parts
cents
default
Apply default
cents_digits
string_length
Apply string_length
money_fits
all
Check if all conditions are true
money
ternary
Apply ternary
keys
default
Apply default
match_key
default
Apply default
listed
core.work-entity.list
List work entity
made_here
filter
Filter by condition
mine
filter
Filter by condition
found
count
Count items in mine
existing
default
Apply default
lifecycle_open
compare
Check if existing lifecycle state is one of pending,expired
is_live
all
Check if all conditions are true
create_new
all
Check if all conditions are true
statement_changed
compare
Check if existing statement does not equal statement
due_changed
compare
Check if existing promised for at does not equal due ms
money_changed
all
Check if all conditions are true
changed
any
Check if any of the conditions are true
refresh_money
all
Check if all conditions are true
refresh_text
all
Check if all conditions are true
settle
all
Check if all conditions are true
created
core.work-entity.commitment.create
Create work entity commitment
skip: step.create_new equal false
refreshed_with_money
core.work-entity.commitment.update
Update work entity commitment
skip: step.refresh_money equal false
refreshed
core.work-entity.commitment.update
Update work entity commitment
skip: step.refresh_text equal false
fulfilled
core.work-entity.commitment.fulfill
Fulfill work entity commitment
skip: step.settle equal false
updated_any
any
Check if any of the conditions are true
outcome
switch
Map create new}}/{{step updated any}}/{{step settle to one of: false/false/true, false/true/false, true/false/false
card
to_summary
Format results as a summary card
▼
Output
summary
card
Uses (4 operations)
Tasks & notes
List work entity
core.work-entity.list
Tasks & notes
Create work entity commitment
core.work-entity.commitment.create
Tasks & notes
Update work entity commitment
core.work-entity.commitment.update
Tasks & notes
Fulfill work entity commitment
core.work-entity.commitment.fulfill
Trust & control
What installing this recipe would let it do. Recued grants these permissions at install — review them there before approving.
What it's allowed to do
Read
Tasks & notes
core.work-entity.list
read-only
Write
Tasks & notes
core.work-entity.commitment.create
external change
Write
Tasks & notes
core.work-entity.commitment.update
external change
Write
Tasks & notes
core.work-entity.commitment.fulfill
external change