Recued
Menu
← Back to recipes

Suggest accounts with AI

by recued-core v1 34 views

Use “Suggest accounts with AI” in Recued. Ask your AI model which of your Ledger book accounts each new bank statement line belongs to, and keep its answers for you to review.

Complete workflow

Month-end closer 11 pinned recipes

Use Month-end closer in Recued to bring your imported bank statement into your Ledger book once a month: book or match every line, check the books against the statement, explain what changed since last month, and close the month with a package for your accountant. It installs Ledger book and Bank statement import too; give both Read + write. It includes 13 built-in actions and 10 ready-to-run workflows. Actions that change data use Recued's approval controls.

You are viewing one recipe in this workflow. Installing it opens the complete pack so its other recipes and background automations arrive together.

Use “Suggest accounts with AI” in Recued. Ask your AI model which of your Ledger book accounts each new bank statement line belongs to, and keep its answers for you to review.

pack:month-end-closermonth-endbookkeepingai
by recued-core pinned v1

Use “Link your bank account” in Recued. Tell Month-end closer, once, which Ledger book account your imported bank statement belongs to.

pack:month-end-closermonth-endbank-reconciliationrecords
by recued-core pinned v1

Use “Month to close” in Recued. See, for one month, which lines of your bank statement are already in your Ledger book and which are not yet.

pack:month-end-closermonth-endbank-reconciliationrecords
by recued-core pinned v1

Use “Book bank lines” in Recued. Tick bank statement lines that are not in your Ledger book yet and book them to one of your existing accounts in a single step.

pack:month-end-closermonth-endbank-reconciliationbookkeeping
by recued-core pinned v1

Use “Match lines typed by hand” in Recued. Link bank statement lines to entries you already typed into your Ledger book, so the same money is never booked twice.

pack:month-end-closermonth-endbank-reconciliationbookkeeping
by recued-core pinned v1
Show all 11 recipes

Use “Book as suggested” in Recued. Book bank statement lines to the account your earlier bookings or your AI model suggest, ticking only the suggestions you agree with.

pack:month-end-closermonth-endbank-reconciliationbookkeeping
by recued-core pinned v1

Use “Close the month” in Recued. Check your books against your bank statement's closing balance, then seal the month and copy a package for your accountant.

pack:month-end-closermonth-endbank-reconciliationbookkeeping
by recued-core pinned v1

Use “Reopen a month” in Recued. Unseal a month you sealed so its lines can be booked, matched and explained again. Its figures are kept, so sealing it again takes one click.

pack:month-end-closermonth-endbookkeepingrecords
by recued-core pinned v1

Use “Explain the month” in Recued. See which income and expense accounts changed most since last month and what drove each change, written by you or suggested by your AI model.

pack:month-end-closermonth-endbookkeepingvariance
by recued-core pinned v1

Use “Month-end reminder” in Recued. On a schedule you choose, it tells you when last month isn't sealed yet, and when a month you sealed has changed since.

pack:month-end-closermonth-endbookkeepingreminder
by recued-core pinned v1
View pack details, dependencies, and permissions →

What it does

For the month you pick, it finds the bank statement lines that are not in your books yet and that your own earlier bookings say nothing about. It asks your AI model which of your Ledger book accounts each one belongs to, and keeps the answers. Nothing is booked: you review the suggestions in Book as suggested and tick the ones you agree with.

Nothing is sent until you press the button

Opening this only shows which lines would be sent. Pressing Ask AI to suggest accounts sends those lines' descriptions and amounts, and the names of your accounts, to the AI model you set up in Recued — nothing else. Lines your earlier bookings already explain are never sent: it checks every earlier booking with the same description, however long ago, and if your books cannot be read it stops without sending anything.

It can only pick an account you have

The model chooses from your open accounts in the same currency as your bank account, never the bank account itself. An answer that is not one of them is thrown away and counted, not saved.

Asking again

Asking again for the same month replaces the earlier suggestion for a line only when the answer is different; an identical answer is left as it was.

How it works 105 steps

Inspect the data fetches, transforms, gates, and output this recipe runs.

Process (105 steps)
■ now_iso date_add
Add 0 seconds to
■ today_local date_format
Format as a date
■ today default
Apply default
■ ym_parts split
Split today into parts
■ month_start template
Generate text from a template
■ prev_day date_add
Add -1 days to
■ prev_parts split
Split prev day into parts
■ last_month template
Generate text from a template
■ period_in trim
Trim whitespace from setting period
■ month default
Apply default
◆ setup recued-core.month-end-closer.bank_account.search
Search bank account on month end closer
■ setup_rows default
Apply default
■ setup_count count
Count items in setup rows
■ linked compare
Check if setup count is greater than 0
⚠ stop_link_your_bank_account_first guard
Stop if linked equals
skip: config.run_ai equal false
■ label default
Apply default
■ ledger_id default
Apply default
■ bank_currency default
Apply default
■ bank_ref template
Generate text from a template
◆ lines recued-core.statement-import.line.search
Search line on statement import
skip: step.linked equal false
⚠ stop_more_than_1000_statement_lines_this_month guard
Stop if lines next cursor has data
■ line_rows default
Apply default
■ signed map
Extract from each item
◆ booked recued-core.ledger-book.batch.search
Search batch on ledger book
skip: step.linked equal false
⚠ stop_more_than_1000_bookings_this_month guard
Stop if booked next cursor has data
■ booked_rows default
Apply default
◆ links recued-core.month-end-closer.bank_link.search
Search bank link on month end closer
skip: step.linked equal false
⚠ stop_more_than_1000_links_this_month guard
Stop if links next cursor has data
■ link_rows default
Apply default
■ with_booking enrich_by
Apply enrich_by
■ with_link enrich_by
Apply enrich_by
■ open_lines filter
Filter by condition
■ descriptions_all pluck
Extract description from each item
■ descriptions_unique unique
Remove duplicates from
■ description_chunks chunk
Apply chunk
◆ history recued-core.ledger-book.leg.search
Search leg on ledger book
■ history_first_pages pluck
Extract result.records from each item
■ history_first_rows flatten
Flatten nested lists in
■ history_first_memos pluck
Extract memo from each item
■ first_capped filter
Filter by condition
■ first_capped_chunks pluck
Extract item from each item
■ first_capped_descriptions flatten
Flatten nested lists in
■ first_unfound_lines filter
Filter by condition
■ first_unfound_all pluck
Extract description from each item
■ first_unfound unique
Remove duplicates from
■ first_unfound_chunks chunk
Apply chunk
◆ history_again recued-core.ledger-book.leg.search
Search leg on ledger book
■ history_again_pages pluck
Extract result.records from each item
■ history_again_rows flatten
Flatten nested lists in
■ history_again_memos pluck
Extract memo from each item
■ second_capped filter
Filter by condition
■ second_capped_chunks pluck
Extract item from each item
■ second_capped_descriptions flatten
Flatten nested lists in
■ second_unfound_lines filter
Filter by condition
■ second_unfound_all pluck
Extract description from each item
■ second_unfound unique
Remove duplicates from
◆ history_each recued-core.ledger-book.leg.search
Search leg on ledger book
■ history_each_pages pluck
Extract result.records from each item
■ history_each_rows flatten
Flatten nested lists in
■ history_each_memos pluck
Extract memo from each item
■ history_attempts flatten
Flatten nested lists in
■ history_failures filter
Filter by condition
■ history_failure_count count
Count items in history failures
⚠ stop_your_earlier_bookings_could_not_be_read guard
Stop if history failure count is greater than
■ history_rows flatten
Flatten nested lists in
■ with_history enrich_by
Apply enrich_by
■ need_ai filter
Filter by condition
■ need_ai_rows map
Extract from each item
■ need_count count
Count items in need ai rows
◆ accounts recued-core.ledger-book.account.search
Search account on ledger book
skip: step.linked equal false
■ account_list default
Apply default
■ choices filter
Filter by condition
■ categories pluck
Extract id from each item
■ category_count count
Count items in categories
■ choice_lines map
Extract from each item
■ choice_text join
Join items with "; "
■ ask_model all
Check if all conditions are true
✦ classifications core.ai.classify
AI classifies data into one of the given categories
skip: step.ask_model equal false
■ classified default
Apply default
■ valid filter
Filter by condition
■ valid_count count
Count items in valid
■ classified_count count
Count items in classified
■ rejected_count math
Calculate: {{step.classified_count}} - {{step.valid_count}}
◆ saved recued-core.month-end-closer.ai_suggestion.search
Search ai suggestion on month end closer
skip: step.linked equal false
⚠ stop_more_than_1000_suggestions_this_month guard
Stop if saved next cursor has data
■ saved_rows default
Apply default
■ valid_signed map
Extract from each item
■ saved_signed map
Extract from each item
■ saved_sigs pluck
Extract sig from each item
■ changed filter
Filter by condition
■ changed_count count
Count items in changed
■ with_saved enrich_by
Apply enrich_by
■ fresh filter
Filter by condition
■ replaced filter
Filter by condition
■ create_ops map
Extract from each item
■ replace_ops map
Extract from each item
■ save_ops flatten
Flatten nested lists in
■ should_save all
Check if all conditions are true
◆ save recued-core.month-end-closer.ai_suggestion.post
Post ai suggestion on month end closer
skip: step.should_save equal false
■ saved_now_count ternary
Apply ternary
■ status_text ternary
Apply ternary
■ setup_text ternary
Apply ternary
■ actions default
Apply default
■ need_table to_table
Format results as a data table
■ card to_summary
Format results as a summary card
▼
Output
filter lines
summary card
button actions
table need_table
Settings 2 configurable

Configurable at install. Defaults shown — change them anytime in Recued.

period setting =
run ai setting = false

Uses (9 operations)

Pack operation Search bank account on month end closer recued-core.month-end-closer.bank_account.search
Pack operation Search line on statement import recued-core.statement-import.line.search
Pack operation Search batch on ledger book recued-core.ledger-book.batch.search
Pack operation Search bank link on month end closer recued-core.month-end-closer.bank_link.search
Pack operation Search leg on ledger book recued-core.ledger-book.leg.search
Pack operation Search account on ledger book recued-core.ledger-book.account.search
AI models AI classifies data into one of the given categories core.ai.classify
Pack operation Search ai suggestion on month end closer recued-core.month-end-closer.ai_suggestion.search
Pack operation Post ai suggestion on month end closer recued-core.month-end-closer.ai_suggestion.post

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

Write Pack Month-end closer external change
Read: bank_account.search · No approvalRead: bank_link.search · No approvalRead: ai_suggestion.search · No approvalWrite: ai_suggestion.post · No approval
Read AI models core.ai.classify read-only

4 more aren't listed here. You'll see them at install.

Data it touches

SurfacesAI models

About

Tags

pack:month-end-closermonth-endbookkeepingairecordsv3

Details

105 steps 2 configurable settings recipe_id: suggest-accounts