PagosSuscripciones

Cerrar Autoridad de Suscripción

Una Autoridad de Suscripción es el PDA que el programa utiliza como delegado de Token SPL para la cuenta de tokens de un usuario. Ciérrela cuando el usuario ya no tenga delegaciones fijas activas, delegaciones recurrentes o delegaciones de suscripción para ese mint.

Cerrar la cuenta devuelve su renta al financiador de lamports de la cuenta y revoca la aprobación de delegado de token propiedad del programa. El financiador suele ser el usuario, pero puede ser cualquier pagador que haya financiado la cuenta de Autoridad de Suscripción. Si alguna delegación activa aún depende de la autoridad, cierre esas delegaciones primero.

Cerrar la Autoridad

import { address, createClient } from '@solana/kit';
import { solanaLocalRpc } from '@solana/kit-plugin-rpc';
import { signer } from '@solana/kit-plugin-signer';
import {
findSubscriptionAuthorityPda,
subscriptionsProgram,
} from '@solana/subscriptions';
const client = createClient()
.use(signer(userSigner))
.use(solanaLocalRpc({ rpcUrl: 'http://127.0.0.1:8899' }))
.use(subscriptionsProgram());
const tokenMint = address('TOKEN_MINT_ADDRESS_HERE');
const [subscriptionAuthorityPda] = await findSubscriptionAuthorityPda({
user: userSigner.address,
tokenMint,
});
await client.subscriptions.instructions
.closeSubscriptionAuthority({
user: userSigner,
tokenMint,
// Include this only when a sponsor funded the Subscription Authority.
receiver: sponsorSigner.address,
})
.sendTransaction();

Notas

  • El usuario firma la transacción de cierre.
  • Si un patrocinador financió la Autoridad de Suscripción, pase esa cuenta de patrocinador como receiver para que la renta se devuelva al pagador registrado.
  • Cierre los PDAs de delegación fija, recurrente y de suscripción antes de cerrar la Autoridad de Suscripción.
  • Si el usuario crea una nueva delegación más tarde, inicialice una nueva Autoridad de Suscripción para el mismo mint.

Is this page helpful?

Tabla de Contenidos

Editar Página