CreateInstance

Crea il PDA Instance che ancora l'escrow. Deve essere chiamato prima di qualsiasi altra operazione.

Seed del PDA

instance -> ["instance", instance_seed: Pubkey]
allowed_mint -> ["allowed_mint", instance_pda: Pubkey, mint: Pubkey]
operator -> ["operator", instance_pda: Pubkey, operator: Pubkey]
event_authority -> ["event_authority"]

Account

AccountScrivibileFirmatarioDescrizione
payer✓✓Pagatore delle commissioni e del rent
admin✓Admin iniziale dell'istanza
instance_seed✓keypair temporaneo usato solo per la derivazione del PDA; il suo pubkey diventa il seed
instance✓PDA Instance (derivato da ["instance", instance_seed.pubkey])
system_programSystem Program
event_authorityPDA dell'autorità degli eventi
private_channel_escrow_programProgramma Escrow

Parametri

ParametroTipoDescrizione
bumpu8bump seed per il PDA dell'istanza. Opzionale: il client Async lo deriva automaticamente se omesso

L'IDL contiene un argomento discriminator: u8 (valore 0) che viene impostato automaticamente dal client generato e non deve essere passato manualmente.

Note Importanti

  • instance_seed è un keypair temporaneo, usato solo per derivare il PDA Instance. Il suo pubkey diventa il seed; il keypair stesso non viene memorizzato né riutilizzato.
  • Usa getCreateInstanceInstructionAsync; deriva automaticamente bump e instance da instance_seed quando non vengono forniti. Passa il tuo bump solo se lo hai già calcolato tramite Pubkey::find_program_address(&[b"instance", instance_seed_pubkey.as_ref()], &PROGRAM_ID)
  • Emette un evento tramite CPI EmitEvent

Is this page helpful?

Indice dei contenuti

Modifica pagina
© 2026 Solana Foundation. Tutti i diritti riservati.