Skip to content

[Payments]: Bank Transaction Integration via GoCardless & Invoice Matching #364

Description

@xniti3x

🔧 Feature Request: Bank Transaction Integration via GoCardless & Invoice Matching

Summary:
As a user, I want to connect my bank account using the GoCardless Bank Account Data API or any other provider and view my transactions in InvoicePlane. I want to manually or automatically match those transactions to invoices using smart matching criteria.

💡 Key Features

Bank Integration via GoCardless
Use GoCardless Bank Account Data API or any provider to connect user bank accounts securely.

Fetch and store:
Transaction date
Description/reference
Amount (credit/debit)
Transaction ID
2. Csv import

📊 Transaction Views
Index View (/transactions):

Paginated, sortable, and filterable list of all fetched bank transactions.

Columns:
Date
Description
Amount
Matched Invoice (if any)
Matching Score (if applicable)
Status (Matched / Unmatched / Suggested Match)
Filter options:
Date range
Match status
Amount range
Search by description

UI Concept (Table View):
Date Description Amount Invoice # Match Score Status
2025-09-01 Payment from John $250.00 INV-1023 95% Matched
2025-08-29 ACH Debit PayPal -$15.99 — 42% Unmatched

Edit View (/transactions/edit/{id}):
View/edit transaction details.
Show suggested invoices based on a matching score:

Criteria:
Amount match
Invoice number in transaction reference
Close dates (e.g., ±5 days)

Manual override: User can select a different invoice to match or unlink an existing one.

UI Concept (Matching Panel):
Transaction: 2025-09-01 | Amount: $250.00 | Desc: Payment from John

Suggested Invoices:
✔ INV-1023 | $250.00 | Due: 2025-09-01 | Score: 95%
INV-1019 | $245.00 | Due: 2025-08-30 | Score: 72%
INV-1021 | $250.00 | Due: 2025-09-10 | Score: 68%

[Link to Selected Invoice] [Unlink] [Save]

⚙️ Automation Logic (Optional Feature)

A cron job or background task can periodically:

Fetch new transactions from GoCardless.
Attempt auto-matching using criteria (amount, date proximity, reference number).

🔗 Linking Invoices to Transactions
Once matched, the invoice detail page shows:
Linked transaction details

A “Reconciled” badge or status

Ability to unlink and reassign if necessary.

✅ Benefits

Seamless reconciliation workflow.
Reduces manual tracking of payments.
Enhances accuracy of accounting.

Metadata

Metadata

Assignees

No one assigned

    Labels

    refinedRefined with SMART plan / test suggestions

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions