Appearance
Configuring funding methods
To enable various funding flows for your users, visit the Privy Dashboard and select your app from the App Dropdown in the sidebar. Then, navigate to the Funding page for your selected app.
Enable funding methods
To enable funding in your app, select which funding methods you would like to allow from Pay with card, Transfer from exchange, and/or Transfer from external wallet as funding methods by selecting the corresponding option in the Dashboard.
Privy will present the options you enable here for your users to select from during a funding flow.
Set a default chain and amount
Once you have selected your funding methods, you can select the chain your users will use. When EVM is selected you'll need to select a default network. Both for EVM or Solana you'll need an amount that users should fund their wallets with. Users can update the amount manually if they choose, before selecting a funding method.
During funding flows, Privy will prompt users to fund their wallets with the native currency of your default chain (e.g. ETH on Ethereum Mainnet, POL on Polygon, SOL on Solana) with the funding amount you specify here.
You can enable cross-chain bridging to allow funding EVM wallets with Solana wallets and viceversa. Cross-chain bridging is not available on testnets like Sepolia or Solana's devnet.
TIP
You can also prompt users to fund their wallets with USDC or other ERC20 tokens by setting a funding asset in code.
You can always change these values in the Dashboard later or even override them in your app's code.
Additional configurations
Certain funding methods may have additional configurations that you can set.
MoonPay
To better guide your user, you can set additional configurations on the config.fundingMethodConfig.moonpay
property of the PrivyProvider
component.
Within config.fundingMethodConfig.moonpay
, you may set the following fields (all optional):
Field | Description | Type |
---|---|---|
paymentMethod | Indicates the payment method you'd like your user to use when completing their purchase. Supported paymentMethod s are listed on the right. | 'ach_bank_transfer' , 'credit_debit_card' , 'gbp_bank_transfer' , 'gbp_open_banking_payment' , 'mobile_wallet' , 'sepa_bank_transfer' , 'sepa_open_banking_payment' , 'pix_instant_payment' , 'yellow_card_bank_transfer' |
uiConfig.accentColor | Hex string indicating an accent color for MoonPay's fiat on-ramp UIs | string |
uiConfig.theme | Theme to use for MoonPay's fiat on-ramp UIs | 'light' , 'dark' |
useSandbox | Determines if transactions will use the Moonpay testing environment. See this guide for instructions on how to test purchases in sandbox. | true , false |
As an example, you might construct config.fundingMethodConfig.moonpay
like below:
tsx
<PrivyProvider
appId="insert-your-privy-app-id"
config={{
...restOfYourConfig,
fundingMethodConfig: {
moonpay: {
paymentMethod: 'credit_debit_card', // Purchase with credit or debit card
uiConfig: {accentColor: '#696FFD', theme: 'light'}, // Styling preferences for MoonPay's UIs
},
},
}}
>
{children}
</PrivyProvider>