Subdomain
If you are on EVM, you can allow your users to generate their own unique subdomain for receiving funds. Set it up using the Global Identity guide.Dynamic UI
Once a user has created their subdomain, they can find it in their user profile section of the Dynamic Widget and copy it to share with others, who can then send USDC to them.
Hooks Only (Headless)
Access the users subdomain by finding the VCs which have a name service, and then checking thenameService.name
property:
QR Code
Dynamic UI
In the “Deposit” section of the Dynamic Widget UI, you’ll see a “Receive by QR button”, which will reveal a QR code that anyone can scan. It will provide the wallet address for the sender to send USDC to.
Hooks Only (Headless)
Simply access the users wallet address using theprimaryWallet.address
property, and use any QR code generator to create a QR code for said address.
Wallet Address
You can also allow the user to copy and paste their wallet address directly rather than via providing a QR code.Dynamic UI
In the same “Receive by QR” section, you’ll see a partial wallet address along with a “Copy” button.Hooks Only (Headless)
Simply access the users wallet address using theprimaryWallet.address
property and provide it to the user.
Payment Links
You can build custom payment links that allow others to send you USDC with a preset amount. While Dynamic doesn’t provide a native payment link generator, you can create this functionality using the wallet’s direct transfer capabilities and URL parameters.Building Payment Links
Create a component that generates shareable URLs with preset payment parameters:Processing Payment Links
Create a payment page that handles incoming payment links and uses the wallet’s direct transfer capabilities:Advanced: Custom Payment Link with Metadata
For more sophisticated payment links, you can include additional metadata:Security Considerations
When implementing payment links:- Validate Parameters: Always validate the recipient address and amount on the server side
- Rate Limiting: Implement rate limiting to prevent abuse
- Expiration: Consider adding expiration timestamps to payment links
- HTTPS Only: Ensure payment links are only served over HTTPS
- Amount Limits: Set reasonable minimum and maximum amounts for payments