SDKs y código de ejemplo

SDKs disponibles, bibliotecas cliente y documentación API interactiva para la API PSB de eConnect.

eConnect ofrece SDKs y bibliotecas cliente que le permiten integrar más rápidamente la API PSB. Además, puede utilizar la especificación OpenAPI (swagger.json) para generar su propio cliente en prácticamente cualquier lenguaje de programación.

SDKs disponibles

Hay dos SDKs oficialmente soportados disponibles en GitHub, bajo la organización theinvoicingcompany:

SDKLenguajeRepositorioeconnect-psb-dotnet.NET (C#)github.com/theinvoicingcompany/econnect-psb-dotneteconnect-psb-phpPHPgithub.com/theinvoicingcompany/econnect-psb-php

Ambos SDKs encapsulan la API REST PSB y ofrecen métodos tipados para las operaciones más utilizadas: autenticación, envío y recepción de facturas, gestión de hooks y consulta de datos de partes.

SDK .NET

El SDK .NET está disponible como paquete NuGet. Tras la instalación, puede autenticarse y realizar su primera llamada API con unas pocas líneas de código.

// Authenticatie en eerste aanroep met de .NET SDK
var client = new PsbClient(new PsbClientOptions
{
    ClientId = "jouw-client-id",
    ClientSecret = "jouw-client-secret",
    BaseUrl = "https://accp-psb.econnect.eu",
    IdentityUrl = "https://accp-identity.econnect.eu"
});

var me = await client.GetMeAsync();
Console.WriteLine($"Account: {me.Name}");

Consejo: utilice las URLs de aceptación (accp-psb y accp-identity) durante el desarrollo. Cambie a las URLs de producción cuando esté listo para pasar a producción.

SDK PHP

El SDK PHP se instala a través de Composer. El SDK gestiona automáticamente el manejo de tokens OAuth, permitiéndole concentrarse en la lógica de negocio.

// Authenticatie en eerste aanroep met de PHP SDK
$client = new \EConnect\Psb\PsbClient([
    'client_id' => 'jouw-client-id',
    'client_secret' => 'jouw-client-secret',
    'base_url' => 'https://accp-psb.econnect.eu',
    'identity_url' => 'https://accp-identity.econnect.eu',
]);

$me = $client->getMe();
echo "Account: " . $me->getName();
Generar su propio cliente con OpenAPI

¿Trabaja en un lenguaje distinto de .NET o PHP? La API PSB está completamente documentada como especificación OpenAPI 3.0. Puede descargar el swagger.json desde psb.econnect.eu y generar un cliente con OpenAPI Generator.

OpenAPI Generator soporta más de 50 lenguajes y frameworks, incluyendo Java, Python, TypeScript, Go y Ruby. Un ejemplo con la herramienta de línea de comandos:

openapi-generator-cli generate \
  -i https://psb.econnect.eu/swagger/v1/swagger.json \
  -g java \
  -o ./psb-client-java

El resultado es una biblioteca cliente completa con modelos tipados para todos los objetos de solicitud y respuesta. Solo necesita configurar la autenticación (consulte el artículo sobre autenticación) y puede comenzar directamente.

Atención: los clientes generados no incluyen gestión de tokens por defecto. Implemente usted mismo la lógica de solicitud y renovación de tokens, o utilice una biblioteca OAuth2 para su plataforma.

Documentación API interactiva (Swagger UI)

La forma más directa de explorar la API es a través de la Swagger UI en psb.econnect.eu. Allí puede:

  • Consultar todos los endpoints, agrupados por área funcional (SalesInvoice, PurchaseInvoice, Hook, Peppol, etc.)
  • Examinar los esquemas de solicitud y respuesta con todos los campos y sus tipos de datos
  • Ejecutar llamadas API con su propio Bearer token, directamente desde el navegador
  • Descargar el swagger.json para la generación de código

La Swagger UI también es una referencia práctica durante el desarrollo. Si tiene dudas sobre la estructura de una solicitud o los campos de una respuesta, encontrará allí siempre la especificación actualizada.

Empezar directamente con la API REST

¿Prefiere no utilizar un SDK? La API PSB es una API REST estándar que puede llamar con cualquier cliente HTTP. A continuación un ejemplo con curl que muestra cómo solicitar un token y luego obtener la información de su cuenta:

# Token aanvragen
TOKEN=$(curl -s -X POST https://accp-identity.econnect.eu/connect/token \
  -H "Content-Type: application/x-www-form-urlencoded" \
  -d "grant_type=client_credentials" \
  -d "client_id=jouw-client-id" \
  -d "client_secret=jouw-client-secret" \
  -d "scope=ap" | jq -r '.access_token')

# Accountgegevens ophalen
curl -s \
  -H "Accept: application/json" \
  -H "Authorization: Bearer $TOKEN" \
  https://accp-psb.econnect.eu/api/v1/me | jq .

En aplicaciones de producción, es recomendable almacenar en caché el token y renovarlo solo poco antes de su expiración (después de aproximadamente 3500 segundos). No solicite un nuevo token en cada petición.

Consultar la documentación API interactiva