Skip to content

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.0

Source: 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 varPurpose
AUTLANTIC_BILLING_API_KEYabk_test_… or abk_live_… (required)
AUTLANTIC_BILLING_API_URLDefault https://billing.autlantic.com
AUTLANTIC_BILLING_MERCHANT_IDOptional merchant id

Hosted mode only. Pins Autlantic-Version: 2026-01-01. Idempotent POSTs and retries on 429/5xx.

Client methods

MethodDescription
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).