stackin
Volver al blog
Integración

SDK de Go

Una struct, cuatro métodos — Issue, Consult, Cancel — tipados y validados.

El SDK oficial de Go (go get github.com/stackin-io/stackin-go-sdk) envuelve la API REST uno a uno: una struct Invoice con Issue(), Consult() y Cancel() — nada más que instanciar. Cada ítem de línea es un br.Product tipado, con campos fiscales específicos de Brasil (NCM/CFOP/CEST...) exigidos solo donde el autorizador realmente los necesita.

Autentica de la misma forma que la API cruda — una única API key — así que cambiar entre SDK y llamadas HTTP directas después no cambia cómo está configurada tu cuenta o entorno.

Los errores aparecen como tres tipos distintos en vez de una falla genérica: un *APIError lleva el código de estado y el detalle del propio autorizador, un *ConnectionFailedError cubre fallos de red/DNS/timeout antes de que llegue cualquier respuesta, y un *InvoiceError detecta problemas de validación del lado cliente — ítems vacío, o NCM/CFOP faltante en un ítem de NF-e — antes de que la solicitud siquiera se envíe.

El SDK está construido sobre la misma configuración .code_quality/ y forma de CI que cualquier otro SDK oficial de stackin, y el mismo contrato universal de API, así que una integración en Go se lee igual a la de Python en cuanto conoces una de las dos — Issue/Consult/Cancel frente a issue/consult/cancel es convención de mayúsculas, no una diferencia de comportamiento.

Consulta la sección SDKs de la referencia de la API para comandos de instalación, o el código en GitHub.