v2.0.21
feder-cr/AIHawkv2.0.21Jul 4, 2026by omkar273
AI Summary
This release focuses on enhancing API security with tenant-scoped key checks and introduces persistent webhook logging. It adds support for cross-system integrations, meter usage, and new features for coupons, checkout flows, and tenant authentication.
Key Highlights
- Updated Swagger specification
- Fixed tenant-scoped API key checks in DeleteUser function
- Added WebhookLoggingConfig for webhook request persistence
- Enabled meter usage and event ingestion logs
- Added checkout flow and tenant auth middleware support
New Features
- WebhookLoggingConfig for persistence
- Integration cross-system ledger, payment method, and moyasar charge
- Coupon and line item expansion
- Tenant authentication middleware
- Checkout session support and cleanup
Full Release Notes
## What's Changed * feat(swagger): update swagger spec by @omkar273 in https://github.com/flexprice/flexprice/pull/2051 * fix(user): ensure tenant-scoped API key checks in DeleteUser function by @subratsahilgupta in https://github.com/flexprice/flexprice/pull/2052 * main -> develop by @omkar273 in https://github.com/flexprice/flexprice/pull/2053 * refactor(user): simplify comment on tenant-scoped API key checks in DeleteUser function by @subratsahilgupta in https://github.com/flexprice/flexprice/pull/2054 * feat(logging): add WebhookLoggingConfig for webhook request persistence by @Gursimar10 in https://github.com/flexprice/flexprice/pull/2034 * ci(deploy): publish GHCR :main tag on push to main by @agrim123 in https://github.com/flexprice/flexprice/pull/2056 * fix(meter-usage): Handle non-subscription meters in usage by @DiabolusGX in https://github.com/flexprice/flexprice/pull/2057 * Fle 876 dev by @Gursimar10 in https://github.com/flexprice/flexprice/pull/2060 * Develop by @DiabolusGX in https://github.com/flexprice/flexprice/pull/2059 * fix(meter-usage): Event ingestion logs by @DiabolusGX in https://github.com/flexprice/flexprice/pull/2062 * feat(meter-usage): enable meter usage by @DiabolusGX in https://github.com/flexprice/flexprice/pull/2063 * Develop by @DiabolusGX in https://github.com/flexprice/flexprice/pull/2064 * Revert "fix(meter-usage): Event ingestion logs" by @DiabolusGX in https://github.com/flexprice/flexprice/pull/2065 * feat(coupon): add expand for coupon and line item by @omkar273 in https://github.com/flexprice/flexprice/pull/2066 * feat(integration): add support for integration cross system ledger, payment method, and moyasar charge automatic by @subratsahilgupta in https://github.com/flexprice/flexprice/pull/2040 * feat(chart): render webhook.rate_limit + integration_events block by @ojasagarwal-flex in https://github.com/flexprice/flexprice/pull/2068 * feat(chart): render wallet_balance_alert config section by @ojasagarwal-flex in https://github.com/flexprice/flexprice/pull/2070 * feat(moyasar): enhance customer validation and improve logging in payment processing by @subratsahilgupta in https://github.com/flexprice/flexprice/pull/2072 * fix(config): bind Svix auth token env so webhooks stop 401-ing by @ojasagarwal-flex in https://github.com/flexprice/flexprice/pull/2078 * feat(chart): render remaining feature_flag fields by @ojasagarwal-flex in https://github.com/flexprice/flexprice/pull/2077 * Release by @subratsahilgupta in https://github.com/flexprice/flexprice/pull/2069 * feat(payment): update CreateSetupIntentRequest to use SecretProviderand enhance Moyasar setup intent handling with improved logging and success URL management by @subratsahilgupta in https://github.com/flexprice/flexprice/pull/2079 * refactor(setupintent): streamline success URL assignment logic in createMoyasarSetupIntent function by @subratsahilgupta in https://github.com/flexprice/flexprice/pull/2080 * fix(config): bind FLEXPRICE_REDIS_CLUSTER_MODE & REDIS_KEY_PREFIX env vars by @ojasagarwal-flex in https://github.com/flexprice/flexprice/pull/2083 * fix(config): bind FLEXPRICE_REDIS_CLUSTER_MODE & REDIS_KEY_PREFIX env vars (prod) by @ojasagarwal-flex in https://github.com/flexprice/flexprice/pull/2084 * main -> develop by @omkar273 in https://github.com/flexprice/flexprice/pull/2085 * feat(payment-method): add index by @subratsahilgupta in https://github.com/flexprice/flexprice/pull/2086 * Release by @omkar273 in https://github.com/flexprice/flexprice/pull/2082 * feat(helm): render checkout.base_url into app configmap by @ojasagarwal-flex in https://github.com/flexprice/flexprice/pull/2089 * feat(helm): render meter/replay/raw/benchmark consumer blocks in configmap by @ojasagarwal-flex in https://github.com/flexprice/flexprice/pull/2093 * fix(chart): remove HTTP /health probes from consumer + worker deployments by @ojasagarwal-flex in https://github.com/flexprice/flexprice/pull/2044 * feat(checkout): add checkout flow by @omkar273 in https://github.com/flexprice/flexprice/pull/2076 * feat(middleware): add support for tenant auth middleware by @subratsahilgupta in https://github.com/flexprice/flexprice/pull/2055 * refactor(router): standardize entity usage in checkout session routes by @omkar273 in https://github.com/flexprice/flexprice/pull/2096 * Hotfix/tax-assocations-err by @subratsahilgupta in https://github.com/flexprice/flexprice/pull/2094 * Develop by @omkar273 in https://github.com/flexprice/flexprice/pull/2097 * Release 26th June'26 by @subratsahilgupta in https://github.com/flexprice/flexprice/pull/2095 * feat(wallet): graceful fallback to cached balance on backend failure by @DiabolusGX in https://github.com/flexprice/flexprice/pull/2092 * fix(wallet): fallback to older cached balance by @DiabolusGX in https://github.com/flexprice/flexprice/pull/2100 * feat(analytics-benchmark): Add FINAL benchmark for meter usage by @DiabolusGX in https://github.com/flexprice/flexprice/pull/2101 * fix return type by @DiabolusGX in https://github.com/flexprice/flexprice/pull/2105 * Develop by @DiabolusGX in https://github.com/flexprice/flexprice/pull/2106 * fix(resp-rbac): update error marking for existing credit notes and handle entity, action for logs by @subratsahilgupta in https://github.com/flexprice/flexprice/pull/2098 * feat(checkout): add support for checkout session by @omkar273 in https://github.com/flexprice/flexprice/pull/2108 * feat(checkout): add support for checkout session cleanup by @omkar273 in https://github.com/flexprice/flexprice/pull/2110 * feat(customer-entitlements): add subscriptions field to CustomerEntitlementsResponse and update billing service response by @subratsahilgupta in https://github.com/flexprice/flexprice/pull/2104 * feat(webhook): enhance checkout session event handling by @omkar273 in https://github.com/flexprice/flexprice/pull/2111 * feat(feature-entitlement): add support for config_value field on entitlements with create, bulk create, update, and aggregation pipeline by @subratsahilgupta in https://github.com/flexprice/flexprice/pull/2103 * main -> develop by @subratsahilgupta in https://github.com/flexprice/flexprice/pull/2112 * Release by @omkar273 in https://github.com/flexprice/flexprice/pull/2109 * fix(price): increase entity limit from 3000 to 5000 by @Gursimar10 in https://github.com/flexprice/flexprice/pull/2113 * feat(kafka): add dlq for event ingestion consumers by @Gursimar10 in https://github.com/flexprice/flexprice/pull/2102 * refactor(cache): replace TrySetNX with AcquireLock by @omkar273 in https://github.com/flexprice/flexprice/pull/2115 * Main by @DiabolusGX in https://github.com/flexprice/flexprice/pull/2116 * refactor(billing): update billing date calculations to use parameter by @omkar273 in https://github.com/flexprice/flexprice/pull/2117 * refactor(billing): update billing date calculations params by @omkar273 in https://github.com/flexprice/flexprice/pull/2121 * Release by @omkar273 in https://github.com/flexprice/flexprice/pull/2122 * fix(config): BindEnv auth.supabase.service_key so GKE reads it (fixes /v1/users 500) by @ojasagarwal-flex in https://github.com/flexprice/flexprice/pull/2123 * feat(timezone): add timezone support to invoicing by @omkar273 in https://github.com/flexprice/flexprice/pull/2043 * Release by @omkar273 in https://github.com/flexprice/flexprice/pull/2124 * hotfix(billing): remove line items from entitlements response by @subratsahilgupta in https://github.com/flexprice/flexprice/pull/2126 * fix(config): BindEnv email.resend_api_key + render email.zapier_webhook_url by @ojasagarwal-flex in https://github.com/flexprice/flexprice/pull/2129 * refactro(expression): CEL expr enhancemens by @DiabolusGX in https://github.com/flexprice/flexprice/pull/2114 * Release by @DiabolusGX in https://github.com/flexprice/flexprice/pull/2134 * feat(kafka): add dlq on consumer group which ingest from events by @Gursimar10 in https://github.com/flexprice/flexprice/pull/2132 * Implement AGENTS.md structure and context sync by @omkar273 in https://github.com/flexprice/flexprice/pull/1953 * feat(subscription): allow addons on draft subscriptions by @omkar273 in https://github.com/flexprice/flexprice/pull/2048 * feat(e2eprobe): continuous synthetic API probe for prod monitoring by @DiabolusGX in https://github.com/flexprice/flexprice/pull/1956 * feat(e2eprobe): example env file by @DiabolusGX in https://github.com/flexprice/flexprice/pull/2137 * feat(subscription): add ConfigValue field to OverrideEntitlementRequest and update processing logic by @subratsahilgupta in https://github.com/flexprice/flexprice/pull/2136 * feat(helm): consumer-only extraEnv (enables cache on consumer only) by @ojasagarwal-flex in https://github.com/flexprice/flexprice/pull/2138 * fix(subscription): refine validation messages for config feature overrides in ProcessSubscriptionEntitlementOverrides function by @subratsahilgupta in https://github.com/flexprice/flexprice/pull/2141 * Fix/config ent edit by @subratsahilgupta in https://github.com/flexprice/flexprice/pull/2143 * feat(e2eprobe): ship as standalone docker image by @agrim123 in https://github.com/flexprice/flexprice/pull/2142 * feat(kafka): add topic_dlq for remaining consumer groups in helm conf… by @Gursimar10 in https://github.com/flexprice/flexprice/pull/2144 * fix(entitlement): update validation to enable config features by default and adjust related tests by @subratsahilgupta in https://github.com/flexprice/flexprice/pull/2145 * fix(docker): keep swagger docs.go in build context (fixes develop build) by @agrim123 in https://github.com/flexprice/flexprice/pull/2147 * feat(meter-usage): Enable billing via meter usage by @DiabolusGX in https://github.com/flexprice/flexprice/pull/2140 * main -> develop by @omkar273 in https://github.com/flexprice/flexprice/pull/2150 * feat(creditgrant): add EndDate update by @omkar273 in https://github.com/flexprice/flexprice/pull/2149 * Release by @subratsahilgupta in https://github.com/flexprice/flexprice/pull/2139 * feat(meter_usage): add support for expand sources in meter usage analytics by @omkar273 in https://github.com/flexprice/flexprice/pull/2151 * Develop by @DiabolusGX in https://github.com/flexprice/flexprice/pull/2152 * fix(paddle): handle paddle txn.completed webhook against subscription… by @Gursimar10 in https://github.com/flexprice/flexprice/pull/2153 * fix(stripe): preserve original quantity in invoice line item by @omkar273 in https://github.com/flexprice/flexprice/pull/2154 * feat(webhooks): return Svix app-portal token + app_id by @agrim123 in https://github.com/flexprice/flexprice/pull/2148 * hotfix(wallet): add SkipAsyncRecheck field to WalletBalanceAlertEvent to prevent duplicate processing of balance alerts by @subratsahilgupta in https://github.com/flexprice/flexprice/pull/2155 * feat(creditgrant): add EndDate update by @omkar273 in https://github.com/flexprice/flexprice/pull/2159 * RELEASE by @ojasagarwal-flex in https://github.com/flexprice/flexprice/pull/2158 * chore(config): new feature flag by @DiabolusGX in https://github.com/flexprice/flexprice/pull/2163 * main -> develop by @omkar273 in https://github.com/flexprice/flexprice/pull/2164 * chore(logging): downgrade high-volume info logs to debug to reduce volume by @nkmishra1997 in https://github.com/flexprice/flexprice/pull/2160 * fix(tracing): make DB spans visible as Database Calls in OTEL + per-statement Postgres/ClickHouse spans by @nkmishra1997 in https://github.com/flexprice/flexprice/pull/2161 * feat(analytics): add discount handling to meter usage analytics by @omkar273 in https://github.com/flexprice/flexprice/pull/2135 * feat(billing): add tests for month-end date by @omkar273 in https://github.com/flexprice/flexprice/pull/2166 * Release by @nkmishra1997 in https://github.com/flexprice/flexprice/pull/2165 **Full Changelog**: https://github.com/flexprice/flexprice/compare/v2.1.20...v2.0.21