Commet
  • Precios
Iniciar SesiónRegistrarse
Introducción

Inicio rápido

Integrar con Java

Aprender

Recursos

Referencia del SDKVersionado de APIManejo de erroresTestingCLI

Plugins

Better Auth
DocumentaciónRecursosConstruir con AIAPI ReferenceWebhooks

Integrar con Java

Instala y configura el SDK de Commet para Java.

Instalar

pom.xml
<dependency>
    <groupId>co.commet</groupId>
    <artifactId>commet-java</artifactId>
    <version>7.0.0</version>
</dependency>
build.gradle.kts
implementation("co.commet:commet-java:7.0.0")

Configurar

.env
COMMET_API_KEY=ck_sandbox_xxx
CommetClient.java
import co.commet.Commet;
import co.commet.Environment;

public class CommetClient {

    public static final Commet commet = Commet.builder()
            .apiKey(System.getenv("COMMET_API_KEY"))
            .environment(Environment.SANDBOX)
            .build();
}

Crear cliente y suscribir

customers().create es idempotente — si ya existe un cliente con el mismo id, devuelve el registro existente.

import co.commet.ApiResponse;
import co.commet.params.CreateSubscriptionParams;
import java.util.Map;

commet.customers().create("user@example.com", "user_123");

ApiResponse subscription = commet.subscriptions().create(
    CreateSubscriptionParams.builder("user_123")
        .planCode("pro")
        .build()
);

Map<String, Object> data = (Map<String, Object>) subscription.getData();
String checkoutUrl = (String) data.get("checkout_url");

El cliente es redirigido al checkout para completar el pago.

Verificar acceso

ApiResponse sub = commet.subscriptions().getActive(GetActiveSubscriptionParams.builder("user_123").build());
Map<String, Object> subData = (Map<String, Object>) sub.getData();
String status = (String) subData.get("status");

ApiResponse<FeatureLookup> access = commet.featureAccess()
        .get("custom_branding", GetFeatureAccessParams.builder("user_123").build());
boolean allowed = access.getData().allowed();

Trackear uso

commet.usage().track(
    TrackParams.builder("api_calls")
        .customerId("user_123")
        .value(1)
        .build()
);

El uso se agrega y se cobra al final del período.

Webhooks

import co.commet.resources.Webhooks;
import java.util.Map;

Webhooks webhooks = new Webhooks();

Map<String, Object> payload = webhooks.verifyAndParse(
        rawBody, signature, webhookSecret
);

if (payload == null) {
    // devolver 401
}

if ("subscription.activated".equals(payload.get("event"))) {
    // manejar activación
}

Relacionado

  • Referencia del SDK

¿Cómo está esta guía?

Integrar con Django

Agrega cobros y pagos a tu aplicación de Django.

Integrar con Go

Agrega cobros y pagos a tu aplicación de Go usando net/http.

En esta página

Instalar
Configurar
Crear cliente y suscribir
Verificar acceso
Trackear uso
Webhooks
Relacionado