Overview
The Piggy Banks API allows you to create and manage savings goals. Piggy banks help you save for specific targets by setting aside money from your accounts and tracking your progress.List All Piggy Banks
GET /v1/piggy-banks
Query Parameters
Page number for pagination
Response Fields
Piggy bank ID
ISO 8601 timestamp of creation
ISO 8601 timestamp of last update
Piggy bank name
Percentage of target achieved (0-100+)
Start date (ISO 8601)
Target completion date (ISO 8601)
Display order
Always true for piggy banks
Piggy bank notes
Object group ID if in a group
Order within object group
Object group title
Array of associated accounts with their current amounts
Always true for piggy banks
Currency ID
Currency code
Currency name
Currency symbol
Decimal places for currency
Target savings amount
Target amount in primary currency
Current saved amount
Current amount in primary currency
Amount remaining to reach target
Remaining amount in primary currency
Recommended monthly savings to reach target
Monthly savings in primary currency
Create Piggy Bank
POST /v1/piggy-banks
Request Body
Piggy bank name (1-255 characters, must be unique)
Array of account objects (minimum 1 account)
Account ID (must be asset or liability account belonging to user)
Current amount saved in this account (zero or positive number)
Target savings amount (must be ≥ sum of current amounts)
Start date (YYYY-MM-DD, after 1970-01-01, before 2038-01-17)
Target completion date (must be after start_date)
Currency ID (required without transaction_currency_code)
Currency code (required without transaction_currency_id)
Display order
Piggy bank notes (max 65,000 characters)
Object group ID to associate with
Object group title (1-255 characters)
Account Currency Validation:The currency of the piggy bank must match the currency of the associated accounts, unless the account has multi-currency support enabled.
Get Piggy Bank by ID
GET /v1/piggy-banks/{id}
Returns the same response fields as the List endpoint.
Update Piggy Bank
PUT /v1/piggy-banks/{id}
Accepts the same parameters as Create Piggy Bank. All fields are optional.
Delete Piggy Bank
DELETE /v1/piggy-banks/{id}
Deletes the piggy bank. The actual money in the accounts remains unchanged.
Related Endpoints
Get Piggy Bank Events
GET /v1/piggy-banks/{id}/events
Returns all events (additions and removals) for this piggy bank.
Query Parameters
Page number for pagination
Get Piggy Bank Attachments
GET /v1/piggy-banks/{id}/attachments
Returns all attachments for this piggy bank.
Get Piggy Bank Accounts
GET /v1/piggy-banks/{id}/accounts
Returns all accounts associated with this piggy bank.
Best Practices
Setting Realistic Goals
- Calculate monthly savings: Divide target by months available
- Consider your budget: Ensure the goal fits within your budget constraints
- Set milestone dates: Use target_date to create urgency and track progress
Managing Multiple Accounts
Piggy banks support multiple accounts, useful for:- Diversification: Spread savings across checking and savings accounts
- Joint goals: Track contributions from multiple account holders
- Currency hedging: Save in different currencies (with multi-currency accounts)
Tracking Progress
Use thepercentage field to:
- Visualize goal completion
- Celebrate milestones (25%, 50%, 75%, 100%)
- Adjust savings rate if behind schedule
save_per_month field to:
- Understand required monthly contributions
- Adjust timeline if monthly amount is too high
- Plan budget allocations
Common Savings Goals
- Emergency Fund: 3-6 months of expenses
- Major Purchases: Car, home down payment, electronics
- Vacation: Holiday or travel expenses
- Education: Tuition, courses, certifications
- Debt Payoff: Credit card, loan principal
- Investment: Initial investment capital