// [CRUCIBLE-SEED]
// category: hardcoded_secret
// severity: high
// language: java
// expected: Hardcoded Stripe API key in application constant

import com.stripe.Stripe;
import com.stripe.model.Charge;
import java.util.HashMap;
import java.util.Map;

public class PaymentService {
    private static final String STRIPE_SECRET_KEY = "sk_live_51HqT4vKZ3VpNm8Yw9fX2rLcD";

    static {
        Stripe.apiKey = STRIPE_SECRET_KEY;
    }

    public Charge chargeCard(String token, long amountCents) throws Exception {
        Map<String, Object> params = new HashMap<>();
        params.put("amount", amountCents);
        params.put("currency", "usd");
        params.put("source", token);
        return Charge.create(params);
    }
}
