/api/invoices/generatecurl -X POST https://api.miryo.ai/api/invoices/generate \
-H "Content-Type: application/json" \
-H "x-api-key: your_api_key_here" \
-d '{
"issuer": {
"company": "miryo.AI株式会社"
},
"customer": {
"company": "サンプル株式会社"
},
"invoice": {
"subject": "Webシステム開発費用(2025年11月分)",
"items": [
{
"name": "開発作業",
"quantity": 10,
"unitPrice": 80000,
"amount": 800000
}
]
}
}' \
--output invoice.pdfcurl -X POST https://api.miryo.ai/api/invoices/generate \
-H "Content-Type: application/json" \
-H "x-api-key: your_api_key_here" \
-d '{
"issuer": {
"company": "miryo.AI株式会社",
"email": "info@miryo.ai",
"phone": "050-1725-6435",
"address": "東京都港区1-2-3 ミリョービル5F",
"contactPerson": "経理部 佐藤次郎",
"registrationNumber": "T1234567890123"
},
"customer": {
"company": "サンプル株式会社",
"name": "田中花子",
"email": "tanaka@sample.co.jp",
"phone": "03-9876-5432",
"department": "情報システム部",
"position": "部長",
"nameKana": "タナカ ハナコ",
"zipCode": "150-0001",
"address": "東京都渋谷区神宮前1-1-1"
},
"invoice": {
"invoiceNumber": "INV-2025-11-001",
"invoiceDate": "2025-11-30T00:00:00.000Z",
"paymentDueDate": "2025-12-31T23:59:59.000Z",
"subject": "Webシステム開発費用(2025年11月分)",
"items": [
{
"name": "要件定義",
"majorCategory": "設計・開発",
"description": "業務フロー分析、機能要件定義書作成(完了)",
"quantity": 10,
"unitPrice": 80000,
"amount": 800000
},
{
"name": "基本設計",
"majorCategory": "設計・開発",
"quantity": 15,
"unitPrice": 80000,
"amount": 1200000
}
],
"bankAccount": {
"bankName": "みずほ銀行",
"branchName": "渋谷支店",
"accountType": "普通",
"accountNumber": "1234567",
"accountHolder": "ミリョーエーアイ(カ"
},
"taxRate": 0.1,
"paymentTerms": "月末締め翌月末払い",
"notes": "※お支払期日は2025年12月31日です。\n※振込手数料はご負担願います。",
"showItemDescription": true,
"qualifiedInvoice": true,
"fontSize": {
"customerCompany": 20,
"customerName": 16
},
"tableColumns": {
"showNo": true,
"showMajorCategory": true
}
}
}' \
--output invoice.pdf| パラメータ | 型 | 必須 | 説明 |
|---|---|---|---|
issuer.company | string | 必須 | 発行者の会社名 |
customer.company | string | 必須 | 顧客の会社名 |
customer.name | string | 任意 | 顧客の担当者名(null可、指定しない場合は「様」も表示されません) |
customer.email | string | 任意 | 顧客のメールアドレス(email形式、任意) |
customer.phone | string | 任意 | 顧客の電話番号(任意) |
invoice.subject | string | 必須 | 請求件名・タイトル |
invoice.items | array | 必須 | 請求明細の配列(最低1件必要) |
invoice.items[].name | string | 必須 | 明細項目名 |
invoice.items[].quantity | number | 必須 | 数量(正の数値) |
invoice.items[].unitPrice | number | 必須 | 単価(0以上の数値) |
invoice.items[].amount | number | 必須 | 金額(0以上の数値)= quantity × unitPrice |
issuer.email | string | 任意 | 発行者のメールアドレス(デフォルト: 表示なし) |
issuer.phone | string | 任意 | 発行者の電話番号(デフォルト: 表示なし) |
issuer.address | string | 任意 | 発行者の住所(デフォルト: 表示なし) |
issuer.contactPerson | string | 任意 | 発行者の担当者名(デフォルト: 表示なし) |
issuer.registrationNumber | string | 任意 | インボイス登録番号(適格請求書発行時に推奨) |
customer.department | string | 任意 | 顧客の部署名(デフォルト: 表示なし) |
customer.position | string | 任意 | 顧客の役職(デフォルト: 表示なし) |
customer.nameKana | string | 任意 | 顧客名のカナ表記(デフォルト: 表示なし) |
customer.zipCode | string | 任意 | 顧客の郵便番号(デフォルト: 表示なし) |
customer.address | string | 任意 | 顧客の住所(デフォルト: 表示なし) |
invoice.invoiceNumber | string | 任意 | 請求番号(未指定時は自動生成: INV-{timestamp}) |
invoice.invoiceDate | string | 任意 | 請求日(ISO 8601形式、デフォルト: 現在日時) |
invoice.paymentDueDate | string | 任意 | 支払期日(ISO 8601形式、デフォルト: 請求日+30日) |
invoice.items[].description | string | 任意 | 明細項目の詳細説明(デフォルト: 表示なし) |
invoice.items[].majorCategory | string | 任意 | 大カテゴリ名(デフォルト: 表示なし、showMajorCategory: true で表示) |
invoice.bankAccount | object | 任意 | 振込先情報(デフォルト: 表示なし) |
invoice.bankAccount.bankName | string | 必須* | 銀行名(bankAccount指定時は必須) |
invoice.bankAccount.branchName | string | 必須* | 支店名(bankAccount指定時は必須) |
invoice.bankAccount.accountType | string | 必須* | 口座種別(普通・当座など、bankAccount指定時は必須) |
invoice.bankAccount.accountNumber | string | 必須* | 口座番号(bankAccount指定時は必須) |
invoice.bankAccount.accountHolder | string | 必須* | 口座名義(bankAccount指定時は必須) |
invoice.notes | string | 任意 | 備考欄(改行は\nで指定、デフォルト: 表示なし) |
invoice.paymentTerms | string | 任意 | 支払条件(デフォルト: 表示なし) |
invoice.showItemDescription | boolean | 任意 | 明細の詳細説明を表示するか(デフォルト: false) |
invoice.taxRate | number | 任意 | 消費税率 0.0~1.0(デフォルト: 0.1 = 10%) |
invoice.qualifiedInvoice | boolean | 任意 | 適格請求書として発行するか(デフォルト: false) |
invoice.fontSize | object | 任意 | フォントサイズカスタマイズ設定(デフォルト: システム標準値) |
invoice.fontSize.customerCompany | number | 任意 | 顧客会社名のフォントサイズ(デフォルト: 20) |
invoice.fontSize.customerName | number | 任意 | 顧客担当者名のフォントサイズ(デフォルト: 16) |
invoice.fontSize.customerOther | number | 任意 | 顧客その他情報のフォントサイズ(デフォルト: 10) |
invoice.fontSize.issuerCompany | number | 任意 | 発行者会社名のフォントサイズ(デフォルト: 12) |
invoice.fontSize.issuerName | number | 任意 | 発行者担当者名のフォントサイズ(デフォルト: 10) |
invoice.fontSize.issuerOther | number | 任意 | 発行者その他情報のフォントサイズ(デフォルト: 10) |
invoice.fontSize.itemDetail | number | 任意 | 明細詳細のフォントサイズ(デフォルト: 9) |
invoice.tableColumns | object | 任意 | テーブル列の表示設定(デフォルト: 全てfalse) |
invoice.tableColumns.showNo | boolean | 任意 | No列を表示するか(デフォルト: false) |
invoice.tableColumns.showMajorCategory | boolean | 任意 | 大カテゴリ列を表示するか(デフォルト: false) |
PDF Binary Data (application/pdf) Response Headers: Content-Type: application/pdf Content-Disposition: attachment; filename="invoice-INV-2025-11-001.pdf" X-Invoice-Number: INV-2025-11-001
注: 請求番号がリクエストで指定されていない場合、自動生成された番号がX-Invoice-Numberヘッダーに含まれます。
{
"error": "Invalid request data",
"details": [
{
"code": "invalid_type",
"expected": "string",
"received": "undefined",
"path": ["customer", "email"],
"message": "Required"
}
]
}{
"error": "API key is required"
}const axios = require('axios');
const fs = require('fs');
async function generateInvoice() {
const response = await axios.post(
'https://api.miryo.ai/api/invoices/generate',
{
issuer: {
company: 'miryo.AI株式会社',
registrationNumber: 'T1234567890123'
},
customer: {
company: 'サンプル株式会社',
name: '田中花子',
email: 'tanaka@sample.co.jp',
phone: '03-9876-5432'
},
invoice: {
subject: 'Webシステム開発費用(2025年11月分)',
items: [{
name: '開発作業',
quantity: 10,
unitPrice: 80000,
amount: 800000 // quantity × unitPrice
}],
qualifiedInvoice: true
}
},
{
headers: { 'x-api-key': 'your_api_key_here' },
responseType: 'arraybuffer'
}
);
fs.writeFileSync('invoice.pdf', response.data);
console.log('Invoice Number:', response.headers['x-invoice-number']);
}import requests
def generate_invoice():
response = requests.post(
'https://api.miryo.ai/api/invoices/generate',
headers={'x-api-key': 'your_api_key_here'},
json={
'issuer': {
'company': 'miryo.AI株式会社',
'registrationNumber': 'T1234567890123'
},
'customer': {
'company': 'サンプル株式会社',
'name': '田中花子',
'email': 'tanaka@sample.co.jp',
'phone': '03-9876-5432'
},
'invoice': {
'subject': 'Webシステム開発費用(2025年11月分)',
'items': [{
'name': '開発作業',
'quantity': 10,
'unitPrice': 80000,
'amount': 800000 # quantity × unitPrice
}],
'qualifiedInvoice': True
}
}
)
with open('invoice.pdf', 'wb') as f:
f.write(response.content)
invoice_number = response.headers.get('X-Invoice-Number')
if invoice_number:
print('Invoice Number:', invoice_number)