Skip to main content

Overview

ReceiverCondition is a singleton condition that restricts an action to the payment’s receiver address. Type: Singleton, CREATE2 (deployed once, reused by all operators) Address (all supported chains): 0x321651df4593DA57C413579c5b611D1A90168a3A

Logic

function check(PaymentInfo calldata payment, uint256, address caller, bytes calldata)
    external pure returns (bool)
{
    return caller == payment.receiver;
}
The condition compares caller against payment.receiver, pure computation with no storage reads.

When to Use

SlotUse Case
CAPTURE_PRE_ACTION_CONDITIONLet receiver capture funds after escrow
CHARGE_PRE_ACTION_CONDITIONLet receiver charge partial amounts
VOID_PRE_ACTION_CONDITIONLet receiver issue refunds at their discretion
For capture, ReceiverCondition is often composed with EscrowPeriod via AndCondition to ensure the escrow window has passed before the receiver can capture.

Gas

Cost: Minimal, pure function with no storage reads.

Next Steps

PayerCondition

Restrict actions to the payment payer.

EscrowPeriod

Add time-based capture restrictions.