ウォレットデータのエクスポート/インポート仕様
このドキュメントでは、バックアップ、データ転送、移行のためのウォレットエクスポート(ZIP/CSV)について説明します。GDPRに基づく個人データのエクスポートについては、GDPRデータエクスポートをご覧ください。
エクスポートの種類
ウォレットエクスポート(ZIPアーカイブ)
単一ウォレットの完全なバックアップ。バックアップ、デバイス間のデータ転送、移行に使用します。
- 場所: データ管理 > エクスポート
- 形式: CSVファイルを含むZIPアーカイブ
- 内容: 取引、カテゴリ、予算プラン、メタデータ
GDPRエクスポート(JSON)
GDPR準拠のための個人データエクスポート。すべてのウォレットにわたるすべてのユーザーデータを含みます。
GDPRエクスポートのドキュメントを見る →ZIPアーカイブ形式
ウォレットエクスポートはCrispBudget_Export_{タイムスタンプ}.zipという名前のZIPアーカイブを作成し、以下のファイルを含みます:
-
transactions.csv— すべての取引記録 -
categories.csv— カスタムカテゴリ定義(オプション) -
budget_plans.csv— 予算プラン履歴(オプション) -
metadata.json— 通貨とバージョンを含むエクスポートメタデータ
カテゴリと予算プランのファイルは、ウォレットにカスタムカテゴリまたは予算プランがある場合にのみ含まれます。
インポート方法
CrispBudgetはファイル拡張子に基づいてファイル形式を自動検出します:
ZIPインポート
取引、カテゴリ、予算プランを含む完全なウォレットバックアップをインポートします。アプリがすべてのファイルを自動的に展開して検証します。
.zip CSVインポート
単一のCSVファイルから取引をインポートします。スプレッドシートでの手動編集や他のツールからのインポートに最適です。
.csv または .txt ファイル構成
ZIPアーカイブには以下のファイルが含まれます:
-
transactions.csv— 取引データ -
categories.csv— カテゴリ設定 -
budget_plans.csv— 予算プラン -
metadata.json— メタデータ(通貨、バージョン情報など)
取引データ (transactions.csv)
カラム定義
| カラム名 | 型 | 必須 | 説明 |
|---|---|---|---|
Date | 文字列 | 必須 | 日付(ISO 8601形式:YYYY-MM-DD) |
Amount | 文字列 | 必須 | 金額(小数点形式:例 "1050.00") |
Category | 文字列 | 必須 | カテゴリ名 |
Merchant | 文字列 | 任意 | 店舗名(最大200文字) |
Note | 文字列 | 任意 | メモ(最大500文字) |
Duration | 文字列 | 任意 | 期間按分の日数(1〜365) |
IsPrivate | 文字列 | 任意 | プライベートフラグ("true" または "false") |
Items | 文字列 | 任意 | 商品内訳(JSON配列形式、詳細は下記参照) |
サンプル
Date,Amount,Category,Merchant,Note,Duration,IsPrivate,Items
2025-01-13,1500.00,食費,スターバックス,朝のコーヒー,,,
2025-01-12,5000.00,食料品,イオン,週末の買い出し,7,,
2025-01-10,12000.00,日用品,ドン・キホーテ,シャンプーと洗剤,,false, カテゴリ (categories.csv)
| カラム名 | 型 | 必須 | 説明 |
|---|---|---|---|
Name | 文字列 | 必須 | カテゴリ名(最大50文字、ウォレット内で一意) |
Icon | 文字列 | 必須 | SF Symbolsアイコン名(例:"cart.fill") |
Color | 文字列 | 必須 | 16進数カラーコード(例:"22C55E") |
SortOrder | 文字列 | 必須 | 表示順(0から開始) |
サンプル
Name,Icon,Color,SortOrder
食費,fork.knife,F97316,0
食料品,cart.fill,22C55E,1
交通費,car.fill,0EA5E9,2 予算プラン (budget_plans.csv)
| カラム名 | 型 | 必須 | 説明 |
|---|---|---|---|
StartDate | 文字列 | 必須 | 開始日(ISO 8601形式:YYYY-MM-DD) |
DailyAmount | 文字列 | 必須 | 1日の予算額(小数点形式) |
サンプル
StartDate,DailyAmount
2025-01-01,3000.00
2025-02-01,2500.00 メタデータ (metadata.json)
エクスポートファイルには、以下の情報を含むJSONファイルが付属します:
{
"currencyCode": "JPY",
"walletName": "メインウォレット",
"exportDate": "2025-01-13T12:00:00Z",
"formatVersion": "1.0",
"totalTransactions": 150
} インポート時の注意事項
- 通貨コードがインポート先ウォレットと一致している必要があります
- Date、Amount、Categoryは必須フィールドです
- 金額は小数点形式で記述してください(例:1050.00)
- 日付はISO 8601形式(YYYY-MM-DD)で記述してください
- 存在しないカテゴリ名は自動的に作成されます
- UTF-8エンコーディングを使用してください(BOM付き推奨)
- CSVの引用符やカンマのエスケープはRFC 4180に従います
文字エンコーディング
CSVファイルはUTF-8エンコーディングで出力されます。Excelとの互換性のため、BOM(Byte Order Mark)が先頭に付加されています。
Items カラムの詳細
複数の商品を含む取引(例:スーパーのレシート)では、Items カラムにJSON配列形式で商品内訳を記録できます。
フィールド定義
| フィールド名 | 型 | 必須 | 説明 |
|---|---|---|---|
name | 文字列 | 必須 | 商品名 |
amount | 文字列 | 必須 | 金額(小数点形式:例 "500.00") |
quantity | 数値 | 任意 | 数量(デフォルト: 1) |
category | 文字列 | 任意 | カテゴリ名(省略時は親取引のカテゴリを使用) |
duration | 数値 | 任意 | 期間按分の日数(1〜365) |
amountType | 文字列 | 任意 | 金額タイプ:"unit"(単価)または "total"(合計)、デフォルト: "unit" |
サンプル
[
{
"name": "牛乳",
"amount": "200.00",
"quantity": 2,
"category": "食料品",
"amountType": "unit"
},
{
"name": "週末分の食材",
"amount": "3500.00",
"quantity": 1,
"category": "食費",
"duration": 7,
"amountType": "total"
}
] ※ CSV内では引用符のエスケープが必要です(" → "")