Onboarding configuration
esc
Country
Forms
↑↓ navigate↵ open40 results

UG country data

Account products, the currencies they imply, and the privacy policy. They publish as an Onboarding EF data migration—the mechanism DigitalOnboardingSvc already applies at startup.

0
Account products
0
Currencies (derived)
0/1
Privacy policy
2
Blocking issues
1 · Generated seed migration

Review the script

This is the primary database artifact. It upserts the account products and privacy policy currently configured for UG. Review the values and rollback before adding it to DigitalOnboardingSvc.

src/Modules/Onboarding/OmniDos.Onboarding.Infra/Migrations/20261018155018_SeedUGCountryData.cs
using Microsoft.EntityFrameworkCore.Infrastructure;
using Microsoft.EntityFrameworkCore.Migrations;
using OmniDos.Onboarding.Infra.Data;

#nullable disable

namespace OmniDos.Onboarding.Infra.Migrations
{
    /// <summary>Upserts UG account products and privacy-policy lookup data.</summary>
    [DbContext(typeof(OnboardingDbContext))]
    [Migration("20261018155018_SeedUGCountryData")]
    public partial class SeedUGCountryData_20261018155018 : Migration
    {
        /// <inheritdoc />
        protected override void Up(MigrationBuilder migrationBuilder)
        {
            migrationBuilder.Sql("""
                -- No database-backed country data was supplied.
                """);
        }

        /// <inheritdoc />
        protected override void Down(MigrationBuilder migrationBuilder)
        {
            // Rows inserted by this migration are safe to remove. Rows that already
            // existed were updated in place and need a forward corrective migration;
            // their previous values are not available here to restore safely.
            migrationBuilder.Sql("""
                -- Nothing was inserted by this migration.
                """);
        }
    }
}
2 · Apply the migration

How the platform uses this file

Execution order: the backend applies pending Onboarding schema migrations in timestamp order first. When EF reaches this data migration, its Up() method runs the seed script. The studio does not generate or copy an EF designer model.
  1. 1
    Add the generated file

    Download the bundle and copy repo/ over the root of the DigitalOnboardingSvc checkout. Keep the generated migration path and timestamp unchanged.

  2. 2
    Review before deployment

    Confirm the country, currencies, scheme codes, document URLs and both Up() and Down(). The migration deliberately does not delete database products omitted from the studio.

  3. 3
    Let the backend apply it

    In a deployed environment, OmniDos.Web.Api applies pending migrations before serving requests. A migration failure stops startup, so the seed is never run against an outdated schema.

  4. 4
    Verify the country lookups

    After startup, verify account products, currencies and the privacy policy through the Onboarding lookup endpoints for UG.

Manual application from the DigitalOnboardingSvc root
dotnet ef database update \
  --project src/Modules/Onboarding/OmniDos.Onboarding.Infra/OmniDos.Onboarding.Infra.csproj \
  --startup-project src/Api/OmniDos.Web.Api/OmniDos.Web.Api.csproj \
  --context OnboardingDbContext
Checks — 2 blocking, 0 to review
  • ✕ No account products — the account picker and the currency lookup would both come back empty.
  • ✕ Privacy policy: not configured.
No changes yet · one EF migration: src/Modules/Onboarding/OmniDos.Onboarding.Infra/Migrations/20261018155018_SeedUGCountryData.cs