v1.0.0-beta.228

bevyengine/bevyv1.0.0-beta.228May 19, 2026by github-actions[bot]

AI Summary

This beta release focuses on the billing infrastructure, introducing a new v3 currencies API, meter query v3, and a robust credits system with settlement modes for subscriptions and plans.

Key Highlights

  • Security fix for SQL injection in JSONpath validation (CVE-2026-8462).
  • Added currencies v3 API spec and meter query v3.
  • Implemented credit purchase charges and settlement modes.
  • Added llmcost tracking features for tokens and features.
  • Added support for negative credit allocations.

New Features

  • Currencies v3 API specification
  • Custom currencies to database schema
  • Optional 'at' query param for V1 grant void endpoint
  • Credit purchase charges
  • Meter query v3
  • LLM cost tracking (llmcost)
  • V3 feature cost
  • Grant balances to v2 entitlement value API
  • Settlement mode for subscription and plan schemas
  • Invoice settlement mode for credits
  • CSV response support for meter queries
  • Tax code support
  • Stripe credits support
  • Usage-based payment flows

Full Release Notes

<!-- Release notes generated using configuration in .github/release.yml at v1.0.0-beta.228 -->

## What's Changed
### Security Fixes ๐Ÿšจ
* fix(sec): sql injection in validate jsonpath query (CVE-2026-8462) by @chrisgacsal in https://github.com/openmeterio/openmeter/pull/4383
### Exciting New Features ๐ŸŽ‰
* feat(api): Add currencies v3 api spec by @mark-vass-konghq in https://github.com/openmeterio/openmeter/pull/3883
* feat(ent): Add custom currencies to the database schema by @mark-vass-konghq in https://github.com/openmeterio/openmeter/pull/3888
* feat(api): add optional `at` query param to V1 grant void endpoint by @GAlexIHU in https://github.com/openmeterio/openmeter/pull/3912
* feat(api): Add API Handlers to the v3 currencies API by @mark-vass-konghq in https://github.com/openmeterio/openmeter/pull/3891
* feat(credit): credit purchase charges by @GAlexIHU in https://github.com/openmeterio/openmeter/pull/3925
* feat(api): meter query v3 by @tothandras in https://github.com/openmeterio/openmeter/pull/3918
* feat(llmcost): add by @hekike in https://github.com/openmeterio/openmeter/pull/3905
* feat(api): add meter query v3 handler by @tothandras in https://github.com/openmeterio/openmeter/pull/3927
* fear(api): v3 feature cost by @hekike in https://github.com/openmeterio/openmeter/pull/3932
* feat(entitlement): add grant balances to v2 entitlement value api by @GAlexIHU in https://github.com/openmeterio/openmeter/pull/3922
* feat(llmcost): alias request and response token types by @hekike in https://github.com/openmeterio/openmeter/pull/3953
* feat(cost): normalize query by @hekike in https://github.com/openmeterio/openmeter/pull/3954
* feat(api): v3 feature endpoint types by @rolosp in https://github.com/openmeterio/openmeter/pull/3972
* feat(feature): migrate meter_slug to meter_id by @hekike in https://github.com/openmeterio/openmeter/pull/3987
* feat(api): added price types by @rolosp in https://github.com/openmeterio/openmeter/pull/3982
* feat(ledger): chargeadapters by @GAlexIHU in https://github.com/openmeterio/openmeter/pull/3963
* feat(api): v3 feature handlers and unit  config by @hekike in https://github.com/openmeterio/openmeter/pull/3986
* feat(api): credits API specification by @tothandras in https://github.com/openmeterio/openmeter/pull/3938
* feat(backend): implement invoice settlement mode for credits by @mark-vass-konghq in https://github.com/openmeterio/openmeter/pull/3976
* feat(api): add csv response to post meter query by @tothandras in https://github.com/openmeterio/openmeter/pull/4004
* feat(api): ratecard type introduction to v3 productcatalog types by @rolosp in https://github.com/openmeterio/openmeter/pull/3994
* feat: refactor charges common meta to use mixins by @turip in https://github.com/openmeterio/openmeter/pull/3995
* feat(ent): Add settlement mode for subscription and plan schemas by @mark-vass-konghq in https://github.com/openmeterio/openmeter/pull/4005
* feat(feature): unit cost update api by @hekike in https://github.com/openmeterio/openmeter/pull/3962
* feat: implement credits-only flat fee handling by @turip in https://github.com/openmeterio/openmeter/pull/4009
* feat: subscription sync semantic patching by @turip in https://github.com/openmeterio/openmeter/pull/4014
* feat(backend): add settlement mode to internal types by @mark-vass-konghq in https://github.com/openmeterio/openmeter/pull/4013
* feat(llmcost): add source filter to list prices and overrides API by @hekike in https://github.com/openmeterio/openmeter/pull/4022
* feat(api): added plan and addon operations by @rolosp in https://github.com/openmeterio/openmeter/pull/4015
* feat: subs sync charge create by @turip in https://github.com/openmeterio/openmeter/pull/4024
* feat(api): Add settlement mode to v1 api by @mark-vass-konghq in https://github.com/openmeterio/openmeter/pull/4029
* feat: add support for negative credit allocations by @turip in https://github.com/openmeterio/openmeter/pull/4035
* feat(api): add settlement mode to v1 api handlers by @mark-vass-konghq in https://github.com/openmeterio/openmeter/pull/4044
* feat: credit priority and effective at by @turip in https://github.com/openmeterio/openmeter/pull/4066
* feat(api): credit grants handler by @tothandras in https://github.com/openmeterio/openmeter/pull/4075
* feat: charges list api by @turip in https://github.com/openmeterio/openmeter/pull/4085
* refactor: use helpers for converting labels by @chrisgacsal in https://github.com/openmeterio/openmeter/pull/4097
* feat: invoice calculation hook by @turip in https://github.com/openmeterio/openmeter/pull/4116
* feat: support AIP filtering by @tothandras in https://github.com/openmeterio/openmeter/pull/4117
* chore: allow enabling credit then invoice seperately by @turip in https://github.com/openmeterio/openmeter/pull/4136
* feat: book invoice accrued for usagebased items by @turip in https://github.com/openmeterio/openmeter/pull/4144
* feat(api): plan and planaddon handlers by @rolosp in https://github.com/openmeterio/openmeter/pull/4041
* feat(api): add charges list api http handler by @mark-vass-konghq in https://github.com/openmeterio/openmeter/pull/4103
* feat: implement realtime expand by @turip in https://github.com/openmeterio/openmeter/pull/4155
* feat: implement external payment endpoints by @turip in https://github.com/openmeterio/openmeter/pull/4158
* refactor: evaluating entitlement balance thresholds by @chrisgacsal in https://github.com/openmeterio/openmeter/pull/4162
* feat(api): add update meter api spec by @mark-vass-konghq in https://github.com/openmeterio/openmeter/pull/4168
* feat: payment settlement by @turip in https://github.com/openmeterio/openmeter/pull/4154
* feat(api): UpdateMeter implementation by @mark-vass-konghq in https://github.com/openmeterio/openmeter/pull/4169
* feat: usagebased payment flows by @turip in https://github.com/openmeterio/openmeter/pull/4179
* feat(api): add-ons v3 by @chrisgacsal in https://github.com/openmeterio/openmeter/pull/4138
* feat(api): add aip filters to meters api by @mark-vass-konghq in https://github.com/openmeterio/openmeter/pull/4170
* feat(features): add meter id filter option to the list endpoint by @borosr in https://github.com/openmeterio/openmeter/pull/4164
* feat(api): add csv support for v3 meter query by @tothandras in https://github.com/openmeterio/openmeter/pull/4196
* feat(features): add key and name filters and sort to the features list operation by @borosr in https://github.com/openmeterio/openmeter/pull/4204
* feat[charges]: skaffold progressive billing support by @turip in https://github.com/openmeterio/openmeter/pull/4203
* feat(api): add v3 list events endpoint by @tothandras in https://github.com/openmeterio/openmeter/pull/4211
* feat: short collection by @turip in https://github.com/openmeterio/openmeter/pull/4215
* feat(api): add validation errors to v3 ingested events by @tothandras in https://github.com/openmeterio/openmeter/pull/4222
* feat(charges): add tax code by @mark-vass-konghq in https://github.com/openmeterio/openmeter/pull/4237
* feat(api): add tax id and tax behavior to charges list api by @mark-vass-konghq in https://github.com/openmeterio/openmeter/pull/4263
* feat(billing): scaffold usage based charge lifecycle mapping by @turip in https://github.com/openmeterio/openmeter/pull/4297
* feat(api): update aip field filter types by @tothandras in https://github.com/openmeterio/openmeter/pull/4301
* feat(test) Charge tax config carryover by @mark-vass-konghq in https://github.com/openmeterio/openmeter/pull/4287
* chore: add credits api extensions by @turip in https://github.com/openmeterio/openmeter/pull/4311
* feat: app stripe credits support by @turip in https://github.com/openmeterio/openmeter/pull/4315
* feat: credit then invoice delete by @turip in https://github.com/openmeterio/openmeter/pull/4327
* feat: add extend support for usage-based charges [credit_then_invoice settlement mode] by @turip in https://github.com/openmeterio/openmeter/pull/4333
* feat(api): typed feature meter reference by @tothandras in https://github.com/openmeterio/openmeter/pull/4332
* feat(api): add v3 customer and subscription list filters by @tothandras in https://github.com/openmeterio/openmeter/pull/4336
* chore: usagebased credit-then-invoice [shrink] by @turip in https://github.com/openmeterio/openmeter/pull/4339
* chore: flat-fee run support by @turip in https://github.com/openmeterio/openmeter/pull/4350
* feat: add flat fee credit-then-invoice lifecycle by @turip in https://github.com/openmeterio/openmeter/pull/4351
* feat(credit_then_invoice): flat fee shrink/expand by @turip in https://github.com/openmeterio/openmeter/pull/4357
* refactor: add generic feature resolver with ratecard support by @chrisgacsal in https://github.com/openmeterio/openmeter/pull/4353
### Bug Fixes ๐Ÿ›
* fix(ent): 500 on negative value with V2 API by @GAlexIHU in https://github.com/openmeterio/openmeter/pull/3870
* fix: invoiceline splitgroup is not marshalable by @turip in https://github.com/openmeterio/openmeter/pull/3875
* fix: fix cost-basis list api handler by @mark-vass-konghq in https://github.com/openmeterio/openmeter/pull/3924
* fix: regression in gathering invoice rendering by @turip in https://github.com/openmeterio/openmeter/pull/3939
* fix(plan): add validation for metered entitlement template by @tothandras in https://github.com/openmeterio/openmeter/pull/3946
* fix(api): delete encoders by @tothandras in https://github.com/openmeterio/openmeter/pull/3950
* fix(sink): tracing by @tothandras in https://github.com/openmeterio/openmeter/pull/3967
* fix(sink): fix flush error handling by @tothandras in https://github.com/openmeterio/openmeter/pull/3968
* fix: improve server timeout handling by @turip in https://github.com/openmeterio/openmeter/pull/3980
* fix(credit): snapshotting concurrency by @GAlexIHU in https://github.com/openmeterio/openmeter/pull/3997
* fix(cost): query with not found llm cost by @hekike in https://github.com/openmeterio/openmeter/pull/4003
* fix(api): query accept header by @tothandras in https://github.com/openmeterio/openmeter/pull/4018
* fix(recurrence): increase max iter by @GAlexIHU in https://github.com/openmeterio/openmeter/pull/4030
* fix: implement settlement mode in productcatalog by @turip in https://github.com/openmeterio/openmeter/pull/4026
* fix(feature): unit cost clear by @hekike in https://github.com/openmeterio/openmeter/pull/4046
* feat: round currencies to smallest denominator by @turip in https://github.com/openmeterio/openmeter/pull/4063
* fix(cost): return proper HTTP status codes from cost query endpoint by @hekike in https://github.com/openmeterio/openmeter/pull/4069
* chore: report validation errors as validation errors by @turip in https://github.com/openmeterio/openmeter/pull/4072
* fix: testcase timing by @turip in https://github.com/openmeterio/openmeter/pull/4074
* refactor(streaming): replace hand-rolled retry with backoff and jitter by @nicholas-sokolov in https://github.com/openmeterio/openmeter/pull/4050
* chore: fix review comment by @turip in https://github.com/openmeterio/openmeter/pull/4067
* fix: credit purchase adapter issues by @turip in https://github.com/openmeterio/openmeter/pull/4068
* fix: overwriting attrs for ValidationIssue by @chrisgacsal in https://github.com/openmeterio/openmeter/pull/4107
* refactor: notification event handling by @chrisgacsal in https://github.com/openmeterio/openmeter/pull/4141
* feat: invoice line persisting by @turip in https://github.com/openmeterio/openmeter/pull/4143
* fix: disallow cross fiat credit purchases by @turip in https://github.com/openmeterio/openmeter/pull/4165
* fix: grants service should not bypass charges service for now by @turip in https://github.com/openmeterio/openmeter/pull/4166
* fix(api): add continuationToken for event query by @tothandras in https://github.com/openmeterio/openmeter/pull/4163
* fix: replace fmt.Sprintf in slog Logger.Debug with structured key-value args by @mailtoboggavarapu-coder in https://github.com/openmeterio/openmeter/pull/4187
* fix: settle promotional credits by @turip in https://github.com/openmeterio/openmeter/pull/4192
* fix(api): v3 meter query path by @tothandras in https://github.com/openmeterio/openmeter/pull/4205
* fix: collection period behavior should match API docs by @turip in https://github.com/openmeterio/openmeter/pull/4212
* fix: collect leftover invoices too by @turip in https://github.com/openmeterio/openmeter/pull/4216
* feat(usagebased-charge): ignore minimum commitment on partial runs by @turip in https://github.com/openmeterio/openmeter/pull/4219
* fix(ledger): repo use tx by @GAlexIHU in https://github.com/openmeterio/openmeter/pull/4238
* fix(api): parsing of custom string types by @GAlexIHU in https://github.com/openmeterio/openmeter/pull/4180
* fix(meteredentitlement): fix extra grant recurrences on in-period activity changes by @GAlexIHU in https://github.com/openmeterio/openmeter/pull/4252
* fix(balanceworker): skip events that dont match meters by @GAlexIHU in https://github.com/openmeterio/openmeter/pull/4279
* fix(entitlement): fix grant recurrence on period start by @GAlexIHU in https://github.com/openmeterio/openmeter/pull/4278
* fix(api): v3 resource mixin required created_at and updated_at by @tothandras in https://github.com/openmeterio/openmeter/pull/4295
* fix: totalAvailableGrantAmount by @GAlexIHU in https://github.com/openmeterio/openmeter/pull/4304
* fix(api): API multiple filters by @tothandras in https://github.com/openmeterio/openmeter/pull/4322
* fix: properly soft delete app customer and app stripe customer associations upon customer delete by @gergely-kurucz-konghq in https://github.com/openmeterio/openmeter/pull/4325
* fix: resolving feature by @chrisgacsal in https://github.com/openmeterio/openmeter/pull/4338
* fix: usage based ratecard validation by @chrisgacsal in https://github.com/openmeterio/openmeter/pull/4331
* fix: validating ratecard with feature by @chrisgacsal in https://github.com/openmeterio/openmeter/pull/4352
* fix(balanceworker): subject lookup by @tothandras in https://github.com/openmeterio/openmeter/pull/4356
* fix: properly soft delete app custom invoicing customer associations upon customer delete [OM-357] by @gergely-kurucz-konghq in https://github.com/openmeterio/openmeter/pull/4344
* fix: keep charge invoice updates charge-owned by @turip in https://github.com/openmeterio/openmeter/pull/4354
* fix: flaky test by @GAlexIHU in https://github.com/openmeterio/openmeter/pull/4361
* fix(filter): fix FilterULID select implementations by @tothandras in https://github.com/openmeterio/openmeter/pull/4368
* fix(customer): list customers for default billing profile when filtered by @tothandras in https://github.com/openmeterio/openmeter/pull/4369
* feat: fix prorating credit corrections by @turip in https://github.com/openmeterio/openmeter/pull/4363
* fix: credit-then-invoice discount sync by @turip in https://github.com/openmeterio/openmeter/pull/4376
### Breaking Changes ๐Ÿ› 
* chore: restrict period changes for subscription managed lines by @turip in https://github.com/openmeterio/openmeter/pull/3865
### Dependency Updates โฌ†๏ธ
* chore(deps): bump google.golang.org/grpc from 1.78.0 to 1.79.3 by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/3971
* chore(deps): bump github.com/invopop/gobl from 0.306.0 to 0.307.0 by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/3838
* chore(deps): bump github.com/ClickHouse/ch-go from 0.70.0 to 0.71.0 by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/3844
* chore(deps): bump github.com/go-git/go-git/v5 from 5.16.5 to 5.17.1 by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/4038
* chore(deps): bump github.com/go-jose/go-jose/v4 from 4.1.3 to 4.1.4 by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/4076
* chore(deps): bump aiohttp from 3.13.3 to 3.13.4 in /api/client/python by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/4056
* chore(deps): bump go.opentelemetry.io/proto/otlp from 1.9.0 to 1.10.0 in the otel group across 1 directory by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/4043
* chore(deps): bump k8s.io/klog/v2 from 2.130.1 to 2.140.0 in the k8s group across 1 directory by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/4033
* chore(deps): bump github.com/ClickHouse/clickhouse-go/v2 from 2.42.0 to 2.43.0 by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/3850
* chore(deps): bump github.com/golang-jwt/jwt/v5 from 5.3.0 to 5.3.1 by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/3845
* chore(deps): bump github.com/zeebo/xxh3 from 1.0.2 to 1.1.0 by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/3835
* chore(deps): bump github.com/oliveagle/jsonpath from 0.1.0 to 0.1.4 by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/3827
* chore(deps): bump github.com/IBM/sarama from 1.46.3 to 1.47.0 by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/4089
* chore(deps): bump github.com/brunoga/deep from 1.2.5 to 1.3.1 by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/4090
* chore(deps): bump github.com/go-co-op/gocron/v2 from 2.19.0 to 2.19.1 by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/3846
* chore(deps): bump github.com/svix/svix-webhooks from 1.84.1 to 1.89.0 by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/4091
* chore(deps): bump github.com/oapi-codegen/runtime from 1.2.0 to 1.3.1 in the oapi-codegen group across 1 directory by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/4087
* chore(deps): bump the samber group with 2 updates by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/4086
* chore(deps): bump the redis group with 2 updates by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/3834
* chore(deps): bump aiohttp from 3.13.3 to 3.13.4 in /api/client/python/examples by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/4057
* chore(deps): bump github.com/aws/aws-sdk-go-v2/service/s3 from 1.83.0 to 1.97.3 by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/4096
* chore(deps): bump google.golang.org/grpc from 1.79.3 to 1.80.0 in the googlecloud group by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/4098
* chore(deps): bump github.com/go-resty/resty/v2 from 2.17.1 to 2.17.2 by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/4102
* chore(deps): bump github.com/invopop/gobl from 0.307.0 to 0.309.0 by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/4101
* chore(deps): bump github.com/aws/aws-sdk-go-v2/service/kinesis from 1.35.3 to 1.43.5 by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/4093
* chore(deps): bump github.com/aws/aws-sdk-go-v2/service/lambda from 1.72.0 to 1.88.5 by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/4094
* chore(deps): bump github.com/alpacahq/alpacadecimal from 0.0.8 to 0.0.9 by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/4099
* chore(deps): bump github.com/getkin/kin-openapi from 0.133.0 to 0.134.0 by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/4088
* chore(deps): bump github.com/lmittmann/tint from 1.1.2 to 1.1.3 by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/4109
* chore(deps): bump go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp from 1.37.0 to 1.43.0 by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/4104
* chore(deps): bump github.com/XSAM/otelsql from 0.41.0 to 0.42.0 by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/4110
* chore(deps): bump github.com/jackc/pgx/v5 from 5.8.0 to 5.9.1 by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/4113
* chore(deps): bump github.com/go-chi/chi/v5 from 5.2.4 to 5.2.5 by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/4114
* chore(deps): bump github.com/go-openapi/inflect from 0.21.0 to 0.21.5 by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/4111
* chore(deps): bump github.com/huandu/go-sqlbuilder from 1.39.0 to 1.40.1 by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/4112
* chore(deps): bump the otel group with 7 updates by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/4120
* chore(deps): bump github.com/qmuntal/stateless from 1.7.2 to 1.8.0 by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/4122
* chore(deps): bump github.com/wI2L/jsondiff from 0.7.0 to 0.7.1 by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/4124
* chore(deps): bump github.com/go-co-op/gocron/v2 from 2.19.1 to 2.20.0 by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/4125
* chore(deps): bump the otel group with 3 updates by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/4137
* chore(deps): bump github.com/rickb777/period from 1.0.22 to 1.0.27 by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/4132
* chore(deps): bump github.com/svix/svix-webhooks from 1.89.0 to 1.90.0 by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/4126
* chore(deps): bump golang.org/x/text from 0.35.0 to 0.36.0 in the golang group across 1 directory by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/4151
* chore(deps): bump github.com/oapi-codegen/runtime from 1.3.1 to 1.4.0 in the oapi-codegen group across 1 directory by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/4152
* chore(deps): bump github.com/go-git/go-git/v5 from 5.17.1 to 5.18.0 by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/4171
* chore(deps): bump github.com/huandu/go-sqlbuilder from 1.40.1 to 1.40.2 by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/4140
* chore(deps): bump github.com/go-co-op/gocron/v2 from 2.20.0 to 2.21.0 by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/4195
* chore(deps): bump github.com/invopop/gobl from 0.309.0 to 0.400.1 by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/4208
* chore(deps): bump k8s.io/apimachinery from 0.35.3 to 0.35.4 in the k8s group by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/4207
* chore(deps): bump github.com/jackc/pgx/v5 from 5.9.1 to 5.9.2 by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/4210
* chore(deps): bump github.com/ClickHouse/clickhouse-go/v2 from 2.43.0 to 2.45.0 by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/4183
* chore(deps): bump github.com/confluentinc/confluent-kafka-go/v2 from 2.13.0 to 2.14.0 by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/4123
* chore(deps): bump entgo.io/ent from 0.14.5 to 0.14.6 by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/4121
* chore(deps): bump github.com/getkin/kin-openapi from 0.134.0 to 0.135.0 by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/4153
* chore(deps): bump github.com/confluentinc/confluent-kafka-go/v2 from 2.14.0 to 2.14.1 by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/4214
* chore(deps): bump the k8s group with 2 updates by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/4213
* chore(deps): bump github.com/invopop/gobl from 0.400.1 to 0.401.0 by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/4241
* chore(deps): bump the redis group with 2 updates by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/4289
* chore(deps): bump github.com/svix/svix-webhooks from 1.90.0 to 1.92.2 by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/4261
* chore(deps): bump github.com/IBM/sarama from 1.47.0 to 1.48.0 by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/4265
* chore(deps): bump github.com/go-co-op/gocron/v2 from 2.21.0 to 2.21.1 by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/4247
* chore(deps): bump github.com/getkin/kin-openapi from 0.135.0 to 0.137.0 by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/4290
* chore(deps): bump google.golang.org/grpc from 1.80.0 to 1.81.0 in the googlecloud group by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/4345
* chore(deps): bump github.com/ClickHouse/clickhouse-go/v2 from 2.45.0 to 2.46.0 by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/4347
* chore(deps): bump github.com/huandu/go-sqlbuilder from 1.40.2 to 1.41.0 by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/4346
* chore(deps): bump github.com/invopop/gobl from 0.401.0 to 0.402.0 by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/4316
* chore(deps): bump github.com/go-git/go-git/v5 from 5.18.0 to 5.19.0 by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/4341
* chore(deps): bump github.com/IBM/sarama from 1.48.0 to 1.48.1 by @dependabot[bot] in https://github.com/openmeterio/openmeter/pull/4380
### Other Changes
* feat: refactor getInvoiceByID by @turip in https://github.com/openmeterio/openmeter/pull/3863
* fix: subscription sync do not reuse old lines by @turip in https://github.com/openmeterio/openmeter/pull/3874
* refactor: invoice pending lines by @turip in https://github.com/openmeterio/openmeter/pull/3880
* chore: truncate now for created_at and updated_at by @turip in https://github.com/openmeterio/openmeter/pull/3895
* feat: charges v2 by @turip in https://github.com/openmeterio/openmeter/pull/3894
* feat: base support for billing credits by @turip in https://github.com/openmeterio/openmeter/pull/3901
* chore(api): update oapi-codegen to v2.6.0 by @tothandras in https://github.com/openmeterio/openmeter/pull/3906
* chore: address late comment by @turip in https://github.com/openmeterio/openmeter/pull/3913
* feat[charges]: flat fee charges happy path by @turip in https://github.com/openmeterio/openmeter/pull/3896
* chore(api): update typespec by @tothandras in https://github.com/openmeterio/openmeter/pull/3921
* refactor: totals mixins v2 by @turip in https://github.com/openmeterio/openmeter/pull/3940
* refactor: split charges by @turip in https://github.com/openmeterio/openmeter/pull/3943
* chore: remap log attributes  by @mark-vass-konghq in https://github.com/openmeterio/openmeter/pull/3957
* chore(api): update meter query spec by removing explicit special fielโ€ฆ by @tothandras in https://github.com/openmeterio/openmeter/pull/3964
* feat: add support for limiting queries by stored_at by @turip in https://github.com/openmeterio/openmeter/pull/3965
* feat: skaffold usagebased charge by @turip in https://github.com/openmeterio/openmeter/pull/3952
* refactor: reusable pricer by @turip in https://github.com/openmeterio/openmeter/pull/3969
* feat: credit purchase invoice by @turip in https://github.com/openmeterio/openmeter/pull/3961
* feat: improve substate storage for usagebased items by @turip in https://github.com/openmeterio/openmeter/pull/3979
* chore: fix method naming by @turip in https://github.com/openmeterio/openmeter/pull/3984
* chore: update package dependencies by @tothandras in https://github.com/openmeterio/openmeter/pull/3989
* chore: add github API skill for agents by @hekike in https://github.com/openmeterio/openmeter/pull/3990
* chore: separate go lint scripts by @GAlexIHU in https://github.com/openmeterio/openmeter/pull/3933
* feat: usage based charges lifecycle by @turip in https://github.com/openmeterio/openmeter/pull/3955
* refactor: subscription sync pt.1 by @turip in https://github.com/openmeterio/openmeter/pull/4012
* Feat/productcatalog v3 plan by @rolosp in https://github.com/openmeterio/openmeter/pull/4010
* feat(credit): integration tests by @GAlexIHU in https://github.com/openmeterio/openmeter/pull/4007
* chore: migrate to golang tracer instead of openmetrics in prometheus by @mark-vass-konghq in https://github.com/openmeterio/openmeter/pull/3959
* refactor: implement target state item by @turip in https://github.com/openmeterio/openmeter/pull/4021
* refactor: prepare for charges integration by @turip in https://github.com/openmeterio/openmeter/pull/4023
* chore: flatfee prorating is owned by flat fee service by @turip in https://github.com/openmeterio/openmeter/pull/4025
* feat(ledger): negative credit by @GAlexIHU in https://github.com/openmeterio/openmeter/pull/4036
* feat: flat fee delete patch support by @turip in https://github.com/openmeterio/openmeter/pull/4031
* feat: usage based patching by @turip in https://github.com/openmeterio/openmeter/pull/4053
* feat: add wire for charges by @turip in https://github.com/openmeterio/openmeter/pull/4058
* chore: normalize charge timestamps by @turip in https://github.com/openmeterio/openmeter/pull/4060
* fix: invoice pending lines via charges by @turip in https://github.com/openmeterio/openmeter/pull/4059
* feat: charges advancer by @turip in https://github.com/openmeterio/openmeter/pull/4065
* chore: support effective at on stdinvoice by @turip in https://github.com/openmeterio/openmeter/pull/4071
* chore: noop init by @GAlexIHU in https://github.com/openmeterio/openmeter/pull/4070
* feat: persist feature by @turip in https://github.com/openmeterio/openmeter/pull/4077
* chore: regenerate venv by @turip in https://github.com/openmeterio/openmeter/pull/4092
* feat: invocie line backend pt.1 by @turip in https://github.com/openmeterio/openmeter/pull/4100
* refactor: labels support by @chrisgacsal in https://github.com/openmeterio/openmeter/pull/4118
* fix: adjust flat-fee shape to match usage-based by @turip in https://github.com/openmeterio/openmeter/pull/4128
* fix: creditpurchase shape by @turip in https://github.com/openmeterio/openmeter/pull/4129
* chore: refactor state machines by @turip in https://github.com/openmeterio/openmeter/pull/4133
* chore: improve entitlement lookup performance by @turip in https://github.com/openmeterio/openmeter/pull/4149
* feat(ledger): transaction listing API by @GAlexIHU in https://github.com/openmeterio/openmeter/pull/4147
* fix: annotations usage by @turip in https://github.com/openmeterio/openmeter/pull/4150
* feat[charges]: common state machine operations by @turip in https://github.com/openmeterio/openmeter/pull/4145
* chore: update npm dependencies by @tothandras in https://github.com/openmeterio/openmeter/pull/4161
* fix(api): pass settlementmode to api by @GAlexIHU in https://github.com/openmeterio/openmeter/pull/4181
* fix(ledger): api balance by @GAlexIHU in https://github.com/openmeterio/openmeter/pull/4185
* chore: remove dagger by @tothandras in https://github.com/openmeterio/openmeter/pull/4173
* feat: make detailed lines reusable by @turip in https://github.com/openmeterio/openmeter/pull/4186
* feat(backfill): write backfill by @GAlexIHU in https://github.com/openmeterio/openmeter/pull/4193
* fix(ledger): use correct RouteFilter by @GAlexIHU in https://github.com/openmeterio/openmeter/pull/4197
* chore: fix-unique reference by @turip in https://github.com/openmeterio/openmeter/pull/4198
* feat: persist detailed lines by @turip in https://github.com/openmeterio/openmeter/pull/4202
* feat: add session level lockr by @chrisgacsal in https://github.com/openmeterio/openmeter/pull/4189
* feat(api): better transaction list API by @GAlexIHU in https://github.com/openmeterio/openmeter/pull/4209
* test(api): added v3 product catalog e2e tests by @rolosp in https://github.com/openmeterio/openmeter/pull/4201
* fix: use shared cursoring type by @GAlexIHU in https://github.com/openmeterio/openmeter/pull/4217
* chore: rework run snapshotting by @turip in https://github.com/openmeterio/openmeter/pull/4226
* feat: prior run values by @turip in https://github.com/openmeterio/openmeter/pull/4227
* refactor: reconcile events in parallel by @chrisgacsal in https://github.com/openmeterio/openmeter/pull/4178
* chore: update spec dependencies by @tothandras in https://github.com/openmeterio/openmeter/pull/4229
* feat(productcatalog): expose taxCodeId in taxConfig API by @borbelyr-kong in https://github.com/openmeterio/openmeter/pull/4224
* chore: detailed line conversion owned by rating by @turip in https://github.com/openmeterio/openmeter/pull/4254
* feat: detailed line persisted flag by @turip in https://github.com/openmeterio/openmeter/pull/4255
* feat(spec): V3 visibility and summary updates by @tothandras in https://github.com/openmeterio/openmeter/pull/4256
* refactor: list entitlements for ingested events by @chrisgacsal in https://github.com/openmeterio/openmeter/pull/4259
* refactor: locking for notification envent handler by @chrisgacsal in https://github.com/openmeterio/openmeter/pull/4269
* refactor(ledger): correct settlement accounting by @GAlexIHU in https://github.com/openmeterio/openmeter/pull/4236
* refactor(ledger): account pkg cleanup by @GAlexIHU in https://github.com/openmeterio/openmeter/pull/4286
* feat(api): add organization tax config by @borbelyr-kong in https://github.com/openmeterio/openmeter/pull/4280
* feat(api): add organization default tax codes schema and migration by @borbelyr-kong in https://github.com/openmeterio/openmeter/pull/4294
* test: add cross cutting smoke test for a product catalog flow by @rolosp in https://github.com/openmeterio/openmeter/pull/4296
* feat: persist invoice id for ubp runs by @turip in https://github.com/openmeterio/openmeter/pull/4306
* feat(billing): add delta usage rating engine by @turip in https://github.com/openmeterio/openmeter/pull/4298
* feat(billing): add mutable line deletion hook by @turip in https://github.com/openmeterio/openmeter/pull/4317
* chore: allow negative detailed lines by @turip in https://github.com/openmeterio/openmeter/pull/4314
* feat(taxcode): add organization default tax codes service and refactor to taxcode.Service by @borbelyr-kong in https://github.com/openmeterio/openmeter/pull/4308
* feat(taxcode): add organization default tax codes HTTP handlers by @borbelyr-kong in https://github.com/openmeterio/openmeter/pull/4320
* feat: oapi response validator by @rolosp in https://github.com/openmeterio/openmeter/pull/4283
* chore: add flat fee run db tables by @turip in https://github.com/openmeterio/openmeter/pull/4349
* feat(api): add governance query operation by @tothandras in https://github.com/openmeterio/openmeter/pull/4329
* chore(helm): update images by @tothandras in https://github.com/openmeterio/openmeter/pull/4324
* refactor: ledger collection by @GAlexIHU in https://github.com/openmeterio/openmeter/pull/4343
* fix: subscription sync zero prorating cases (6/35) by @turip in https://github.com/openmeterio/openmeter/pull/4364

## New Contributors
* @borbelyr-kong made their first contribution in https://github.com/openmeterio/openmeter/pull/3885
* @rolosp made their first contribution in https://github.com/openmeterio/openmeter/pull/3972
* @nicholas-sokolov made their first contribution in https://github.com/openmeterio/openmeter/pull/4050
* @mailtoboggavarapu-coder made their first contribution in https://github.com/openmeterio/openmeter/pull/4187
* @borosr made their first contribution in https://github.com/openmeterio/openmeter/pull/4164
* @vsengar-79 made their first contribution in https://github.com/openmeterio/openmeter/pull/4275

**Full Changelog**: https://github.com/openmeterio/openmeter/compare/v1.0.0-beta.227...v1.0.0-beta.228