Overview
When an invoice requires N-of-M co-signer approvals before release, the UI must let the creator invite co-signers, track who has approved, and let co-signers approve from a dedicated page.
Requirements
- Extend
/invoice/new form with optional "Require co-signer approvals" section: add co-signer addresses, set threshold
/invoice/[id]/cosigners page: shows list of required co-signers with approval status (pending / approved / threshold met)
- Co-signer can approve from this page using their connected Freighter wallet
- Real-time status updates via
useInvoiceStream
- Email/address invitation copy button for sharing the co-signer link
- Mobile-responsive layout
- Write unit tests for the co-signer status component
Acceptance Criteria
Definition of Done
All CI checks must pass before the PR is reviewed.
Overview
When an invoice requires N-of-M co-signer approvals before release, the UI must let the creator invite co-signers, track who has approved, and let co-signers approve from a dedicated page.
Requirements
/invoice/newform with optional "Require co-signer approvals" section: add co-signer addresses, set threshold/invoice/[id]/cosignerspage: shows list of required co-signers with approval status (pending / approved / threshold met)useInvoiceStreamAcceptance Criteria
npm run lintpasses with zero errorsnpm run buildsucceedsDefinition of Done
All CI checks must pass before the PR is reviewed.