Getting started¶
Scaffold¶
dotnet new install ConnectSoft.Saas.BillingTemplate.Installer
dotnet new connectsoft-saas-billing -n ConnectSoft.MyBillingService -o ./MyBillingService
Because Billing extends the base template via a submodule, clone with submodules if you work from source (git clone --recurse-submodules).
Build and run¶
cd MyBillingService
dotnet build ConnectSoft.Saas.BillingTemplate.slnx
dotnet run --project src/ConnectSoft.Saas.Billing.Application
The host exposes REST (api/subscriptions) and gRPC (SubscriptionManagementService, SubscriptionQueryService). Default appsettings.json runs with SQL Server persistence and in-memory MassTransit/Orleans suitable for local/dev.
Try it¶
# create a draft subscription for a tenant
curl -X POST https://localhost:5001/api/subscriptions/draft -H "X-Tenant-Id: <tenant>" -H "Content-Type: application/json" -d '{ ... }'
A seeded subscription is available via SampleBillingSeed (aligned with the Products Catalog sample GUIDs).
Next steps¶
- Review configuration for multitenancy, persistence dialect, MassTransit, and Orleans settings.
- See base template getting started for the inherited host capabilities.