Skip to content

Conversation

@github-actions
Copy link

Automatic Release PR

This PR was automatically created after changes were pushed to develop.

Commits: 1 new commit(s)

Checklist

  • Review all changes
  • Verify CI passes
  • Approve and merge when ready for production

* fix: match FiatOutput to BankTx via endToEndId fallback

LiqManagement FiatOutputs (e.g. transfers to Kraken/exchanges) have no
remittanceInfo set, causing the matching in searchOutgoingBankTx() to
fail even though the BankTx exists with matching endToEndId.

Changes:
- Add getBankTxByEndToEndId() to BankTxService
- Extend getMatchingBankTx() to try endToEndId as fallback when
  remittanceInfo is not set or doesn't match

This fixes FiatOutputs stuck in isComplete=false despite successful
Yapeal transmission and existing DBIT BankTx entries.

* refactor: add DBIT filter, logging and tests for endToEndId matching

- Filter getBankTxByEndToEndId to only return DEBIT transactions
  (prevents matching incoming CRDT transactions by accident)
- Add info log when matching via endToEndId for debugging
- Add 3 unit tests for searchOutgoingBankTx:
  - Match via remittanceInfo
  - Match via endToEndId fallback (LiqManagement case)
  - Reject if BankTx created before FiatOutput.isReadyDate

* feat: set BankTxType.INTERNAL for LiqManagement FiatOutputs

When matching LiqManagement FiatOutputs, set the BankTx type to INTERNAL
instead of leaving it as Pending. This provides clearer categorization
for financial reporting and prevents the BankTx from being picked up
by other assignment processes.

* fix: removed log

---------

Co-authored-by: David May <david.leo.may@gmail.com>
@github-actions
Copy link
Author

⚠️ Security: 0 critical, 61 high vulnerabilities

@TaprootFreak TaprootFreak merged commit 1fdf182 into main Jan 15, 2026
11 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants