pkg/

directory
v1.0.3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 15, 2026 License: AGPL-3.0

Directories

Path Synopsis
Package account is the business-logic layer for Stellar accounts.
Package account is the business-logic layer for Stellar accounts.
Package auth authenticates the admin by proving control of a Stellar key, then issues a JWT session token.
Package auth authenticates the admin by proving control of a Stellar key, then issues a JWT session token.
Package config is the single source of application configuration.
Package config is the single source of application configuration.
Package contracts holds the interface seams between the platform's modules, together with the data types those interfaces exchange.
Package contracts holds the interface seams between the platform's modules, together with the data types those interfaces exchange.
Package controllers is the HTTP handler layer, built on Fiber.
Package controllers is the HTTP handler layer, built on Fiber.
Package errors holds sentinel errors shared across packages that would otherwise have to import one another to match on them.
Package errors holds sentinel errors shared across packages that would otherwise have to import one another to match on them.
Package health exposes liveness and readiness probes as Fiber handlers, in the shape an orchestrator like Kubernetes expects.
Package health exposes liveness and readiness probes as Fiber handlers, in the shape an orchestrator like Kubernetes expects.
Package jobs is the background-work layer, wrapping the Redis-backed asynq library behind a single Scheduler.
Package jobs is the background-work layer, wrapping the Redis-backed asynq library behind a single Scheduler.
Package middleware holds the Fiber middleware that wraps the HTTP layer: authentication, a uniform response envelope, and the standard cross-cutting stack every request passes through.
Package middleware holds the Fiber middleware that wraps the HTTP layer: authentication, a uniform response envelope, and the standard cross-cutting stack every request passes through.
Package mobile is the umbrella for the platform's mobile-channel surface.
Package mobile is the umbrella for the platform's mobile-channel surface.
sms
Package sms sends outbound SMS messages and ingests delivery-report callbacks.
Package sms sends outbound SMS messages and ingests delivery-report callbacks.
ussd
Package ussd is the interactive USSD application: the menu-driven flow a mobile subscriber walks through to register, request a loan, pick a payout method, repay, and manage their PIN.
Package ussd is the interactive USSD application: the menu-driven flow a mobile subscriber walks through to register, request a loan, pick a payout method, repay, and manage their PIN.
ussd/adapters
Package adapters holds the USSD-to-domain glue: each file implements a narrow port interface declared elsewhere against the concrete user, account, off-ramp, and Stellar services.
Package adapters holds the USSD-to-domain glue: each file implements a narrow port interface declared elsewhere against the concrete user, account, off-ramp, and Stellar services.
ussd/providers/africastalking
Package africastalking implements the USSD provider adapter for AfricasTalking.
Package africastalking implements the USSD provider adapter for AfricasTalking.
Package models holds the GORM persistence models — the database schema expressed as Go structs.
Package models holds the GORM persistence models — the database schema expressed as Go structs.
Package notifications delivers user-facing messages — loan lifecycle and account/PIN events — and is the concrete implementation of the notifier ports declared in the contracts package.
Package notifications delivers user-facing messages — loan lifecycle and account/PIN events — and is the concrete implementation of the notifier ports declared in the contracts package.
Package payment is the umbrella for the platform's off-ramp surface.
Package payment is the umbrella for the platform's off-ramp surface.
fonbnk
Package fonbnk is a placeholder for the Fonbnk on-ramp client.
Package fonbnk is a placeholder for the Fonbnk on-ramp client.
moneygram
Package moneygram is the MoneyGram-flavoured wrapper around the generic stellaranchor SDK.
Package moneygram is the MoneyGram-flavoured wrapper around the generic stellaranchor SDK.
offramp
Package offramp defines the off-ramp Provider contract that every provider in the platform satisfies.
Package offramp defines the off-ramp Provider contract that every provider in the platform satisfies.
stellaranchor
Package stellaranchor provides the reusable Stellar-anchor primitives that any SEP-24-compliant anchor implementation can compose on top of.
Package stellaranchor provides the reusable Stellar-anchor primitives that any SEP-24-compliant anchor implementation can compose on top of.
yellowcard
Package yellowcard is the low-level HTTP client for the YellowCard mobile-money off-ramp API.
Package yellowcard is the low-level HTTP client for the YellowCard mobile-money off-ramp API.
Package phone holds the platform's shared phone-number helpers: redaction for logs, and three normalisers with deliberately different contracts.
Package phone holds the platform's shared phone-number helpers: redaction for logs, and three normalisers with deliberately different contracts.
Package pin manages user PINs for USSD-based authentication: setting and verifying them, enforcing strength and lockout, changing and resetting them, and the security-question recovery flow.
Package pin manages user PINs for USSD-based authentication: setting and verifying them, enforcing strength and lockout, changing and resetting them, and the security-question recovery flow.
Package repository is the data-access layer.
Package repository is the data-access layer.
Package services holds the primitives shared by the business-logic service layer.
Package services holds the primitives shared by the business-logic service layer.
mgpoller
Package mgpoller polls MoneyGram for SEP-24 transaction status changes and drives the existing disbursement state machine accordingly.
Package mgpoller polls MoneyGram for SEP-24 transaction status changes and drives the existing disbursement state machine accordingly.
Package stellar is the single entry point for everything the platform does on the Stellar network — both classic operations (accounts, trustlines, payments) and Vault smart-contract calls.
Package stellar is the single entry point for everything the platform does on the Stellar network — both classic operations (accounts, trustlines, payments) and Vault smart-contract calls.
classic
Package classic holds the platform's non-Soroban Stellar operations: creating accounts, establishing trustlines, and moving USDC.
Package classic holds the platform's non-Soroban Stellar operations: creating accounts, establishing trustlines, and moving USDC.
rpc
Package rpc waits for a submitted Stellar transaction to be applied to the ledger.
Package rpc waits for a submitted Stellar transaction to be applied to the ledger.
soroban
Package soroban is the Go client for the Vault smart contract.
Package soroban is the Go client for the Vault smart contract.
testing
Package testing provides the shared test doubles for the stellar packages.
Package testing provides the shared test doubles for the stellar packages.
types
Package types holds the request and response DTOs shared across the stellar packages, plus the error values they return.
Package types holds the request and response DTOs shared across the stellar packages, plus the error values they return.
Package transaction is the business-logic layer for the platform's transaction ledger — the durable record of every money movement, whether it settled on the Stellar network, through an external provider, or internally.
Package transaction is the business-logic layer for the platform's transaction ledger — the durable record of every money movement, whether it settled on the Stellar network, through an external provider, or internally.
Package urlshortener turns long outbound links — MoneyGram cash-pickup interactive and support URLs — into short, tappable links that fit inside an SMS segment.
Package urlshortener turns long outbound links — MoneyGram cash-pickup interactive and support URLs — into short, tappable links that fit inside an SMS segment.
Package user is the business-logic layer for registered users — the people the platform serves and the staff who administer it.
Package user is the business-logic layer for registered users — the people the platform serves and the staff who administer it.
Package utils holds small, standalone helpers shared across the platform.
Package utils holds small, standalone helpers shared across the platform.
Package validation turns struct-tag validation into user-friendly field errors.
Package validation turns struct-tag validation into user-friendly field errors.
Package webhook reacts to off-ramp settlement outcomes.
Package webhook reacts to off-ramp settlement outcomes.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL