Skip to main content

IPaymentProcessor

Title: IPaymentProcessor

Interface for PaymentProcessor contract

Used by RAIModuleFactory and module contracts to interact with PaymentProcessor

Functions

registerModule

Register a module with PaymentProcessor (called by factory during deployment)

function registerModule(address module) external;

Parameters

NameTypeDescription
moduleaddressAddress of the module to register

registerWithPermit

Register a subscription/execution with Permit2 signature

function registerWithPermit(
address subscriber,
address module,
uint256 planId,
uint256 remainingExecutions,
uint256 allowanceExpiry,
bytes calldata permitData,
bytes calldata signature
)
external
returns (uint256 subId);

Parameters

NameTypeDescription
subscriberaddressSubscriber address
moduleaddressModule address
planIduint256Plan ID
remainingExecutionsuint256Remaining executions/batches
allowanceExpiryuint256Allowance expiry timestamp
permitDatabytesPermit2 permit data
signaturebytesPermit2 signature

Returns

NameTypeDescription
subIduint256Subscription/execution ID