Go SDK
Official Autlantic Billing server client for Go. Part of the Autlantic Payments SDK · Languages.
USDC on Base · secrets server-only.
bash
go get github.com/Autlantic/payments-sdk/sdks/go@sdks/go/v0.1.0Source: sdks/go · tag sdks/go/v0.1.0
Quick start
go
import billing "github.com/Autlantic/payments-sdk/sdks/go"
client, err := billing.NewFromEnv() // AUTLANTIC_BILLING_API_KEY
if err != nil {
// handle
}
link, err := client.CreatePaymentLink(map[string]any{
"amountUsdc": 42,
"merchantRefPrefix": "invoice",
"successUrl": "myapp://billing/success",
"cancelUrl": "myapp://billing/cancel",
})Environment
| Env var | Purpose |
|---|---|
AUTLANTIC_BILLING_API_KEY | abk_test_… or abk_live_… (required) |
AUTLANTIC_BILLING_API_URL | Default https://billing.autlantic.com |
AUTLANTIC_BILLING_MERCHANT_ID | Optional merchant id |
Hosted mode only. Pins Autlantic-Version: 2026-01-01. Idempotent POSTs and retries on 429/5xx.
Client methods
| Method | Description |
|---|---|
ListProducts() | Catalog |
CreateSubscription(body) | Incomplete subscription + checkout URL |
GetSubscription(id) | Fetch |
ActivateSubscription(id) | Activate |
CancelSubscription(id, body) | Cancel |
CreatePayment(body) | One-time payment |
GetPayment(id) | Fetch |
CreatePaymentLink(body) | Shareable link |
ListPaymentLinks() | List |
GetPaymentLink(id) | Fetch |
DisablePaymentLink(id) | Disable |
Webhooks
go
ok := billing.VerifyWebhook(secret, rawBody, signatureHeader)
event, err := billing.ParseWebhookEvent(rawBody)Also: VerifyWebhookDetailed, SignWebhookBody (tests). Header: x-autlantic-signature. See Webhooks.
Errors
*billing.Error has Message, Code, StatusCode, RequestID, Body.
Sample merchant backend: examples/mobile-checkout/go (port 3057).