Penny Docs
Transactions

Create Transaction

POST
/v1/households/{household_id}/transactions

Creates a posted transaction on a non-deleted manual account in the household. The transaction uses the account's currency; positive amounts represent income and negative amounts represent expenses. Provider-linked accounts reject manual entries with account_not_manual.

Referenced categories, merchants, and tags must belong to the household. Household rules run before the created transaction is returned, preserving explicitly supplied category and merchant choices and adding applicable tags.

Authorization

PersonalApiToken
AuthorizationBearer <token>

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

household_id*Household Id

Request Body

application/json

account_id*Account Id
name*Name
Length1 <= length <= 255
amount*Amount
date*Date
Formatdate
household_finance_category_id?string|null
merchant_id?string|null
notes?string|null
tags?array<string>
Default[]

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/v1/households/string/transactions" \  -H "Content-Type: application/json" \  -d '{    "account_id": "Ac7kP2mN9qRs",    "name": "Blue Bottle Coffee",    "amount": "68.42",    "date": "2019-08-24"  }'
{  "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}