Skip to content

Implement Go SDK subscription lifecycle with full API parity #666

Description

@Smartdevs17

Context


SubTrackr provides JavaScript, Python, and Go SDKs for programmatic subscription management. The Go SDK currently has incomplete coverage of the subscription lifecycle—missing critical operations like billing management, dunning, usage metering, and webhook verification—limiting adoption for Go-based backend integrations.
\

\

Current Limitation

\

  • Go SDK only covers basic subscription CRUD; advanced endpoints lack implementations
    \
  • No webhook signature verification utility in Go
    \
  • Missing: dunning management, usage metering queries, billing operations
    \
  • Error handling is inconsistent with JS/Python SDK patterns
    \
  • No automatic retry with exponential backoff
    \

\

Expected Outcome


Feature-complete Go SDK with full API parity across subscription lifecycle: create, read, update, cancel, pause, reactivate, dunning, billing, metering, and webhook verification—matching JS SDK functionality.
\

\

Acceptance Criteria

\

  • All subscription lifecycle endpoints are implemented in Go SDK
    \
  • Webhook signature verification utility added
    \
  • Automatic retry with exponential backoff for transient failures
    \
  • Consistent error types matching JS/Python SDK conventions
    \
  • Full test coverage with Go table-driven tests
    \
  • Integration tests against sandbox environment
    \
  • Generated reference documentation (godoc-compatible)
    \
  • Example snippets for common subscription workflows
    \

\

Technical Scope

\

  • Files: sdks/go/ (entire directory), sdks/generated/endpoints.json
    \
  • APIs: Subscription CRUD, BillingEngine, DunningService, UsageMetering, WebhookVerification
    \
  • Edge cases: Pagination across large subscription sets, rate limit handling, network timeout behavior, nil/zero-value handling for optional fields

Metadata

Metadata

Assignees

No one assigned

    Labels

    200-points200 point issueStellar WaveIssues in the Stellar wave programdrips-waveIssues in the Drips Wave programhighHigh complexity issue

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions