mirror of
https://github.com/we-promise/sure.git
synced 2026-07-19 08:15:21 +00:00
feat(imports): add YNAB CSV import (#2361)
Adds YnabImport (mirroring ActualImport) for YNAB "Export budget" register CSVs: - Amount — combines the split Outflow/Inflow columns into a single signed amount (inflow - |outflow|), stripping currency symbols and thousands separators. A single signed Amount column takes precedence when present. - Category — resolves across export shapes: the combined "Category Group/Category" column, the split "Category Group" + "Category", or legacy YNAB 4 "Master Category" + "Sub Category". - Names — falls back from a blank Payee to the Memo, then the default row name. - Validation — requires at least one amount source (Outflow/Inflow or Amount); a file exposing none leaves rows un-clean instead of importing zero-dollar entries. Enables the previously-disabled YNAB option on the imports screen (using the YNAB logo, like Mint) with its configuration partial, and removes the now-dead imports.new.coming_soon locale key. Documents the type in the API import-type enums (rswag request spec + swagger_helper + generated openapi.yaml). Closes #1255.
This commit is contained in:
@@ -1909,8 +1909,12 @@ components:
|
||||
- AccountImport
|
||||
- MintImport
|
||||
- ActualImport
|
||||
- YnabImport
|
||||
- CategoryImport
|
||||
- RuleImport
|
||||
- MerchantImport
|
||||
- PdfImport
|
||||
- QifImport
|
||||
- SureImport
|
||||
valid:
|
||||
type: boolean
|
||||
@@ -1997,8 +2001,12 @@ components:
|
||||
- AccountImport
|
||||
- MintImport
|
||||
- ActualImport
|
||||
- YnabImport
|
||||
- CategoryImport
|
||||
- RuleImport
|
||||
- MerchantImport
|
||||
- PdfImport
|
||||
- QifImport
|
||||
- SureImport
|
||||
status:
|
||||
type: string
|
||||
@@ -2050,8 +2058,12 @@ components:
|
||||
- AccountImport
|
||||
- MintImport
|
||||
- ActualImport
|
||||
- YnabImport
|
||||
- CategoryImport
|
||||
- RuleImport
|
||||
- MerchantImport
|
||||
- PdfImport
|
||||
- QifImport
|
||||
- SureImport
|
||||
status:
|
||||
type: string
|
||||
@@ -5070,8 +5082,12 @@ paths:
|
||||
- AccountImport
|
||||
- MintImport
|
||||
- ActualImport
|
||||
- YnabImport
|
||||
- CategoryImport
|
||||
- RuleImport
|
||||
- MerchantImport
|
||||
- PdfImport
|
||||
- QifImport
|
||||
- SureImport
|
||||
responses:
|
||||
'200':
|
||||
@@ -5129,8 +5145,12 @@ paths:
|
||||
- AccountImport
|
||||
- MintImport
|
||||
- ActualImport
|
||||
- YnabImport
|
||||
- CategoryImport
|
||||
- RuleImport
|
||||
- MerchantImport
|
||||
- PdfImport
|
||||
- QifImport
|
||||
- SureImport
|
||||
description: Import type (defaults to TransactionImport)
|
||||
account_id:
|
||||
@@ -5236,8 +5256,12 @@ paths:
|
||||
- AccountImport
|
||||
- MintImport
|
||||
- ActualImport
|
||||
- YnabImport
|
||||
- CategoryImport
|
||||
- RuleImport
|
||||
- MerchantImport
|
||||
- PdfImport
|
||||
- QifImport
|
||||
- SureImport
|
||||
description: Import type (defaults to TransactionImport)
|
||||
account_id:
|
||||
@@ -5474,8 +5498,12 @@ paths:
|
||||
- AccountImport
|
||||
- MintImport
|
||||
- ActualImport
|
||||
- YnabImport
|
||||
- CategoryImport
|
||||
- RuleImport
|
||||
- MerchantImport
|
||||
- PdfImport
|
||||
- QifImport
|
||||
- SureImport
|
||||
description: Import type to validate (defaults to TransactionImport)
|
||||
account_id:
|
||||
@@ -5585,8 +5613,12 @@ paths:
|
||||
- AccountImport
|
||||
- MintImport
|
||||
- ActualImport
|
||||
- YnabImport
|
||||
- CategoryImport
|
||||
- RuleImport
|
||||
- MerchantImport
|
||||
- PdfImport
|
||||
- QifImport
|
||||
- SureImport
|
||||
description: Import type to validate (defaults to TransactionImport)
|
||||
account_id:
|
||||
|
||||
Reference in New Issue
Block a user