From e2c24127584677f94647a48085d1fc5994a53876 Mon Sep 17 00:00:00 2001 From: sonpiaz Date: Sun, 18 Oct 2026 11:07:45 -0700 Subject: [PATCH 1/2] feat: two developer lines in the Oct 12-18 digest Stripe invoice.paid recording (CMS v3.16.139) and the empty Bearer 401 on /api/v1/track/refund (v3.16.140), both live Oct 18 PT. Co-Authored-By: Claude Opus 5.5 (1M context) --- content/changelog/improvements-2026-10-18.mdx | 2 ++ 1 file changed, 2 insertions(+) diff --git a/content/changelog/improvements-2026-10-18.mdx b/content/changelog/improvements-2026-10-18.mdx index 1a5935b9..c60a0032 100644 --- a/content/changelog/improvements-2026-10-18.mdx +++ b/content/changelog/improvements-2026-10-18.mdx @@ -46,3 +46,5 @@ description: Simpler username rules, website suggestions for your Business detai - `affitor onboard` leaves your Stripe webhook alone when Stripe is connected in Affitor, so sales are not counted twice. - `@affitor/sdk` 2.1.3 marks its React entry `"use client"`, so it imports cleanly in the Next.js App Router. - `affitor status` and `affitor test` run with an API key alone, with no project config. +- Stripe invoices now record their sale from `invoice.paid` as well as `invoice.payment_succeeded`, once per invoice. An invoice already refunded, even partly, when Affitor records it adds no sale. +- `POST /api/v1/track/refund` with an empty Bearer token returns 401 `Empty Bearer token`. From 0d18b8cba359a8e645732727149beb4477940d98 Mon Sep 17 00:00:00 2001 From: sonpiaz Date: Sun, 18 Oct 2026 11:11:00 -0700 Subject: [PATCH 2/2] feat: note Stripe invoices with split or shared payments in the Oct 12-18 digest Co-Authored-By: Claude Opus 5.5 (1M context) --- content/changelog/improvements-2026-10-18.mdx | 1 + 1 file changed, 1 insertion(+) diff --git a/content/changelog/improvements-2026-10-18.mdx b/content/changelog/improvements-2026-10-18.mdx index c60a0032..e6703b32 100644 --- a/content/changelog/improvements-2026-10-18.mdx +++ b/content/changelog/improvements-2026-10-18.mdx @@ -47,4 +47,5 @@ description: Simpler username rules, website suggestions for your Business detai - `@affitor/sdk` 2.1.3 marks its React entry `"use client"`, so it imports cleanly in the Next.js App Router. - `affitor status` and `affitor test` run with an API key alone, with no project config. - Stripe invoices now record their sale from `invoice.paid` as well as `invoice.payment_succeeded`, once per invoice. An invoice already refunded, even partly, when Affitor records it adds no sale. +- A Stripe invoice paid with several payments, or by a payment that also pays other invoices, does not record a sale on its own. - `POST /api/v1/track/refund` with an empty Bearer token returns 401 `Empty Bearer token`.