Java

Kit de desenvolvimento de software Java da API

Integre o Asaas com o SDK Java

Use o SDK oficial do Asaas para integrar aplicações Java ou Kotlin à API utilizando serviços e modelos próprios da biblioteca.

📘

O SDK Java do Asaas é a forma mais prática, segura e robusta de integrar a API REST em aplicações desenvolvidas com Java ou Kotlin. Ele é publicado oficialmente no Sonatype (Maven Central) e validado continuamente por ferramentas de qualidade e segurança.

Antes de começar

Você precisa de:

  • Java >= 1.8;
  • uma conta Asaas em Sandbox ou Produção;
  • uma API Key do ambiente utilizado.

Durante o desenvolvimento, utilize Sandbox.

1. Instale o SDK

O SDK utiliza:

groupId: com.asaas
artifactId: api-sdk

A versão atual publicada é 1.0.3.

Maven

<dependency>
    <groupId>com.asaas</groupId>
    <artifactId>api-sdk</artifactId>
    <version>1.0.3</version>
</dependency>

Gradle

implementation group: 'com.asaas', name: 'api-sdk', version: '1.0.3'
📌

Consulte o GitHub ou a página do Sonatype para verificar a versão mais recente.

2. Configure a API Key

Inicialize o SDK com a credencial da conta:

import com.asaas.apisdk.AsaasSdk;
import com.asaas.apisdk.config.ApiKeyAuthConfig;
import com.asaas.apisdk.config.AsaasSdkConfig;

ApiKeyAuthConfig authConfig = ApiKeyAuthConfig.builder()
    .apiKey("SUA_API_KEY")
    .apiKeyHeader("access_token")
    .build();

AsaasSdkConfig config = AsaasSdkConfig.builder()
    .apiKeyAuthConfig(authConfig)
    .build();

AsaasSdk asaasSdk = new AsaasSdk(config);
❗️

Nunca exponha sua chave de API diretamente no código-fonte. Use variáveis de ambiente ou um gerenciador seguro de configurações

Consulte como funciona a autenticação da API.

3. Selecione o ambiente

O SDK disponibiliza:

Environment.DEFAULT      // Produção
Environment.PRODUCTION   // Produção
Environment.SANDBOX      // Sandbox

Configure o ambiente depois de inicializar o client:

import com.asaas.apisdk.http.Environment;

asaasSdk.setEnvironment(Environment.SANDBOX);

A API Key deve pertencer ao mesmo ambiente utilizado pelo SDK.

4. Configure o timeout, se necessário

O timeout das requisições HTTP pode ser definido em milissegundos:

AsaasSdkConfig config = AsaasSdkConfig.builder()
    .timeout(10000)
    .apiKeyAuthConfig(authConfig)
    .build();

AsaasSdk asaasSdk = new AsaasSdk(config);

5. Utilize os serviços do SDK

Os recursos da API são organizados em serviços.

Por exemplo, para criar um cliente, utilize CustomerService:

import com.asaas.apisdk.models.CustomerGetResponseDto;
import com.asaas.apisdk.models.CustomerSaveRequestDto;
import com.asaas.apisdk.services.CustomerService;

CustomerService customerService = asaasSdk.customer;

CustomerSaveRequestDto request = CustomerSaveRequestDto.builder()
    .name("John Doe")
    .cpfCnpj("24971563792")
    .email("[email protected]")
    .phone("88888888888")
    .build();

CustomerGetResponseDto customer = customerService.createNewCustomer(request);

Resultado esperado

A operação retorna um CustomerGetResponseDto com os dados do cliente criado.

Armazene o identificador retornado quando ele for necessário nas próximas operações da integração.

Consulte a documentação dos serviços no repositório oficial do SDK.

Use o SDK com Spring Boot

Registre o client e os serviços necessários como beans.

import com.asaas.apisdk.AsaasSdk;
import com.asaas.apisdk.config.ApiKeyAuthConfig;
import com.asaas.apisdk.config.AsaasSdkConfig;
import com.asaas.apisdk.http.Environment;
import com.asaas.apisdk.services.CustomerService;

import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

@Configuration
public class AsaasConfig {

    @Value("${asaas.api.key}")
    private String asaasApiKey;

    @Bean
    public AsaasSdk asaasSdk() {
        ApiKeyAuthConfig authConfig = ApiKeyAuthConfig.builder()
            .apiKey(asaasApiKey)
            .apiKeyHeader("access_token")
            .build();

        AsaasSdkConfig config = AsaasSdkConfig.builder()
            .apiKeyAuthConfig(authConfig)
            .build();

        AsaasSdk asaasSdk = new AsaasSdk(config);
        asaasSdk.setEnvironment(Environment.SANDBOX);

        return asaasSdk;
    }

    @Bean
    public CustomerService customerService(AsaasSdk asaasSdk) {
        return asaasSdk.customer;
    }
}

Depois, injete o serviço no componente que executará a operação:

import com.asaas.apisdk.models.CustomerGetResponseDto;
import com.asaas.apisdk.models.CustomerSaveRequestDto;
import com.asaas.apisdk.services.CustomerService;

import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;

@Service
@RequiredArgsConstructor
public class MyService {

    private final CustomerService customerService;

    public CustomerGetResponseDto save() {
        CustomerSaveRequestDto request = CustomerSaveRequestDto.builder()
            .name("John Doe")
            .cpfCnpj("24971563792")
            .email("[email protected]")
            .phone("88888888888")
            .build();

        return customerService.createNewCustomer(request);
    }
}

Com essa estrutura, o SDK está totalmente integrado à sua aplicação Spring. Basta repetir o padrão para outros serviços como cobranças, assinaturas, links de pagamento, etc.

Você pode encontrar mais exemplos clicando aqui

Código-fonte e distribuição

O SDK é distribuído pelo Maven Central.

Você também pode consultar no repositório oficial:

Próximos passos


Did this page help you?