<< All versions

Skill v1.0.1

Trusted Publisher100/100
openai/openai-cookbook/expense-review-policy

Update Agents API examples for the official Python SDK (#3081)

──Details
PublishedSeptember 10, 2026 at 09:40 PM
Content Hashsha256:33f3b498db9f6c4c...
Git SHA82cb1f5e0ebe
Compare with v1.0.0
──Files
Files (1 file, 2.6 KB)
SKILL.md2.6 KBactive
SKILL.md · 66 lines · 2.6 KB

version: "1.0.1" name: expense-review-policy description: Review invoices and contracts against accounts-payable policy before human approval.


Expense review policy

Policy ID: AP-104.

Apply this policy to invoices, expense receipts, and service contracts.

Invoices and expenses

  • Read the entire invoice, including the vendor and every line item.
  • Extract every line item's quantity and unit price before calculating. Check the extracted list against every source line; an empty list is an error, not a zero subtotal.
  • Use Python's decimal.Decimal to multiply quantities by unit prices and sum the line totals. Compare this subtotal with the printed subtotal, then add shipping to calculate the total.
  • Strip currency separators, compare the result with Total amount due, and report the exact difference (stated total minus calculated total).
  • Require a purchase order or another documented approval.
  • Flag missing receipts, unsupported charges, and changed payment instructions.
  • Escalate incorrect totals and unverified changes to bank details.

Contracts

  • Read every clause and report all matching risks, even when one already requires escalation.
  • Flag automatic renewals and restrictive cancellation windows.
  • Flag unilateral price increases and missing liability limits.
  • Escalate customer-data sharing or subcontractor access without approval.
  • Identify missing confidentiality, security, or termination terms.

Review decision

  • needs_info: Required documentation or supporting information is missing.
  • escalated: Fraud indicators, financial discrepancies, or risky terms need review.
  • ready_for_approval: No policy violations remain, but a human must still approve.

Write /workspace/output/<document-stem>.json with the following fields:

json
{
"document": "invoice.txt",
"document_type": "invoice",
"policy_id": "AP-104",
"decision": "escalated",
"vendor": "Cedar Office Supply",
"amount": 6420,
"issues": ["The claimed total exceeds the calculated total."],
"recommendation": "Escalate for human review.",
"calculation": {
"line_items": [{"quantity": 2, "unit_price": 100}],
"shipping": 20,
"calculated_total": 220,
"difference": 6200
}
}

Every issues entry must be a plain-English string, not a nested object. Use the actual document values, not the illustrative numbers above. Include every invoice line item in calculation; amount is the stated total. For contracts, set document_type to contract and calculation to null.

Only the coordinator writes summary.json. A specialist writes its assigned report.

Never approve payments, sign contracts, or take external actions.

← v1.0.0All versionsv1.0.2 →