Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions apps/portal/src/app/Header.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,10 @@ const links = [
href: "/tokens",
name: "Tokens",
},
{
href: "/insight",
name: "Insight",
},
];

const toolLinks = [
Expand Down
40 changes: 40 additions & 0 deletions apps/portal/src/app/contracts/faqs/page.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
import { Details, createMetadata } from "@doc";

export const metadata = createMetadata({
title: "Contracts FAQs | thirdweb Documentation",
description:
"Frequently asked questions about thirdweb's contracts, including deployment, compatibility, and security.",
image: {
title: "Contracts FAQs",
icon: "contracts",
},
});

# Contracts FAQs

<Details summary="Can I use thirdweb tools with my existing contract?">
Yes, thirdweb’s contract dashboard, deployment tools, and SDKs / APIs are compatible with non-thirdweb contracts.

You can use thirdweb's deploy tool to deploy any contract that has not been deployed to any compatible EVM chain.

For any already deployed contracts, you can use the thirdweb dashboard to import them and manage

</Details>

<Details summary="Are thirdweb contracts audited?">
Yes, thirdweb pre-built contracts are audited by third-party security firms. You can see the attached
audit reports for each contract linked on the contract page on Explore.
</Details>

<Details summary="Why can I no longer deploy a pack contract?">
Pack contracts were officially deprecated after the Pectra release from Ethereum. The pack contract implementation is incompatible with the Pectra update, which introduced breaking changes to the Ethereum protocol. As a result, support for pack contracts has been removed from thirdweb's deployment tools to ensure compatibility and security.

If you need similar functionality, consider using:
- **Edition Drop contracts** for distributing multiple quantities of NFTs
- **Marketplace contracts** for trading and bundle functionality
- **Custom smart contracts** built with our modular contract framework

For existing pack contracts, they will continue to function on-chain, but new deployments are no longer supported.
</Details>


42 changes: 42 additions & 0 deletions apps/portal/src/app/contracts/modular-contracts/page.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
import { OpenSourceCard, Details, createMetadata } from "@doc";

export const metadata = createMetadata({
title: "Modular Contracts | thirdweb Documentation",
description:
"Build custom smart contracts with thirdweb Modular Contracts. Add features like royalties, permissions, and drops using prebuilt, audited modules.",
image: {
title: "Modular Contracts",
icon: "contracts",
},
});

# Modular Contracts

Modular contracts is an open source framework that enables the creation of highly customizable and upgradeable smart contracts. Modular contracts is designed to encompass a broad number of use cases without compromising on the ease and security of creating smart contracts with thirdweb.

Modular contracts are composed of two components:

- Core Contract: smart contracts that serve as the foundation of the modular contract
- Module Contract: smart contracts that are installed on top of the core contract

You can think of Modular Contracts like building bricks. Pick a core, install modules, and swap them out to enable different functionality.

<OpenSourceCard title="Modular Contracts" href="https://github.com/thirdweb-dev/modular-contracts" />

### Modular Contracts FAQ

<Details summary="Is Modular Contracts actively maintained by thirdweb?">
Modular Contracts is no longer actively maintained with dedicated engineering resources from thirdweb. However, we are happy to answer questions about the framework and provide support to existing modular contract users.
</Details>

<Details summary="What are modular contracts good for?">
Modular contracts pattern is useful in the context of sharing core or modular contracts with other teams / developers while giving them control over the contract.
It is useful for creating a contract where you need to upgrade the core contract by adding new functionality through modules.
</Details>

### Additional Resources

- [Modular Contracts Repository](https://github.com/thirdweb-dev/modular-contracts).
- [Modular Contracts Design Documentation](https://github.com/thirdweb-dev/modular-contracts/blob/dev/design-document.md)
- [Modular Contracts 101 | Build Upgradeable Smart Contracts Like Lego Blocks](https://www.youtube.com/watch?v=4YE0WljSpiQ&t=9s)
- [Modular Contracts SDK: Build Core & Modules from Scratch (Advanced Guide)](https://www.youtube.com/watch?v=ZoOk41y4f_k&t=29s)
63 changes: 39 additions & 24 deletions apps/portal/src/app/contracts/sidebar.tsx
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { ExternalLinkIcon, ZapIcon } from "lucide-react";
import { CodeIcon, ZapIcon } from "lucide-react";
import type { SideBar } from "@/components/Layouts/DocLayout";
import {
DotNetIcon,
Expand All @@ -18,11 +18,6 @@ export const sidebar: SideBar = {
name: "Get Started",
icon: <ZapIcon />,
},
{
href: "https://playground.thirdweb.com/",
icon: <ExternalLinkIcon />,
name: "Playground",
},
{ separator: true },
{
isCollapsible: false,
Expand All @@ -47,21 +42,6 @@ export const sidebar: SideBar = {
href: `${slug}/deploy`,
name: "Deploy Contracts",
},
/**
* TODO
{
href: `${slug}/encode`,
name: "Encode Data",
},
{
href: `${slug}/decode`,
name: "Decode Data",
},
{
href: `${slug}/fetch-abis`,
name: "Fetch ABIs",
},
*/
],
name: "Guides",
},
Expand All @@ -70,17 +50,22 @@ export const sidebar: SideBar = {
isCollapsible: false,
links: [
{
href: "/references/typescript/v5/functions#transactions",
href: "https://api.thirdweb.com/reference#tag/contracts",
icon: <CodeIcon />,
name: "HTTP API",
},
{
href: "/references/typescript/v5/functions#contract",
icon: <TypeScriptIcon />,
name: "TypeScript",
},
{
href: "/references/typescript/v5/hooks#transactions",
href: "/references/typescript/v5/functions#contract",
icon: <ReactIcon />,
name: "React",
},
{
href: "/references/typescript/v5/hooks#transactions",
href: "/references/typescript/v5/functions#contract",
icon: <ReactIcon />,
name: "React Native",
},
Expand All @@ -102,5 +87,35 @@ export const sidebar: SideBar = {
],
name: "API References",
},
{ separator: true },
{
isCollapsible: false,
links: [
{
href: `${slug}/security`,
name: "Security",
},
{
href: `${slug}/troubleshoot`,
name: "Troubleshoot",
},
{
href: `${slug}/faqs`,
name: "FAQ",
},
],
name: "Resources",
},
{ separator: true },
{
isCollapsible: true,
links: [
{
href: `${slug}/modular-contracts`,
name: "Modular Contracts",
},
],
name: "Archive",
},
],
};
18 changes: 18 additions & 0 deletions apps/portal/src/app/contracts/troubleshoot/page.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
import { Details } from "@doc";

export const metadata = {
title: "Troubleshooting Guides",
description: "Guides to help you troubleshoot common issues with thirdweb contracts.",
};


# Contracts Troubleshooting Guides

<Details summary="Can I use thirdweb tools with my existing contract?">
Yes, thirdweb contract dashboard, deployment tools, and SDKs / APIs are compatible with non-thirdweb contracts.

You can use thirdweb's deploy tool to deploy any contract that has not been deployed to any compatible EVM chain.

For any already deployed contracts, you can use the thirdweb dashboard to import them and manage their functionality.

</Details>
83 changes: 46 additions & 37 deletions apps/portal/src/app/payments/faq/page.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,28 @@ import { createMetadata, Details } from "@doc";

export const metadata = createMetadata({
image: {
title: "thirdweb Payments - FAQs",
icon: "thirdweb",
title: "Payments FAQs",
icon: "payments",
},
title: "thirdweb Payments - FAQs - thirdweb",
description: "thirdweb Payments - Frequently Asked Questions",
title: "Payments FAQs | thirdweb documentation",
description: "Explore FAQs around accepting crypto payments with thirdweb—covering payment links, checkout, webhooks, fiat onramps, and token compatibility.",
});

# FAQs
# Payments FAQs

### General

<Details summary="What does Payments use to operate under the hood?">
Payments is an asset router that combines thirdweb's own onchain infrastructure with existing bridging and swapping protocols to find the optimal route for any given transaction.
This can include intents, native bridges, third party bridges, cross-chain messaging protocols, thirdweb's custom bridges, and more. All routes are monitored and planned continuously for
health, price, and speed to guarantee the best path every time.
</Details>

<Details summary="Am I able to use Payments with other wallet infrastructure providers?">
Yes, Payments is designed to be agnostic to wallet infrastructure. You can use it with any wallet service.
</Details>

### Fees

<Details summary="What are the fees for Buy With Fiat?">
thirdweb does not charge any fees for buy with fiat. Any fees on onramping are based on the onramp provider.
Expand All @@ -23,12 +37,12 @@ For buying with crypto or swap fees, thirdweb charges a 0.3% protocol fee. Devel
Network fees, also referred to as miner fees, are paid to the miner for processing crypto transactions and securing the respective network. These fees do not go to thirdweb.
</Details>

<Details summary="What does Payments use to operate under the hood?">
Payments is an asset router that combines thirdweb's own onchain infrastructure with existing bridging and swapping protocols to find the optimal route for any given transaction.
This can include intents, native bridges, third party bridges, cross-chain messaging protocols, thirdweb's custom bridges, and more. All routes are monitored and planned continuously for
health, price, and speed to guarantee the best path every time.
<Details summary="Does thirdweb Payments offer fiat payouts?">
Fiat payouts are not currently available.
</Details>

### Token & Region Support

<Details summary="How can I support a token on Payments?">
Payments is able to support most token that meet the following criteria:

Expand All @@ -40,25 +54,6 @@ To request support for a token, please visit the Payments tab in your project da
Payments will automatically kick off the token route discovery process. Please check back the Payments modal after 20-40 minutes for the requested token.
</Details>

<Details summary="Am I able to use Payments with other wallet infrastructure providers?">
Yes, Payments is designed to be agnostic to wallet infrastructure. You can use it with any wallet service.
</Details>

<Details summary="Does Payments support Apple Pay or Google Pay?">
Apple Pay and Google Pay are supported through the onramp providers depending on region. Coinbase, Stripe, and Transak currently support Apple Pay. Transak supports Google Pay.
</Details>

<Details summary="What are the KYC requirements?">
Onramp options all require minimal KYC. This is done to comply with local regulations and to ensure the safety of our users.
Please note: onramping with Coinbase does not require KYC for a purchase below $500 with debit card.
</Details>

<Details summary="What are your transaction limits for Buy With Fiat?">
We currently require a $1 minimum purchase for both stablecoin and non-stablecoin purchases through Buy With Fiat.

Our transaction maximum starts from $1500 per week for new users and can increase over time to $10,000 per week.
</Details>

<Details summary="What countries does Buy With Fiat support?">
**Buy With Fiat** is available 160+ countries. The following countries are _UNSUPPORTED_:

Expand Down Expand Up @@ -87,6 +82,20 @@ Our transaction maximum starts from $1500 per week for new users and can increas
All United States are supported, excluding Hawaii.
</Details>

<Details summary="What cryptocurrencies does Payments support?">
Payments can support any currency on our [supported chains](https://thirdweb.com/chainlist?service=pay).
</Details>

<Details summary="Does Payments support Apple Pay or Google Pay?">
Apple Pay and Google Pay are supported through the onramp providers depending on region. Coinbase, Stripe, and Transak currently support Apple Pay. Transak supports Google Pay.
</Details>

<Details summary="What are your transaction limits for Buy With Fiat?">
We currently require a $1 minimum purchase for both stablecoin and non-stablecoin purchases through Buy With Fiat.

Our transaction maximum starts from $1500 per week for new users and can increase over time to $10,000 per week.
</Details>

<Details summary="Does thirdweb offer direct onramping to tokens through Buy With Fiat?">
We offer direct onramping **internationally** to the following tokens:

Expand All @@ -107,20 +116,20 @@ All other tokens will require an additional Buy With Crypto step.
\* Not available in New York or the EU.
</Details>

<Details summary="How does KYC work with Buy With Fiat">
Users will be required to complete KYC verification for their first purchase using 'Buy with Fiat.' After that, no further KYC will be needed for future purchases on the same platform.
<Details summary="How are cryptocurrency prices set in thirdweb Payments?">
Prices are set depending on the liquidity provider used to route your transaction.
</Details>

<Details summary="What cryptocurrencies does Payments support?">
Payments can support any currency on our [supported chains](https://thirdweb.com/chainlist?service=pay).
</Details>
### KYC & Compliance

<Details summary="How are cryptocurrency prices set in thirdweb Payments?">
Prices are set depending on the liquidity provider used to route your transaction.
<Details summary="What are the KYC requirements?">
Onramp options all require minimal KYC. This is done to comply with local regulations and to ensure the safety of our users.
Please note: onramping with Coinbase does not require KYC for a purchase below $500 with debit card.
</Details>

<Details summary="Does thirdweb Payments offer fiat payouts?">
Fiat payouts are not currently available.
<Details summary="How does KYC work with Buy With Fiat">
Users will be required to complete KYC verification for their first purchase using 'Buy with Fiat.' After that, no further KYC will be needed for future purchases on the same platform.
</Details>



Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
16 changes: 16 additions & 0 deletions apps/portal/src/app/tokens/deploy-erc1155/page.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
import { Step, Steps, DocImage, createMetadata } from "@doc";
import TokenDeployment from "../assets/token_deployment.png";

export const metadata = createMetadata({
image: {
title: "Deploy an ERC-1155 token",
icon: "contracts",
},
title: "Deploy an ERC-1155 token | thirdweb Documentation",
description:
"Learn how to deploy an ERC-1155 token using thirdweb's dashboard or programmatically through the SDK.",
});

# Deploy an ERC-1155 token

Ability to deploy ERC-1155 tokens is coming soon. If you are interested in this feature, please [reach out in our community Telegram](https://t.me/officialthirdweb) so we can notify you on release.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Loading