Available Guards
Sol Payment Guard
Overview
The Sol Payment guard allows us to charge the payer an amount in SOL when minting. Both the amount of SOL and the destination address can be configured.
Guard Settings
The Sol Payment guard contains the following settings:
- Lamports: The amount in SOL (or lamports) to charge the payer.
- Destination: The address of the wallet that should receive all payments related to this guard.
Set up a Candy Machine using the Sol Payment guard
Note that, in this example, we’re using the current identity as the destination wallet.
create(umi, {
// ...
guards: {
solPayment: some({
lamports: sol(1.5),
destination: umi.identity.publicKey,
}),
},
});
API References: create, SolPayment
Mint Settings
The Sol Payment guard contains the following Mint Settings:
- Destination: The address of the wallet that should receive all payments related to this guard.
Note that, if you’re planning on constructing instructions without the help of our SDKs, you will need to provide these Mint Settings and more as a combination of instruction arguments and remaining accounts. See the Core Candy Guard’s program documentation for more details.
Mint with the Sol Payment Guard
You may pass the Mint Settings of the Sol Payment guard using the mintArgs
argument like so.
mintV1(umi, {
// ...
mintArgs: {
solPayment: some({ destination: treasury }),
},
});
API References: mintV1, SolPaymentMintArgs
Route Instruction
The Sol Payment guard does not support the route instruction.