Summary
When an admin rejects an invoice, the rejection reason should be stored on the invoice record and a notification should be created for the seller. An integration test should confirm both side effects occur and that the invoice status transitions to rejected.
Scope
- Seed a
pending_review invoice owned by seller A
- Call the admin reject endpoint with a rejection reason string
- Assert the invoice status is
rejected
- Assert the
rejection_reason field on the invoice record matches the submitted reason
- Assert a notification exists for seller A's wallet with the rejection reason in the message
Acceptance Criteria
ETA: 12 hours
Coordinate on Telegram
Summary
When an admin rejects an invoice, the rejection reason should be stored on the invoice record and a notification should be created for the seller. An integration test should confirm both side effects occur and that the invoice status transitions to
rejected.Scope
pending_reviewinvoice owned by seller Arejectedrejection_reasonfield on the invoice record matches the submitted reasonAcceptance Criteria
rejectedrejection_reasonpersisted on the invoice recordETA: 12 hours
Coordinate on Telegram