Single Request Proxy
Last updated
Last updated
The Single Request Proxy is currently still in Beta and only deployed on Sepolia
The Single Request Proxy is a smart contract solution that enables integration with Request Network's payment system without modifying existing smart contracts.
Universal Compatibility: Works with any system that can make standard crypto transfers.
No Code Changes: Integrate with Request Network without modifying existing smart contracts.
Exchange Friendly: Enable payments from centralized exchanges.
Request: Create a request in the Request Network protocol
Deploy: Deploy a unique Single Request Proxy for your request
Pay: The Payer sends funds to the Single Request Proxy
Complete: The Single Request Proxy forwards the payment to the Payee and emits an event to enable payment detection.
To deploy a Single Request Proxy, call deploySingleRequestProxy()
which takes in the following arguments:
requestData
: the data of the created request
signer
: An Ethers v5 Signer to sign the deployment transaction
The deploySingleRequestProxy()
function automatically deploys the correct type of Single Request Proxy based on the Request data passed into the function; either an EthereumSingleRequestProxy
or ERC20SingleRequestProxy
It returns
Single Request Proxy Address
To pay a request through a Single Request Proxy using the Request Network SDK, call payRequestWithSingleRequestProxy()
which takes in the following arguments:
singleRequestProxyAddress
: the address of the SRP deployed in the previous step.
signer
: A wallet signer who is making the transfer of funds.
amount
: Amount of funds that need to be transferred.
Once we have the Single Request Proxy address, we can pay by directly transferring the money to the address itself. The Single Request Proxy will automatically process the payment. For ERC20 payments, the process of paying with a Single Request Proxy happens in two steps:
Transferring the tokens to the Single Request Proxy
Make a zero-value transaction to the Single Request Proxy (i.e. Send 0 ETH to the contract)
Single Use: Each Single Request Proxy deployment processes payments for a specific request.
Immutable Parameters: Payment details cannot be modified after deployment.
Fund Recovery: Built-in mechanisms to send stuck funds to the payment receiver.
For a complete guide on request creation, see