Update Transaction
Replaces a transaction's editable details, including its display name, date, notes, category, merchant, tags, and hidden state. Supply every required field, including nulls for nullable fields; tags replaces the existing tag set. The amount and account are not editable through this endpoint.
Changes to the date, merchant, and category are protected from later automatic overrides. When rule-matching inputs change, household rules run again and may add tags or apply other unlocked actions. Returns the resulting transaction.
Authorization
PersonalApiToken Use your personal API token (penny_pat_…) as the bearer credential. Enter the token only; the client adds the Bearer prefix. Read-only tokens permit read requests. Read/write tokens remain limited by your current household membership and role. See https://penny.finance/docs/api#authentication for setup.
In: header
Path Parameters
Request Body
application/json
Replaces editable details. Omitted nullable fields are cleared; date, tags and is_hidden are required.
dateRequired on PUT; send the desired visibility explicitly.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X PUT "https://example.com/v1/households/string/transactions/string" \ -H "Content-Type: application/json" \ -d '{ "date": "2019-08-24", "tags": [ "Tg8qN1cK5rWd" ], "is_hidden": false }'{ "id": "Tx3fJ9mS6vBa", "original_name": "BLUE BOTTLE COFFEE #047", "user_name": "Morning coffee", "amount": { "amount": "68.42", "currency": "USD" }, "native_amount": { "amount": "68.42", "currency": "USD" }, "lat": 37.7764, "lon": -122.4231, "pending": false, "penny_taxonomy": "FOOD_AND_DRINK_COFFEE", "account": { "id": "Ac7kP2mN9qRs", "mask": "4821", "name": "Everyday Checking", "type": "depository", "current_balance": { "amount": "68.42", "currency": "USD" }, "currency": "USD", "household_id": "Hh4vK8pQ2sLm", "user_name": "Daily spending" }, "household_finance_category": { "id": "Ct5nR8wY1jFu", "name": "Coffee & Dining", "emoji": "☕️", "category_type": "income", "group_id": "Cg2mV7pL4zXe" }, "merchant": { "id": "Mr9dL3xT6bQa", "name": "Blue Bottle Coffee", "website": "https://www.bluebottlecoffee.com/", "image_url": "https://cdn.penny.finance/merchants/blue-bottle-coffee.png", "default_image_url": "https://cdn.penny.finance/merchants/default-coffee.png", "transaction_count": 18 }, "image_url": "https://cdn.penny.finance/merchants/blue-bottle-coffee.png", "image_kind": "merchant", "tags": [ { "id": "Tg8qN1cK5rWd", "name": "Work meals", "color": "#6D5BD0" } ], "is_deleted": false, "is_hidden": false, "pending_transaction_id": "Tx3fJ9mS6vBa", "date": "2019-08-24", "need_review": false, "possible_duplicate_ids": [ "Tx3fJ9mS6vBa" ], "notes": "Coffee with Sam before work", "created_at": "2019-08-24T14:15:22Z", "updated_at": "2019-08-24T14:15:22Z", "name": "Morning coffee", "split_from_transaction_id": "Tx3fJ9mS6vBa", "split_child_ids": [ "Tx3fJ9mS6vBa" ], "is_recurring": false}Delete Transaction DELETE
Soft-deletes a transaction so it no longer appears in normal lists or spending reports. Its data is retained and can be recovered through the restore…
Restore Transaction POST
Clears a transaction's deletion flag, making it eligible for normal views and spending reports again. Its hidden state is preserved, so a hidden transaction…
