diff --git a/faq.mdx b/faq.mdx index 42140b4..6d43316 100644 --- a/faq.mdx +++ b/faq.mdx @@ -4,17 +4,13 @@ description: "Frequently Asked Questions and Common Misconceptions" --- - -**AI-Generated Content** – This page was generated with AI assistance and may contain inaccuracies. While likely close to accurate, please verify critical details with the [stable documentation](https://docs.request.network) or [contact support](https://github.com/orgs/RequestNetwork/discussions). - - If your question is not answered below, please consider posting it to the [Request Network Discussions](https://github.com/orgs/RequestNetwork/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 onchain payments, and reconciling those payments with the requests. It stores payment requests in [IPFS](https://www.ipfs.com/) and CID hashes on [Gnosis Chain](https://www.gnosis.io/). It uses [The Graph](https://thegraph.com/) for onchain event indexing. It processes payments across a variety of [supported payment chains](https://docs.request.network/get-started/supported-chains). + No. Request Network is not a blockchain, smart contract platform, or scaling solution. Rather, it's a protocol for storing payment requests, facilitating onchain payments, and reconciling those payments with the requests. It stores payment requests in [IPFS](https://www.ipfs.com/) and CID hashes on [Gnosis Chain](https://www.gnosis.io/). It uses [The Graph](https://thegraph.com/) for onchain event indexing. It processes payments across a variety of [supported payment chains](/resources/supported-chains-and-currencies). @@ -22,19 +18,19 @@ If your question is not answered below, please consider posting it to the [Reque - 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](https://docs.request.network/get-started/supported-chains#payments). + 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](/resources/supported-chains-and-currencies). - To help builders get started quickly, the Request Network Foundation operates [Request Node Gateways](https://docs.request.network/get-started/request-node-gateways) that are free for anyone to use. These gateways offer endpoints for creating and retrieving requests. + 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 [Signer Identity](https://docs.request.network/glossary#signer-identity) that signs to create a request is defined by the `signer` parameter. This is separate from the [Payment Recipient](https://docs.request.network/glossary#payment-recipient) which is defined by the `paymentNetwork.parameters.paymentAddress` parameter. They can be the same or different. + It can be, but not necessarily. The [Signer Identity](/glossary#signer-identity) that signs to create a request is defined by the `signer` parameter. This is separate from the [Payment Recipient](/glossary#payment-recipient) 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 [Parties of a Request](https://docs.request.network/glossary#parties-of-a-request) for details. + See [Parties of a Request](/glossary#parties-of-a-request) for details. @@ -42,23 +38,23 @@ If your question is not answered below, please consider posting it to the [Reque - Yes. Payments are linked to requests via a [Payment Reference](https://docs.request.network/advanced/request-network-sdk/sdk-guides/request-client/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. Payments are linked to requests via a [Payment Reference](/glossary#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](https://en.wikipedia.org/wiki/ISO_4217)) but our payment smart contracts only support payments in cryptocurrencies. We call these [Conversion Payment](https://docs.request.network/advanced/request-network-sdk/sdk-guides/payment/conversion-request)s, in which the requested fiat amount is converted to the appropriate cryptocurrency amount using onchain price feeds at the moment of payment. + Requests can be *denominated* in fiat currencies like USD, EUR, etc. ([ISO 4217 currencies](https://en.wikipedia.org/wiki/ISO_4217)) but our payment smart contracts only support payments in cryptocurrencies. We call these [Conversion Payment](/glossary#conversion-payment)s, in which the requested fiat amount is converted to the appropriate cryptocurrency amount using onchain 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. + Crypto-to-fiat payments are supported via the Request Network API. See [Crypto-to-fiat Payments](/api-features/crypto-to-fiat-payments). - Yes. See [Single Request Forwarder](https://docs.request.network/advanced/request-network-sdk/sdk-guides/payment/single-request-forwarder) + Yes. See [Single Request Forwarder](https://docs.request.network/advanced/request-network-sdk/sdk-guides/payment/single-request-forwarder). @@ -68,15 +64,6 @@ If your question is not answered below, please consider posting it to the [Reque 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. - - ⚠️ **Security Warning**: The code example below uses `process.env.PRIVATE_KEY` for demonstration purposes only. **Never expose private keys in client-side code or commit them to version control.** - - **For production applications, use one of these secure alternatives:** - 1. **Web3 wallet signature providers** (MetaMask, WalletConnect) - Let users sign with their own wallets - 2. **Server-side signing** - Keep private keys on your backend and expose a signing API - 3. **Hardware wallet integration** - Use Ledger or Trezor for key management - - ```javascript const requestNetwork = new RequestNetworkBase({ dataAccess: new HttpMetaMaskDataAccess({ @@ -92,7 +79,7 @@ If your question is not answered below, please consider posting it to the [Reque - Yes. It is possible to request access to a user's Request Finance invoices using the [`add-stakeholder` web component](https://docs.request.network/learn-request-network/components/add-stakeholder) which is just a thin wrapper around the [Request Finance Add Stakeholders API](https://docs.request.finance/faq#i-am-integrating-the-request-network.-can-i-get-access-to-users-data-on-request-finance). They display a dialog that prompts the end-user to grant access to 1 invoice at a time. + 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](https://docs.request.finance/faq#i-am-integrating-the-request-network.-can-i-get-access-to-users-data-on-request-finance). They display a dialog that prompts the end-user to grant access to 1 invoice at a time. Details: @@ -103,18 +90,18 @@ If your question is not answered below, please consider posting it to the [Reque Yes, via the **Request Network API only**. Crosschain payments are not supported by the Request Network SDK or protocol directly. When using the API, payers can fund requests using assets on different chains and tokens, and the payee receives the requested asset on the request's chain. For example, you can pay a USDC-on-Base request using USDT from Optimism. - See Learn how to implement crosschain payment flows for implementation details. + See [Crosschain Payments](/api-features/crosschain-payments) for implementation details. Yes. See: - [Private Requests using Encryption](https://docs.request.network/advanced/protocol-overview/private-requests-using-encryption) - - [Encrypt with a wallet signature using Lit Protocol](https://docs.request.network/advanced/request-network-sdk/sdk-guides/encryption-and-decryption/handle-encryption-with-a-web3-wallet) + - [Handle Encryption with a Web3 Wallet](https://docs.request.network/advanced/request-network-sdk/sdk-guides/encryption-and-decryption/handle-encryption-with-a-web3-wallet) - Yes. See [Hinkal Private Payments](https://docs.request.network/advanced/request-network-sdk/sdk-guides/payment/hinkal-private-payments) + Yes. See [Hinkal Private Payments](https://docs.request.network/advanced/request-network-sdk/sdk-guides/payment/hinkal-private-payments). @@ -124,6 +111,6 @@ If your question is not answered below, please consider posting it to the [Reque - Yes. See [Single Request Forwarder](https://docs.request.network/advanced/request-network-sdk/sdk-guides/payment/single-request-forwarder) + Yes. See [Single Request Forwarder](https://docs.request.network/advanced/request-network-sdk/sdk-guides/payment/single-request-forwarder). - \ No newline at end of file + diff --git a/glossary.mdx b/glossary.mdx index e93e5b3..0f72eb7 100644 --- a/glossary.mdx +++ b/glossary.mdx @@ -2,11 +2,7 @@ title: "Glossary" --- - -**AI-Generated Content** – This page was generated with AI assistance and may contain inaccuracies. While likely close to accurate, please verify critical details with the [stable documentation](https://docs.request.network) or [contact support](https://github.com/orgs/RequestNetwork/discussions). - - -## Parties of a Request +## Parties of a Request ### Payee Identity @@ -104,19 +100,19 @@ A payment network is generally related to one currency, but it's not always the ### Payment Reference -In the Reference-based Payment Networks, Payments are linked to Requests via a `paymentReference` which is derived from the `requestId` and payment recipient address. For details see [Payment Reference](https://docs.request.network/advanced/request-network-sdk/sdk-guides/request-client/payment-reference) +In the Reference-based Payment Networks, Payments are linked to Requests via a `paymentReference` which is derived from the `requestId` and payment recipient address. For details see [SDK (Legacy)](/sdk-legacy/overview). ### Conversion Payment -A "conversion" request is denominated in one currency but paid in another currency. This is facilitated by on-chain price feeds provided by oracles. The typical use case is to denominate a request in fiat like USD and pay the request in stablecoins like USDC or DAI. For details see [Conversion Payment](https://docs.request.network/advanced/request-network-sdk/sdk-guides/payment/conversion-request) +A "conversion" request is denominated in one currency but paid in another currency. This is facilitated by on-chain price feeds provided by oracles. The typical use case is to denominate a request in fiat like USD and pay the request in stablecoins like USDC or DAI. For details see [Conversion Payments](/api-features/conversion-payments). ### Swap-to-pay Payment -A "swap-to-pay" payment is where the payment sender sends one currency but the payment recipient receives a different currency. For details see [Swap-to-Pay Payment](https://docs.request.network/advanced/request-network-sdk/sdk-guides/payment/swap-to-pay-request) +A "swap-to-pay" payment is where the payment sender sends one currency but the payment recipient receives a different currency. For details see [SDK (Legacy)](/sdk-legacy/overview). ### Swap-to-Conversion Payment -A "swap-to-conversion" payment is where the request is denominated in currency A, the payer sends currency B and the payee receives currency C. For details see [Swap-to-Conversion Payment](https://docs.request.network/advanced/request-network-sdk/sdk-guides/payment/swap-to-conversion-request) +A "swap-to-conversion" payment is where the request is denominated in currency A, the payer sends currency B and the payee receives currency C. For details see [SDK (Legacy)](/sdk-legacy/overview). ## Ecosystem @@ -154,4 +150,4 @@ Multi-signature (multisig) wallets allow multiple parties to require more than o ### Private Key -A private key is a large number that allows you to sign or decrypt messages. Private keys can be thought of as a password; private keys must never be revealed to anyone but you, as they allow you to spend the funds from your wallet through a cryptographic signature. \ No newline at end of file +A private key is a large number that allows you to sign or decrypt messages. Private keys can be thought of as a password; private keys must never be revealed to anyone but you, as they allow you to spend the funds from your wallet through a cryptographic signature.