Overview
- Type: Singleton (one per network)
- Purpose: Collect tokens from the receiver to refund the payer after escrow release
- Address:
0xE5500a38BE45a6C598420fbd7867ac85EC451A07(all chains)
Features
- Post-escrow refunds - Pulls funds from the receiver’s wallet after funds have already been released
- Receiver approval required - The receiver must have approved the collector contract or provided a signature
- Operator integration - Called by
operator.refundPostEscrow()via the token collector interface
How It Works
After funds have been released to the receiver (state:Released), refunds require pulling tokens back from the receiver’s wallet. The ReceiverRefundCollector handles this by:
- Operator calls
refundPostEscrow(paymentInfo, amount, receiverRefundCollector, collectorData) - The collector transfers tokens from the receiver to the escrow contract
- The escrow contract returns tokens to the payer
The receiver must have pre-approved the
ReceiverRefundCollector for token transfers, or the collectorData must contain a valid receiver signature authorizing the refund.