Releases: getlago/lago
Releases · getlago/lago
Release list
v1.27.1
API Changes
- chore(organization): Add organization_id to credits table by @vincent-pochet in getlago/lago-api#3584
- misc: Upgrade Rails version to 8.0.2 by @ancorcruz in getlago/lago-api#3358
- feat(audit_logs): Utils to push activity logs to kafka by @rsempe in getlago/lago-api#3581
- fix(multientities): fulfil billing entities net_payment_term by @annvelents in getlago/lago-api#3598
- Data API - Usages by @ivannovosad in getlago/lago-api#3524
- chore(deps): bump rack-session from 2.1.0 to 2.1.1 by @dependabot in getlago/lago-api#3607
- chore(deps): bump rack from 3.1.12 to 3.1.14 by @dependabot in getlago/lago-api#3606
- feat(EUTax): retry Vies check until no error is returned by @nudded in getlago/lago-api#3601
- fix: Output condition for populate organization_id jobs by @vincent-pochet in getlago/lago-api#3608
- feat(Idempotency): Add values to error message by @nudded in getlago/lago-api#3609
- fix: avoid failure with negative cache expiration by @vincent-pochet in getlago/lago-api#3611
- fix(usages): Add billable_metric_code to usages resolver by @ivannovosad in getlago/lago-api#3614
- Fix(multientities):do not set eu_tax_management if not provided by @annvelents in getlago/lago-api#3603
- chore(organization): Add organization_id to credit_notes table by @vincent-pochet in getlago/lago-api#3587
- chore(organization): Add organization_id to customer_metadata table by @vincent-pochet in getlago/lago-api#3591
- chore(organization): Add organization_id to applied_invoice_custom_sections table by @vincent-pochet in getlago/lago-api#3588
- chore(organization): Add organization_id to applied_usage_thresholds table by @vincent-pochet in getlago/lago-api#3589
- feat(invoices): Add skip_payment params for One Off Invoice by @jdenquin in getlago/lago-api#3586
- chore(organization): Add organization_id to billable_metric_filters table by @vincent-pochet in getlago/lago-api#3593
- chore(organization): Add organization_id to fees_taxes table by @vincent-pochet in getlago/lago-api#3594
- chore(organization): Add organization_id to invoices_payment_requests table by @vincent-pochet in getlago/lago-api#3596
- chore(organization): Add organization_id to invoice_metadata table by @vincent-pochet in getlago/lago-api#3597
- fix(wallets): add lock version to wallet transactions by @ancorcruz in getlago/lago-api#3618
- Feat(multientities): payment generation switch to entity by @annvelents in getlago/lago-api#3522
- fix: Fix organization_id migration job for fees_taxes table by @vincent-pochet in getlago/lago-api#3619
- fix(serializer): Dont serialize nil original_error by @julienbourdeau in getlago/lago-api#3617
- misc: Bump ruby to 3.4.3 by @vincent-pochet in getlago/lago-api#3595
- Feat(multientities): update invoice net term by @annvelents in getlago/lago-api#3533
- chore(organization): Add organization_id to billing_entities_taxes table by @vincent-pochet in getlago/lago-api#3620
- feat(gql): add next_subscription attributes by @julienbourdeau in getlago/lago-api#3627
- chore(organization): Add organization_id to credit_notes_taxes table by @vincent-pochet in getlago/lago-api#3621
- chore(organization): Add organization_id to customers_taxes table by @vincent-pochet in getlago/lago-api#3623
- chore(organization): Add organization_id to data_export_parts table by @vincent-pochet in getlago/lago-api#3624
- chore(organization): Add organization_id to dunning_campaign_thresholds table by @vincent-pochet in getlago/lago-api#3625
Front Changes
- misc: show subscription table on loading by @ansmonjol in getlago/lago-front#2170
- feat: Analytics - Invoices by @stephenlago99 in getlago/lago-front#2171
- misc: add default cursor prompt by @ansmonjol in getlago/lago-front#2173
- deps: fix some babel deps to fix CVE by @ansmonjol in getlago/lago-front#2178
- misc: allow to re-connect a Xero connection from settings by @ansmonjol in getlago/lago-front#2176
- bug: better invoice graph loading by @ansmonjol in getlago/lago-front#2175
- misc: check avalara presence in one-off invoice form by @ansmonjol in getlago/lago-front#2174
- chore(deps) Update dependency @types/lodash to v4.17.16 by @renovate in getlago/lago-front#2180
- chore(deps) Update dependency @types/prismjs to v1.26.5 by @renovate in getlago/lago-front#2181
- chore(deps) Update dependency @types/jest to v29.5.14 by @renovate in getlago/lago-front#2179
- chore(deps) Update dependency autoprefixer to v10.4.21 by @renovate in getlago/lago-front#2182
- chore(deps-major) Update dependency glob to v11 by @renovate in getlago/lago-front#2188
- chore(deps-minor) Update testing-library monorepo by @renovate in getlago/lago-front#2187
- chore(deps-minor) Update dependency @types/node to v22.15.17 by @renovate in getlago/lago-front#2185
- chore(deps) Update dependency formik to v2.4.6 by @renovate in getlago/lago-front#2183
- chore(deps) Update dependency prettier-plugin-tailwindcss to v0.6.11 by @renovate in getlago/lago-front#2184
- chore(deps-major) Update peter-evans/repository-dispatch action to v3 by @renovate in getlago/lago-front#2189
- chore(deps-minor) Update dependency typescript to v5.8.3 by @renovate in getlago/lago-front#2186
- misc: migrate some styled components to tailwind by @ansmonjol in getlago/lago-front#2190
- bug: use new attributes for subscription by @ansmonjol in getlago/lago-front#2191
What's Changed
- fix: ensure Redis healthcheck uses configured port by @andrebras in #524
- misc(version): bump to v1.27.1 by @jdenquin in #526
New Contributors
- @andrebras made their first contribution in #524
Full Changelog: v1.27.0...v1.27.1
v1.27.0
v1.26.1
API Changes
- Fix(invoices): Ensure invoices got organization sequential id by @ancorcruz in getlago/lago-api#3549
- chore(organization): Add organization_id to payments table by @vincent-pochet in getlago/lago-api#3544
- feat(error): Add original_error to FailedResult by @julienbourdeau in getlago/lago-api#3457
- fix(data-api): Fix prepaid credits data types by @ivannovosad in getlago/lago-api#3551
- chore(organization): Add organization_id to webhooks table by @vincent-pochet in getlago/lago-api#3552
- hotfix(webhooks): Avoid errors with webhooks delivery by @vincent-pochet in getlago/lago-api#3555
- misc: unify avalara account id type by @ansmonjol in getlago/lago-api#3545
- feat(alerting): Introduce SubscriptionActivity by @julienbourdeau in getlago/lago-api#3535
- chore(deps): bump net-imap from 0.5.6 to 0.5.7 by @dependabot in getlago/lago-api#3556
- fix: send correct contact error webhook for avalara by @lovrocolic in getlago/lago-api#3559
- feat(avalara-integration): change namespace in mutation for fetching provider taxes by @lovrocolic in getlago/lago-api#3504
- fix(docker): Add psql dependency by @jdenquin in getlago/lago-api#3561
Front Changes
- feat: display all subscriptions by @keellyp in getlago/lago-front#2142
- fix: clear filters nullish value by @keellyp in getlago/lago-front#2143
- fix: handle uppercased emails by @keellyp in getlago/lago-front#2140
- feat: connect user to Avalara tax provider by @ansmonjol in getlago/lago-front#2145
- PrepaidCreditsAnalytics - Remove front end feature flag by @stephenlago99 in getlago/lago-front#2146
- bug: make sure avalara data is populated in form if present by @ansmonjol in getlago/lago-front#2150
- bug: fix wrong redirections by @ansmonjol in getlago/lago-front#2147
- misc: make sure to build packages on install by @ansmonjol in getlago/lago-front#2148
- fix: add babel to jest by @keellyp in getlago/lago-front#2152
- misc: get new name for anrok tax QGL object by @ansmonjol in getlago/lago-front#2151
- fix: sanitize avatar letters by @keellyp in getlago/lago-front#2149
- fix: improve copy to clipboard function by @keellyp in getlago/lago-front#2144
- misc: fix LS old data shape wrong access by @ansmonjol in getlago/lago-front#2153
- fix: dates with timezones by @keellyp in getlago/lago-front#2154
- bug: prevent cache manipulation after deletion by @ansmonjol in getlago/lago-front#2155
What's Changed
Full Changelog: v1.26.0...v1.26.1
v1.26.0
Front changes
- fix: dates util function by @keellyp in getlago/lago-front#2119
- fix(InvoiceCustomSection): rename applicable into configurable by @keellyp in getlago/lago-front#2113
- feat: yarn -> pnpm by @stephenlago99 in getlago/lago-front#1976
- misc: delay the API wait until last moment in CI by @ansmonjol in getlago/lago-front#2120
- chore: migrate configs files into a specific package by @keellyp in getlago/lago-front#2121
- misc(Sentry): remove too noisy error catch by @ansmonjol in getlago/lago-front#2122
- bug: prevent displaying empty div in dom on error by @ansmonjol in getlago/lago-front#2124
- chore(deps) Update dependency vite to v6.2.6 [SECURITY] by @renovate in getlago/lago-front#2125
- misc: fix credit note calculation loading state by @ansmonjol in getlago/lago-front#2123
- chore: bump eslint by @keellyp in getlago/lago-front#2126
- fix(issue-840): fetch customerId by @keellyp in getlago/lago-front#2129
- feat: init design-system package by @keellyp in getlago/lago-front#2128
- feat(lago-design-system): components migration in packages by @keellyp in getlago/lago-front#2130
- feat: Analytics - Prepaid credits by @stephenlago99 in getlago/lago-front#2127
- fix(AnalyticsPrepaidCredits): improve loading state / remove double 0$ by @stephenlago99 in getlago/lago-front#2131
- bug: prevent wrong copy displayed for invoice sync by @ansmonjol in getlago/lago-front#2132
- fix(AnalyticsPrepaidCredits): do not show 0 tick for values that will get rounded to 0 by @stephenlago99 in getlago/lago-front#2133
- feat: connect Avalara to your organization by @ansmonjol in getlago/lago-front#2134
- fix: export provider from new design-system package by @keellyp in getlago/lago-front#2135
- bug: refetch current orga on switch by @ansmonjol in getlago/lago-front#2137
- fix: Analytics - Prepaid credits by @stephenlago99 in getlago/lago-front#2136
- fix: Analytics Prepaid Credits - fix 0 as strings by @stephenlago99 in getlago/lago-front#2138
- fix: alignment button on nav by @keellyp in getlago/lago-front#2139
- fix(PrepaidCreditsAnalytics): fix formatting ticks with big number short notation by @stephenlago99 in getlago/lago-front#2141
Full Changelog: getlago/lago-front@v1.25.0...v1.26.0
API changes
- fix(invoices): improve organization numbering performances by @jdenquin in getlago/lago-api#3436
- feat: Add section_type to InvoiceCustomSections to support different section types by @brunomiguelpinto in getlago/lago-api#3456
- feat(wallet-transactions): Add generate payment url endpoint by @floganz in getlago/lago-api#3459
- bug(PayInAdvance) - don't create invoice outside of transaction by @nudded in getlago/lago-api#3460
- feat: Add Stripe funding instructions as system-generated invoice custom sections by @brunomiguelpinto in getlago/lago-api#3458
- Feat(multientities): add billing_entity constraints on invoices by @annvelents in getlago/lago-api#3447
- Feat(multientities): customers billing entity constraints by @annvelents in getlago/lago-api#3448
- Feat(multientities): add setting that was added on organization by @annvelents in getlago/lago-api#3462
- Feat(multientities): Add billing_entity constraints for fees by @annvelents in getlago/lago-api#3449
- fix(seeders): set billing_entity_id by @julienbourdeau in getlago/lago-api#3465
- fix(analytics): Fix null customer name by @ivannovosad in getlago/lago-api#3464
- fix(payment-receipts): Implement missing payment_method by @ivannovosad in getlago/lago-api#3467
- fix(payment-receipts): Fix payment_method by @ivannovosad in getlago/lago-api#3468
- fix(processor): Avoid dead jobs with subscription consumer by @vincent-pochet in getlago/lago-api#3469
- misc: Removes some references to OpenStruct by @vincent-pochet in getlago/lago-api#3470
- feat(fee): reset timestamps when updating fee.payement_status by @julienbourdeau in getlago/lago-api#3471
- Chore(fees): add null_false to organization_id at fees table by @annvelents in getlago/lago-api#3466
- misc(plans): Extract plan GraphQL arguments in types by @vincent-pochet in getlago/lago-api#3473
- fix(deps): Require ostruct when initializing by @julienbourdeau in getlago/lago-api#3476
- bug: Add zeitwerk check to the linters by @nudded in getlago/lago-api#3477
- feat(avalara-integration): add support for company code by @lovrocolic in getlago/lago-api#3463
- feat(Fee): improve scopes on Fee by @nudded in getlago/lago-api#3481
- chore: Drop unused indexes on events by @nudded in getlago/lago-api#3479
- Feat(multientities): add missing fields to serializer by @annvelents in getlago/lago-api#3474
- misc(job): Add a new ClockJob base job class by @vincent-pochet in getlago/lago-api#3482
- feat(avalara-integration): add support for avalara integration customer by @lovrocolic in getlago/lago-api#3461
- Feat(multientities): Services to apply and remove taxes on billing entity by @annvelents in getlago/lago-api#3475
- feat(multientities): Assign billing entity sequential id to invoices by @ancorcruz in getlago/lago-api#3394
- Feat(multientities): update old taxes services by @annvelents in getlago/lago-api#3478
- fix(migration): Apply migration to create unique index on billing_entity_sequential_id after fixing its content. by @ancorcruz in getlago/lago-api#3485
- fix(migration): handle invoices billing_entity_sequential_id index by @ancorcruz in getlago/lago-api#3487
- chore(spec): Send
customer.vies_checkwebhook if error by @julienbourdeau in getlago/lago-api#3472 - Fix(multientities): one more seed org creation with billing_entity by @annvelents in getlago/lago-api#3484
- misc(db): Change indexes on cached aggregations table by @vincent-pochet in getlago/lago-api#3488
- feat(exports): Create Export views by @jdenquin in getlago/lago-api#3491
- fix(exports): Force type for exports by @vincent-pochet in getlago/lago-api#3493
- chore(workers): Add dedicated payments worker by @jdenquin in getlago/lago-api#3496
- feat: Enqueue EU tax update job for organizations by @brunomiguelpinto in getlago/lago-api#3498
- feat(multientities): Add taxes (applied) to billing entity serializer by @ancorcruz in getlago/lago-api#3495
- feat(jobs): Make
Payments::UpdatePaymentMethodDataJobunique by @julienbourdeau in getlago/lago-api#3490 - feat(multientities): Migrate organization applied taxes. by @ancorcruz in getlago/lago-api#3489
- Fix: save provider_payment_id on payment even if it failed by @annvelents in getlago/lago-api#3501
- feat(dx): improve seeders and truncate db by @julienbourdeau in getlago/lago-api#3507
- chore(spec): maintain_test_schema! before test by @julienbourdeau in getlago/lago-api#3497
- misc(usage): Remove OpenStruct by @vincent-pochet in getlago/lago-api#3509
- feat: add usage_already_billed_cents by @brunomiguelpinto in getlago/lago-api#3508
- chore(deps): bump nokogiri from 1.18.4 to 1.18.8 by @dependabot in getlago/lago-api#3514
- Feat/multientities 4 graphql taxes by @annvelents in getlago/lago-api#3420
- feat(multientities) BillingEntity as source of truth for Invoices by @ancorcruz in getlago/lago-api#3506
- misc(filter): Remove OpenStruct for Query::Filters definition by @vincent-pochet in getlago/lago-api#3499
- feat(multientities): Handle eu tax management at billing entity level by @ancorcruz in getlago/lago-api#3500
- Fix(stripe-webhooks): do not process payment on stripe webhook that belongs to another organization by @annvelents in getlago/lago-api#3511
- Prepaid credits GQL by @ivannovosad in getlago/lago-api#3503
- feat: Add create_org helper to Rails console by @brunomiguelpinto in getlago/lago-api#3521
- feat(avalara-integration): add logic for fetching company id by @lovrocolic in getlago/lago-api#3492
- feat(multi entities): Billing entities as source of truth for invoices by @ancorcruz in getlago/lago-api#3515
- Feat(multientities): add api endpoint and service to manage taxes all together by @annvelents in getlago/lago-api#3483
- Feat(multientities): ...
v1.25.0
What's Changed
- misc(processor): Flag errors fore retry and capture and avoid commit by @vincent-pochet in #502
- feat(processor): Add redis to flag subscription for refresh by @vincent-pochet in #500
- fix(processor): Fix redis configuration for valkey by @vincent-pochet in #505
- Chore: bump Lago version to 1.25.0 by @annvelents in #509
Full Changelog: v1.24.1...v1.25.0
Front changes
- misc: make sure we notify change on query invocation by @ansmonjol in getlago/lago-front#2098
- misc(mrr): display printable data on loading and empty results by @ansmonjol in getlago/lago-front#2099
- feat(payment_providers): Add MoneyHash by @ansmonjol in getlago/lago-front#2097
- misc(RevenueStreams): improve XAxis tick display logic by @ansmonjol in getlago/lago-front#2101
- feat: add refresh button on usage drawer by @keellyp in getlago/lago-front#2102
- misc: release analytics and improve navigation by @ansmonjol in getlago/lago-front#2103
- bug(new-analytics): make sure dates are correctly handled by @ansmonjol in getlago/lago-front#2104
- bug: no text should be wrapped in table rows by @ansmonjol in getlago/lago-front#2106
- misc: export dialog to use tailwind by @ansmonjol in getlago/lago-front#2108
- refactor: details page migration by @keellyp in getlago/lago-front#2107
- misc(CreditNoteTable): remove warnings and styled components by @ansmonjol in getlago/lago-front#2105
- misc: fix badge alignment by @ansmonjol in getlago/lago-front#2109
- misc: improve our Sentry setup by @ansmonjol in getlago/lago-front#2112
- fix: wrap table with provider by @keellyp in getlago/lago-front#2114
- refactor: developers pages by @keellyp in getlago/lago-front#2111
- chore(deps) Update dependency vite to v6.2.5 [SECURITY] by @renovate in getlago/lago-front#2100
- chore(Sentry): enable replay sessions for errors by @ansmonjol in getlago/lago-front#2116
- refactor: update dates util function by @keellyp in getlago/lago-front#2115
- chore(Sentry): record replay for 30% of errors by @ansmonjol in getlago/lago-front#2117
- misc: fix wrong attr access raising error on Sentry by @ansmonjol in getlago/lago-front#2118
- feat: Download payment receipts by @stephenlago99 in getlago/lago-front#2062
Full Changelog: getlago/lago-front@v1.24.1...v1.25.0
API changes
- feat(taxes): Add jobs to update EU Taxes by @julienbourdeau in getlago/lago-api#3390
- fix(coupon): Allow updating description when already applied by @vincent-pochet in getlago/lago-api#3412
- misc: Remove count attributes from BillableMetric graphQL type object by @ancorcruz in getlago/lago-api#3403
- Feat(multientities): add API endpoints for billing_entities by @annvelents in getlago/lago-api#3408
- Feat(multientities): serialize billing_entity_code in API by @annvelents in getlago/lago-api#3411
- fix(regroup_fees): Compute taxable_base_amount_cents on applied taxes by @rsempe in getlago/lago-api#3415
- fix: Use BigDecimal instead of Float on amount details by @rsempe in getlago/lago-api#3416
- fix(redis): increase timeouts and retry counts, and reconnect counts, add retry_jitter to avoid lock contention by @roeeklinger in getlago/lago-api#3413
- fix(services): return valid Result in AutoGenerateService by @julienbourdeau in getlago/lago-api#3414
- feat(payment_providers): Add MoneyHash [Allow edits by maintainer] by @shahwan42 in getlago/lago-api#3418
- ftr(avalara-integration): add avalara model by @lovrocolic in getlago/lago-api#3419
- Fix(multientities): create customer with billing_entity when creating a subscription by @annvelents in getlago/lago-api#3421
- Fix Invoices::PrepaidCreditJob queueing to ensure uniqueness by @ancorcruz in getlago/lago-api#3422
- Feat(multientities): step-3 billing entity graphql endpoints by @annvelents in getlago/lago-api#3382
- Feat(multientities): assign billing_entity_id when creating fees by @annvelents in getlago/lago-api#3375
- fix(bug): Stripe payment intent creation payload by @ancorcruz in getlago/lago-api#3426
- fix(sentry): stackprof should be loaded before sentry by @jdenquin in getlago/lago-api#3423
- feat(avalara-integration): add base avalara graphql connection setup by @lovrocolic in getlago/lago-api#3424
- feat(payment-receipts): Use services by @ivannovosad in getlago/lago-api#3294
- Add env var to disable lifetime-usage refresh by @nudded in getlago/lago-api#3433
- misc: Remove schema.rb by @ivannovosad in getlago/lago-api#3438
- Feat(multientities): Add support of billing_entity filter in invoices query by @annvelents in getlago/lago-api#3427
- fix(payments): Fix payment of a one time payment request by @ivannovosad in getlago/lago-api#3441
- Feat(multientities): add billing_entity to invoices#preview by @annvelents in getlago/lago-api#3417
- Fix(multientities): add billing_entity_id to cache key for analytics by @annvelents in getlago/lago-api#3425
- feat(wallet-transaction): Populate invoice_id by @floganz in getlago/lago-api#3435
- fix(payment): Fix PaymentIntentSucceededService by @ivannovosad in getlago/lago-api#3442
- fix(fee): Add repeatable read isolation for in advance fees creation by @vincent-pochet in getlago/lago-api#3444
- feat(avalara-integration): add support for updating avalara connection by @lovrocolic in getlago/lago-api#3445
- Feat(multientities): Add support of billing_entity filter in customers query by @annvelents in getlago/lago-api#3428
- fix: fix credit note applied taxes by @lovrocolic in getlago/lago-api#3446
- Feat(multientities): Add support of billing_entity filter in credit_notes query by @annvelents in getlago/lago-api#3429
- Feat(multientities): graphql create and update user with billing entity by @annvelents in getlago/lago-api#3437
- Chore(fees): add migration to populate fees with organization_id by @annvelents in getlago/lago-api#3432
- feat (avalara-integration): add GQL support for creating avalara connection by @lovrocolic in getlago/lago-api#3443
- feat(processor): Add flag subscription refresh logic by @vincent-pochet in getlago/lago-api#3393
- feat(avalara-integration): add support for avalara mapping by @lovrocolic in getlago/lago-api#3450
- Feat(multientities): migration to populate billing_entity_id on fees by @annvelents in getlago/lago-api#3431
- Feat(multientities): update discarded customers to be assigned to a billing entity by @annvelents in getlago/lago-api#3434
- fix(post-process): Enable TLS for valkey by @vincent-pochet in getlago/lago-api#3451
- Feat(multientities): Small fixes at the end of step 3 implementation by @annvelents in getlago/lago-api#3452
- fix(post-process): Fix redis connection by @vincent-pochet in getlago/lago-api#3453
- fix(cashfree): wrong module name by @julienbourdeau in getlago/lago-api#3454
- misc(processor): Change config for refresh by @vincent-pochet in getlago/lago-api#3455
New Contributors
- @shahwan42 made their first contribution in getlago/lago-api#3418
Full Changelog: getlago/lago-api@v1.24.1...v1.25.0
v1.24.1
v1.24.0
What's Changed
- chore(Release): Bump version to 1.23.0 by @ancorcruz in #480
- feat(events): Add events post-processor by @vincent-pochet in #474
- chore(deps): bump golang.org/x/net from 0.34.0 to 0.36.0 in /events_processor by @dependabot in #481
- fix: Typo in events-processor path by @vincent-pochet in #482
- misc(kafka) Add more env variable for kafka setup by @vincent-pochet in #483
- misc: Capture startup errors and replace os.Exit with panic by @vincent-pochet in #484
- fix(sentry): Env variable by @vincent-pochet in #485
- fix(submodules): version should reflect tag by @jdenquin in #486
- misc: Update lago expression by @vincent-pochet in #487
- misc: Add failed_at timestamp to dead letter events by @vincent-pochet in #488
- feat(data): Add data env variables by @rsempe in #478
- chore(deploy): Add new docker compose configuration by @jdenquin in #479
- feat(pdf): Add disable pdf generation env variables by @ivannovosad in #490
- misc: Use connection pools by @vincent-pochet in #492
- misc: Improve events-processor by @vincent-pochet in #493
- misc: Align go module name with folder name by @vincent-pochet in #494
- misc(processor): Makes db max connection configurable by @vincent-pochet in #495
- feat(event): handle in advance using source metadata payload by @vincent-pochet in #496
- misc(processor): Avoid capturing not found errors by @vincent-pochet in #497
- chore(deploy): Add docker compose with traefik configuration by @jdenquin in #491
- misc(processor): Enrich sentry error with event by @vincent-pochet in #498
- chore(Release) - Bump version to v1.24.0 by @nudded in #501
New Contributors
- @ancorcruz made their first contribution in #480
- @dependabot made their first contribution in #481
Full Changelog: v1.23.0...v1.24.0
v1.23.0
Front-end changes
- misc: extract revenue sreams methods for testing by @ansmonjol in getlago/lago-front#2054
- fix: table alignement by @keellyp in getlago/lago-front#2055
- misc: revenue streams UX improvements by @ansmonjol in getlago/lago-front#2056
- fix(text): updating stripe connection button by @julienbourdeau in getlago/lago-front#2057
- feat: revamp create wallet and create topup layout by @keellyp in getlago/lago-front#2058
- feat: add new avatar badge component by @keellyp in getlago/lago-front#2059
- misc: adjust disputed modal description by @ansmonjol in getlago/lago-front#2060
- chore(deps-minor) Update dependency prismjs to v1.30.0 [SECURITY] by @renovate in getlago/lago-front#2063
- fix(paymentList): merge cache issue by @keellyp in getlago/lago-front#2064
New Contributors
- @julienbourdeau made their first contribution in getlago/lago-front#2057
Full Changelog: getlago/lago-front@v1.22.1...v1.23.0
Back-end changes
- feat(stripe): Pre-authorize payment before creating subscription by @julienbourdeau in getlago/lago-api#3262
- chore(logs): Improve logging to json by @jdenquin in getlago/lago-api#3272
- feat(data): Add mrrs plans resolver by @rsempe in getlago/lago-api#3293
- fix(logs): Parse AJ logs in json by @jdenquin in getlago/lago-api#3301
- feat(preauth): Prepare Stripe Authorization for recent versions by @julienbourdeau in getlago/lago-api#3303
- feat(netsuite): enforce customer external id to be NetSuite EntityId by @sarkissianraffi in getlago/lago-api#3286
- chore(logs): Add level to json by @jdenquin in getlago/lago-api#3304
- fix: make json parsing more resilient by @lovrocolic in getlago/lago-api#3298
- feat(payment-receipts): Add pdf templates by @ivannovosad in getlago/lago-api#3248
- fix(invoice-preview): Add charge duration to boundaries during preview generation by @floganz in getlago/lago-api#3305
- feat(payment-receipts): Add services to create payment receipt and generate pdf by @ivannovosad in getlago/lago-api#3255
- feat(data): Add usages invoiced resolver by @rsempe in getlago/lago-api#3306
- feat(payment-receipts): Add mailer for payment receipts by @ivannovosad in getlago/lago-api#3264
- feat(payment-receipts): Add GraphQL mutation and type by @ivannovosad in getlago/lago-api#3289
- Misc: migrate invoice_errors to error_details by @annvelents in getlago/lago-api#3211
- chore(config): Improve the RSA Keys configuration by @jdenquin in getlago/lago-api#3309
- misc(wallet): Reduce number of queries to flag refresh by @vincent-pochet in getlago/lago-api#3311
- fix(dunning): adapt refund logic with dunning by @lovrocolic in getlago/lago-api#3308
- chore(deps): bump rack from 2.2.11 to 2.2.13 by @dependabot in getlago/lago-api#3314
- Feat(multi-entities): add services to update billing_entity by @annvelents in getlago/lago-api#3251
- chore(validation): Refactor Expiration Date Validation to Use Centralized Validator by @brunomiguelpinto in getlago/lago-api#3312
- Fix: overdue invoices should not include invoices not ready to be paid by @annvelents in getlago/lago-api#3315
Full Changelog: getlago/lago-api@v1.22.1...v1.23.0
What's Changed
New Contributors
Full Changelog: v1.22.1...v1.23.0
v1.22.1
v1.22.0
Front-end changes
- misc: HorizontalDataTable can interact with given data index state by @ansmonjol in getlago/lago-front#2025
- refactor: migrate integrations pages by @keellyp in getlago/lago-front#2026
- fix: handle not found error for lifetime usage by @keellyp in getlago/lago-front#2027
- feat(lago-668) - Manual payment by @keellyp in getlago/lago-front#2006
- fix: add location when search params changes to history by @keellyp in getlago/lago-front#2029
- fix: add empty state for partner filter by @keellyp in getlago/lago-front#2028
- chore(deps-major) Update dependency @sentry/react to v9 by @renovate in getlago/lago-front#2030
- chore(deps-minor) Update dependency vite to v6.1.0 by @renovate in getlago/lago-front#2031
- fix: convert date to ISO format by default by @keellyp in getlago/lago-front#2032
- refactor: replace react-window usage for tanstack/virtual by @keellyp in getlago/lago-front#2034
- misc: adjust HorizontalDataTable behaviors by @ansmonjol in getlago/lago-front#2036
- misc: add new MultipleLineChart component by @ansmonjol in getlago/lago-front#2035
- feat: add stripe crypto payment method by @keellyp in getlago/lago-front#2033
- fix: compare numbers with same precision by @keellyp in getlago/lago-front#2038
- misc: improve new analytics page skeleton by @ansmonjol in getlago/lago-front#2039
- secu: fix CVE #93 by @ansmonjol in getlago/lago-front#2040
- fix: remove usage of Date api in favour of DateTime by @keellyp in getlago/lago-front#2041
- misc: few improvement for new analytics by @ansmonjol in getlago/lago-front#2042
- feat: add support for stripe bank transfers by @keellyp in getlago/lago-front#2037
Full Changelog: getlago/lago-front@v1.21.0...v1.22.0
API changes
- feat(data): Compute daily usages for positive fees only by @rsempe in getlago/lago-api#3172
- feat(wallet): New
wallet.(created|updated|terminated)webhooks by @julienbourdeau in getlago/lago-api#3133 - feat(DataExport): move processing to default queue by @nudded in getlago/lago-api#3175
- fix(fee-estimation): fix rounding when small amounts provided by @floganz in getlago/lago-api#3174
- misc: Add kafka event consumer by @vincent-pochet in getlago/lago-api#3176
- chore(rubocop): Disable or fix last errors by @julienbourdeau in getlago/lago-api#3179
- chore(style): Fix all string litteral quotes (Style/StringLiterals) by @julienbourdeau in getlago/lago-api#3177
- chore(deps): bump rack from 2.2.10 to 2.2.11 by @dependabot in getlago/lago-api#3180
- chore(rubocop): Enable Style/StringLiterals by @julienbourdeau in getlago/lago-api#3181
- fix: Avoid startup issue with missing LAGO_KARAFKA_WEB_SECRET by @vincent-pochet in getlago/lago-api#3183
- fix(rate-limit): Fix rate limit errors by @ivannovosad in getlago/lago-api#3184
- fix(invoice-webhooks): Fix progressive billing invoice not having webhook on payment retry by @floganz in getlago/lago-api#3182
- fix(karafka): Fix env config by @vincent-pochet in getlago/lago-api#3186
- fix(invoices): Fix progressive billing by @ivannovosad in getlago/lago-api#3188
- feat(webhooks): Add subscription updated webhook by @ivannovosad in getlago/lago-api#3169
- feat(data): Remove in_advance_fee_amount_cents from revenue streams by @rsempe in getlago/lago-api#3187
- feat(regroup_fee): Sum fees to get invoice totals instead of recomputing taxes by @julienbourdeau in getlago/lago-api#3153
- misc: Extract DailyUsages::FillHistoryJob to a new long_running queue by @rsempe in getlago/lago-api#3192
- misc: Change queue from low_priority to default when creating a payment by @rsempe in getlago/lago-api#3193
- fix(stripe): Avoid raising not_found for deleted stripe customers by @vincent-pochet in getlago/lago-api#3194
- fix(add_on): Validate presence of code by @vincent-pochet in getlago/lago-api#3195
- fix: Don't raise error when invoice's status is invalid by @rsempe in getlago/lago-api#3197
- fix(payment): Handle deleted customers by @vincent-pochet in getlago/lago-api#3196
- misc(charge): Index pay_in_advance charges to speed-up post processing by @vincent-pochet in getlago/lago-api#3189
- fix(integration): Avoid raising RecordNotUnique on race condition by @vincent-pochet in getlago/lago-api#3199
- feat(data): Do not create daily usage when no usage by @rsempe in getlago/lago-api#3198
- fix(webhook): Handle errors with payment and refunds by @vincent-pochet in getlago/lago-api#3200
- misc(mailer): Improve attachements names by @vincent-pochet in getlago/lago-api#3201
- fix(data): Convert revenue stream amount currency to non nullable by @rsempe in getlago/lago-api#3202
- misc(stripe): Improve error code handling by @vincent-pochet in getlago/lago-api#3203
- fix(customer): Add validation om customer type by @vincent-pochet in getlago/lago-api#3204
- fix(integration): Do not raise when invalid login attempt on netsuite by @rsempe in getlago/lago-api#3205
- Feat(manual payments): Support for Partial/Manual Payments by @brunomiguelpinto in getlago/lago-api#3125
- misc(integration): Add retry for invoice creation on Net::ReadTimeout by @vincent-pochet in getlago/lago-api#3207
- fix(spec): tentative fix for flacky test by @julienbourdeau in getlago/lago-api#3213
- feat(multi-entities): Add billing entity model by @ancorcruz in getlago/lago-api#3217
- chore(deps): bump nokogiri from 1.16.8 to 1.18.3 by @dependabot in getlago/lago-api#3216
- feat(stripe): Add Stripe
cryptopayment method by @julienbourdeau in getlago/lago-api#3214 - feat(mailers): Add from email premium integration by @jdenquin in getlago/lago-api#3218
- feat(dev): Add console helpers for local development by @julienbourdeau in getlago/lago-api#3210
- chore(deps): Update rubocop and standard by @julienbourdeau in getlago/lago-api#3221
- misc(incoming_webhook): Refact handling for Adyen and Cashfree by @vincent-pochet in getlago/lago-api#3212
- fix: Add unique index on payment provider id by @rsempe in getlago/lago-api#3223
- fix(currency): Use some ISO codes instead of symbols by @vincent-pochet in getlago/lago-api#3225
- fix: Delete duplicated failed payments by @rsempe in getlago/lago-api#3226
- fix(manual_payments): Fix Incorrect total_paid_amount_cents for Invoices Without Payments by @brunomiguelpinto in getlago/lago-api#3219
- feat(gql): Introduce ObfuscatedStringType by @julienbourdeau in getlago/lago-api#3209
- chore(spec): Merging rails_helper into spec_helper by @julienbourdeau in getlago/lago-api#3208
- feat(invoice-preview): generating invoice review for existing subscriptions by @lovrocolic in getlago/lago-api#3231
- fix(stripe): Avoid raising for concurent status update by @vincent-pochet in getlago/lago-api#3232
- fix(netsuite): Prevent trying to create customer with max netsuite state reached by @rsempe in getlago/lago-api#3233
- fix(integration): Fix error handling for Bad Gateway errors received as HTTP 200 by @vincent-pochet in getlago/lago-api#3234
- fix: Netsuite sync with customer nil state by @rsempe in getlago/lago-api#3235
- feat(stripe): Stop listening to
charge.succeededwebhook by @julienbourdeau in getlago/lago-api#3228 - feat(Uniqueness) - Mark BillNonInvoiceableFeesJob as unique by @nudded in getlago/lago-api#3239
- feat(multi-entities): Add billing entities applied taxes relationship by @ancorcruz in getlago/lago-api#3227
- Feat(multi-entities): add references to and from billing_entity by @annvelents in getlago/lago-api#3224
- misc: Update rails to v7.2 by @ancorcruz in getlago/lago-api#2894
- Revert "misc: Update rails to v7.2" by @rsempe in getlago/lago-api#3243
- fix(netsuite): Use max length when creating netsuite customer by @rsempe in getlago/lago-api#3245
- misc(payment): Factorise logic for payment_url generation by @vincent-pochet in getlago/lago-api#3238
- Feat stripe bank transfers by @brunomiguelpinto in getlago/lago-api#3236
Full Changelog: getlago/lago-api@v1.21.0...v1.22.0
What's Changed
- feat(dock...