package es.tatvil.taiageweb.config;

import com.stripe.Stripe;
import jakarta.annotation.PostConstruct;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Configuration;

/**
 * Inicializa el SDK de Stripe con la clave secreta de la aplicación.
 *
 * <p>La clave se obtiene de la propiedad {@code stripe.secret-key}, que debe
 * definirse como variable de entorno {@code STRIPE_SECRET_KEY} en producción.</p>
 */
@Configuration
public class StripeConfig {

    /** Clave secreta de la cuenta Stripe (inyectada desde propiedades). */
    @Value("${stripe.secret-key}")
    private String secretKey;

    /**
     * Asigna la clave secreta al SDK de Stripe tras la construcción del bean.
     * Se ejecuta una sola vez al arrancar el contexto de Spring.
     */
    @PostConstruct
    public void init() {
        Stripe.apiKey = secretKey;
    }
}
