Skip to content

[Feature]: Stellar transaction reconciler and explorer #145

Description

@memplethee-lab

Feature Request

Problem Statement

There is no robust mechanism to reconcile on-chain Stellar transactions with internal invoices and ledger entries. This causes manual reconciliation work, delays in payout confirmation, and potential accounting mismatches.

Proposed Solution

Build a Stellar Transaction Reconciler and Explorer feature that:

  • Streams confirmed Stellar transactions (via Horizon or webhooks) and correlates them with internal invoices using payment references and memos.
  • Implements reconciliation rules, marking invoices as paid, partial, or failed with a detailed audit trail.
  • Offers API endpoints for manual lookup: /reconcile/stellar/tx/:txid and /reconcile/stellar/invoice/:invoiceId and an admin dashboard endpoint to list unmatched transactions.
  • Supports automated retries for transient failures and manual reconciliation tools for accounting teams.

Acceptance criteria:

  • Streaming ingestion of Stellar ledger events implemented and tested on testnet.
  • Reconciliation logic correctly marks invoices as paid when matching transactions are found (with tests for full, partial, and unmatched cases).
  • Endpoints for lookup implemented and documented.
  • Audit logs kept for each reconciliation decision and accessible via API.

Alternatives Considered

  • Manual accounting reconciliation (rejected: slow and error-prone).
  • Third-party reconciliation services (rejected: cost and privacy).

Additional Context

This will appeal to Stellar team members and finance stakeholders; tightly coupling reconciler with the payment module will enable near-real-time accounting.

Implementation Ideas (Optional)

  • Use memo fields and idempotency keys to match transactions to invoices. Persist matches in a Reconciliation table and expose a small admin REST UI.

Would you be willing to contribute?

  • Yes, I'd like to submit a PR for this feature
  • I can help with testing
  • I can help with documentation
  • I'd rather let someone else work on this

Activity

  1. removed their assignment
    on Aug 21, 2026
  2. Peculiarr7 commented on Aug 21, 2026

    @Peculiarr7

    Hi! I’m a full-stack developer with a strong blockchain background, and I’m confident I can resolve this issue quickly and effectively. I’ll deliver a clean, reliable solution with immediate attention to detail, ensuring it’s completed as soon as possible. Please assign it to me—I’m ready to get started right away.

  3. bobo-24 commented on Aug 21, 2026

    @bobo-24

    Hi! I came across this issue and would love to work on it. I have experience with similar tasks and I'm confident I can investigate, implement a clean solution, and thoroughly test it before submitting a PR. If the issue is still open, I would appreciate it if you could assign it to me. I’ll prioritize this immediately and ensure a reliable solution is delivered as soon as possible. Thank you!

  4. ayaanoncrypto commented on Aug 21, 2026

    @ayaanoncrypto
    Contributor

    I have reviewed issue #145 and the reconciliation requirements. I will trace the existing invoice and payment models, implement idempotent Stellar Horizon or webhook ingestion, correlate transactions through memo and payment-reference matching, record paid, partial, failed, and unmatched outcomes with an audit trail, add lookup endpoints, and cover full, partial, unmatched, retry, and duplicate-event cases with tests. I can start immediately and deliver a working PR within one hour.

  5. Bilalishaq7 commented on Aug 21, 2026

    @Bilalishaq7

    Hi @maintainers! 👋

    I would like to apply to work on this issue under the GrantFox OSS Campaign.
    Proposed Technical Approach:

    Diagnosis & Strategy: I will locate the core source files responsible for this component and design a modular, production-ready solution adhering to GrantFox quality standards.
    Implementation: Clean, well-typed code written to integrate seamlessly with the existing repository architecture without unnecessary dependencies or dummy fallbacks.
    Testing & Quality Assurance: I will add robust unit/integration test coverage (targeting ≥90% coverage) to verify edge cases, clean compilation (cargo test / vitest), and static analysis (clippy / eslint).
    

    Developer Profile:

    Active Campaign Issue: None (I am currently unassigned and ready to start immediately).
    Stack Expertise: Web3 Software Developer (React, Next.js, TypeScript, Soroban / Stellar Rust Smart Contracts, Avalanche EVM).
    

    Please assign this issue to me so I can begin implementation. Thanks!

  6. devIKargi commented on Aug 21, 2026

    @devIKargi
    Contributor

    Hi Maintainer,

    I’m a full-stack developer, and I’d like to contribute to the task. I’ll implement it carefully and efficiently thoroughly understand requirements and edge cases
    Communicate promptly about suggestions or improvements. And I will provide regular progress updates and address blockers
    Align with project goals through feedback and clarification.

    Thank you,

  7. grantfox-oss commented on Aug 21, 2026

    @grantfox-oss

    🦊 GrantFox — @ayaanoncrypto has been assigned to this issue as part of the Third Campaign campaign!

    Next steps:

    1. Open a Pull Request referencing this issue (e.g., Closes #145)
    2. Your PR will be reviewed by the SourceXXL maintainers

    Good luck! Track your progress on GrantFox.

  8. grantfox-oss commented on Aug 21, 2026

    @grantfox-oss

    🎉 This issue has been marked as completed on GrantFox as part of the Third Campaign campaign!

    @ayaanoncrypto's PR #146 was approved and merged by @memplethee-lab.

    🏆 @ayaanoncrypto: You earned 35 FoxPoints for this contribution! Your current tier: Explorer (328 total points). Track your full progress on GrantFox.

    👏 Great work, @ayaanoncrypto! Keep contributing to SourceXXL.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

GrantFox OSSIssue tracked in GrantFox OSSMaybe RewardedIssue may be eligible for a GrantFox rewardThird CampaignCampaign: Third CampaignenhancementNew feature or request

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions