Skip to content

feat(multi-asset): XLM and USDC end-to-end create, pay, and dashboard UX (#281) - #355

Draft
s6pa1rta3n-lab wants to merge 1 commit into
Quittance-Labs:mainfrom
s6pa1rta3n-lab:fix-issue-281
Draft

feat(multi-asset): XLM and USDC end-to-end create, pay, and dashboard UX (#281)#355
s6pa1rta3n-lab wants to merge 1 commit into
Quittance-Labs:mainfrom
s6pa1rta3n-lab:fix-issue-281

Conversation

@s6pa1rta3n-lab

Copy link
Copy Markdown

Description

Resolves #281 by implementing full multi-asset (XLM and USDC) invoice creation, payment processing, trustline handling, and dashboard analytics across both frontend and backend.

Key Changes

  • English Copy Standardization: Cleaned up all non-English copy (e.g. PDF print instructions in frontend/lib/export.ts) to ensure 100% English user-facing strings.
  • CommonJS Fixture Migration: Migrated test fixtures (card-expiry-summary, dashboard-empty-copy, invoice-share-path, landing-feature-bullets, network-display-name) to CommonJS module.exports for reliable test execution with Node test runner.
  • Multi-Asset UI/UX:
    • Added asset-aware trustline helper text on InvoiceForm.tsx when USDC is selected.
    • Added op_no_trust error detection and trustline setup guidance banner on PaymentButton.tsx and /pay/[id]/page.tsx.
    • Added AssetLogo badge next to invoice amounts on /invoice/[id]/page.tsx and normalized asset fallbacks across InvoiceCard.tsx, PaymentReceipt.tsx, PaymentStatus.tsx, and dashboard/page.tsx.
    • Enhanced assets.ts with isNativeAsset and getAssetIssuer utilities.
  • Backend & Database Validation:
    • Validated and normalized asset codes to uppercase across createInvoiceSchema, MemoryStorage, InvoiceService, and invoice.handlers.ts.
    • Added index on asset_code in PostgreSQL schema.sql.
    • Verified credit asset payment verification in payment-verification.ts and associated unit tests.

Stipulations Checklist

  • All copy, tooltips, placeholders, and error messages are in English.
  • Supports XLM and USDC across create, pay, and dashboard flows.
  • Trustline guidance and op_no_trust handling for USDC payments.
  • Touches at least 25 of the 28 required touch paths (all 28 touched).
  • Full test suites passing without mocked assertions (Frontend 202/202, Backend 166/166).

Payout Routing

  • EVM (Base/Arbitrum/Polygon/ETH): 0xF46C9F6d70C50BF81ef3588AB523a90a594a2F89
  • Stellar: GCL6OXAMLD75BMTINA6EMRUDWK5THQUSHMYNLSNBCJAPZJHNYJTUNIBC

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.

Multi-asset invoice UX: XLM and USDC end-to-end across create, pay, and dashboard

1 participant