FAQ
Frequently Asked Questions and Common Misconceptions
Last updated
Was this helpful?
Frequently Asked Questions and Common Misconceptions
Last updated
Was this helpful?
If your question is not answered below, please consider posting it to the Request Network Discussions page on Github.
No. Request Network is not a blockchain, smart contract platform, or scaling solution. Rather, it's a protocol for storing payment requests, facilitating on-chain payments, and reconciling those payments with the requests. It stores payment requests in IPFS and CID hashes on Gnosis Chain. It uses The Graph for on-chain event indexing. It processes payments across a variety of supported payment chains.
Request Network is an open-source protocol. Request Finance is a product built on top of Request Network. Request Finance has spun off from Request Network, and they are now two separate teams.
No. Requests are created on Gnosis Chain (or Sepolia for testing), even if the payment will happen on a different chain. Payment(s) can occur on any of our supported payment chains.
To help builders get started quickly, the Request Network Foundation operates Request Node Gateways that are free for anyone to use. These gateways offer endpoints for creating and retrieving requests.
Requests created on Gnosis Chain are "real" and will exist forever. Requests created on Sepolia are "test" requests and will exist only as long as Sepolia continues to operate.
It can be, but not necessarily. The that signs to create a request is defined by the signer
parameter. This is separate from the which is defined by the paymentNetwork.parameters.paymentAddress
parameter. They can be the same or different.
This design allows for a single payee identity to have potentially multiple payment recipient addresses.
See for details.
No. Request Network is a hybrid on/off-chain protocol storing the majority of request contents in IPFS. Only the content-addressable ID (CID) is stored on-chain, on Gnosis Chain.
Yes. Payments are linked to requests via a Payment Reference derived from the request contents. Therefore, it is possible to calculate the paymentReference
and execute a payment before creating the corresponding request.
Yes and No.
Requests can be denominated in fiat currencies like USD, EUR, etc. (ISO 4217 currencies) but our payment smart contracts only support payments in cryptocurrencies. We call these Conversion Payments, in which the requested fiat amount is converted to the appropriate cryptocurrency amount using on-chain price feeds at the moment of payment.
It is possible to implement fiat payments using Declarative Requests, where the payer declares that the payment was sent and the payee declares that the payment was received.
Not currently, but we're working on it.
Yes. See Single Request Forwarder
No. A Request Node cannot change a request's contents before persisting it to IPFS and on-chain because doing so would invalidate the signature. This is true for private, encrypted requests as well. The Request Node cannot forge the end-user's signature.
No. Today, a Request Node is required to interact with the Request Network IPFS Network. That said, it is possible to make the end-user pay the protocol fee when creating a request instead of the Request Node. To do this, inject an HttpMetaMaskDataAccess
into the frontend RequestNetwork
instance.
const requestNetwork = new RequestNetworkBase({
dataAccess: new HttpMetaMaskDataAccess({
ethereumProviderUrl: 'https://eth-mainnet.g.alchemy.com/v2/demo',
}),
...
}
Yes. It is possible to request access to a user's Request Finance invoices using the add-stakeholder
web component which is just a thin wrapper around the Request Finance Add Stakeholders API. They display a dialog that prompts the end-user to grant access to 1 invoice at a time.
Details:
Request Finance invoices are encrypted.
Request Network Foundation cannot grant access to encrypted requests in Request Finance.
No. Request Network does not currently support cross-chain payments. All of the supported payment types involve the payer sending funds and the payee receiving funds on the same chain.
Yes. See Hinkal Private Payments
No. It is not currently possible to create a request via a smart contract call. However, RequestNetwork/public-issues#15 is in our roadmap to make this possible.
The recommended way to create a request is using the Request Network API.
Yes. See Single Request Forwarder