<!-- FILE: https://developer.kyriba.com/static/llm/skills/kyriba-catalog/SKILL.md -->

# Kyriba API Catalog

Use this file to explore what Kyriba APIs exist, understand what each one does, and decide which skill to fetch.
Each entry links directly to its skill file.

---

## Platform Management

**[Audit Trail](https://developer.kyriba.com/static/llm/skills/audit-trail/SKILL.md)** — `audit-trail`  
Read-only history of all changes made to any Kyriba entity (who changed what, when, and from which value). Use for compliance reporting, debugging unexpected data changes, or building a change log UI.

**[Bank Account Groups](https://developer.kyriba.com/static/llm/skills/bank-account-groups/SKILL.md)** — `bank-account-groups`  
Group bank accounts under a named collection for cash pooling visibility, batch payment routing, or consolidated reporting. A bank account can belong to multiple groups.

**[Bank Accounts](https://developer.kyriba.com/static/llm/skills/bank-accounts/SKILL.md)** — `bank-accounts`  
Core entity for managing bank accounts linked to companies. Stores IBAN, SWIFT/BIC, account number, currency, bank reference, payment instructions, and signatory data. Required before creating cash flows or initiating payments.

**[Bank Branches](https://developer.kyriba.com/static/llm/skills/bank-branches/SKILL.md)** — `bank-branches`  
Detailed branch-level data for a bank including address, BIC, routing codes, and country. Used during account setup and payment routing configuration.

**[Bank Groups](https://developer.kyriba.com/static/llm/skills/bank-groups/SKILL.md)** — `bank-groups`  
Bundle multiple banks under a named group for counterparty exposure management or reporting. Does not affect payment routing — purely organisational.

**[Banks](https://developer.kyriba.com/static/llm/skills/banks/SKILL.md)** — `banks`  
Reference data for financial institutions: BIC code, full name, short name, country. Required when creating bank accounts or looking up routing information.

**[Budget Codes](https://developer.kyriba.com/static/llm/skills/budget-codes/SKILL.md)** — `budget-codes`  
Classification codes assigned to cash flows and payments for budget tracking and reporting. Managed by treasury and referenced during cash flow creation.

**[Companies](https://developer.kyriba.com/static/llm/skills/companies/SKILL.md)** — `companies`  
Core organisational unit in Kyriba representing a legal entity. Every bank account, user, and cash flow is associated with a company. Must exist before creating accounts or running reports.

**[Company Groups](https://developer.kyriba.com/static/llm/skills/company-groups/SKILL.md)** — `company-groups`  
Hierarchical groupings of companies for consolidated reporting, permission scoping, and multi-entity cash position views.

**[Data Permissions](https://developer.kyriba.com/static/llm/skills/data-permissions/SKILL.md)** — `data-permissions`  
Controls which entities (companies, accounts, bank groups) a specific user or API client can see and act on. Use to implement data segmentation in multi-entity environments.

**[Data Permissions Profiles](https://developer.kyriba.com/static/llm/skills/data-permissions-profiles/SKILL.md)** — `data-permissions-profiles`  
Named bundles of data permission rules that can be reused across multiple users. Create a profile once, apply it to many users rather than configuring permissions per user.

**[Dual Admin](https://developer.kyriba.com/static/llm/skills/dual-admin/SKILL.md)** — `dual-admin`  
Read-only view of entities that have been created or modified but are waiting for a second administrator to approve before they become active. Use for compliance audit workflows.

**[Mapping Tables](https://developer.kyriba.com/static/llm/skills/mapping-tables/SKILL.md)** — `mapping-tables`  
Code translation tables between Kyriba internal codes and external system codes (ERP codes, bank codes, GL accounts). Used during data import/export to ensure consistent mapping.

**[Third Parties](https://developer.kyriba.com/static/llm/skills/third-parties/SKILL.md)** — `third-parties`  
Master data for counterparties: suppliers, customers, and financial institutions. Required for working capital finance and referenced in payment instructions and cash flows.

**[Third Party Categories](https://developer.kyriba.com/static/llm/skills/third-party-categories/SKILL.md)** — `third-party-categories`  
Custom classification categories for third parties, used to filter, group, or report on counterparty segments (e.g., "Strategic Supplier", "Priority Customer").

**[User Groups](https://developer.kyriba.com/static/llm/skills/user-groups/SKILL.md)** — `user-groups`  
Group users for bulk permission assignment, approval routing, and publishing rights. A user can belong to multiple groups.

**[Users](https://developer.kyriba.com/static/llm/skills/users/SKILL.md)** — `users`  
Manage Kyriba platform users and API client configurations: create users, assign roles, set authentication methods, and configure API access credentials.

---

## Connectivity

**[Data](https://developer.kyriba.com/static/llm/skills/data/SKILL.md)** — `data`  
Upload raw data files (CSV, XML, SWIFT) to Kyriba for processing. Returns a `fileId` that is then passed to a Process Template for import. Use this before running any data import workflow.

**[Document Attachments](https://developer.kyriba.com/static/llm/skills/document-attachments/SKILL.md)** — `document-attachments`  
Attach uploaded files (PDF, XML, images) to bank accounts, payment transfers, or other entities. Requires a `fileId` from the Data API. Use for attaching supporting documentation to payments.

**[Process Templates](https://developer.kyriba.com/static/llm/skills/process-templates/SKILL.md)** — `process-templates`  
Trigger and monitor Kyriba automation workflows: data imports, exports, reconciliation runs, and batch operations. Use the async polling pattern — POST to run, then poll for status until `Complete` or `Failed`.

---

## Liquidity Management

**[Bank Statement Balances](https://developer.kyriba.com/static/llm/skills/bank-statement-balances/SKILL.md)** — `bank-statement-balances`  
Closing, opening, and intraday balances as reported in bank statement files (MT940, BAI2, CAMT). Represents confirmed bank-reported data. Max 31-day range per request.

**[Cash Balances](https://developer.kyriba.com/static/llm/skills/cash-balances/SKILL.md)** — `cash-balances`  
Real-time and historical cash positions per bank account, including forecasted balances from scheduled cash flows. More comprehensive than bank statement balances — includes Kyriba-side forecasts. Max 31-day range.

**[Cash Flow Codes](https://developer.kyriba.com/static/llm/skills/cash-flow-codes/SKILL.md)** — `cash-flow-codes`  
Hierarchical classification codes used to categorize every cash flow transaction. ⚠️ Never delete a code — reassign existing transactions first. Deleting breaks historical reporting.

**[Cash Flows](https://developer.kyriba.com/static/llm/skills/cash-flows/SKILL.md)** — `cash-flows`  
Individual cash flow transactions and forecasts linked to accounts, companies, and currencies. Includes both manual entries and automatically imported bank transactions (status `ACTUAL`).

---

## Payments

**[Fraud Detection](https://developer.kyriba.com/static/llm/skills/fraud-detection/SKILL.md)** — `fraud-detection`  
Outbound polling model: your system periodically fetches pending transfers that require fraud screening, runs its checks, and posts results back to Kyriba. Use when building a batch fraud screening integration.

**[Fraud Detection SPI](https://developer.kyriba.com/static/llm/skills/fraud-detection-spi/SKILL.md)** — `fraud-detection-spi`  
Inbound SPI model: Kyriba calls your server in real time for each payment requiring screening. Your server responds with approve/reject. Use when building a synchronous fraud screening service.

**[Payment Automation](https://developer.kyriba.com/static/llm/skills/payment-automation/SKILL.md)** — `payment-automation`  
End-to-end automated payment workflow: upload file → create batch → route to bank → monitor confirmation. Designed for straight-through processing without manual Kyriba UI steps.

**[Payment Files Status](https://developer.kyriba.com/static/llm/skills/payment-files-status/SKILL.md)** — `payment-files-status`  
Track the full lifecycle of an outbound payment file from upload through bank acknowledgement and confirmation. Use for reconciliation and SLA monitoring.

**[Payment Initiation SPI](https://developer.kyriba.com/static/llm/skills/payment-initiation-spi/SKILL.md)** — `payment-initiation-spi`  
Inbound SPI model: Kyriba calls your server to initiate payments through an external payment channel not natively supported by Kyriba. Your server handles the bank communication.

**[Payment Transaction Summary](https://developer.kyriba.com/static/llm/skills/payment-transaction-summary/SKILL.md)** — `payment-transaction-summary`  
Transaction-level detail for each individual payment inside a bulk payment file. Use to reconcile which specific payments were included in a file and their individual statuses.

**[Transfers](https://developer.kyriba.com/static/llm/skills/transfers/SKILL.md)** — `transfers`  
Monitor the status of payment transfers and remittance batches created in Kyriba. Read-only status tracking — does not initiate payments. Use to build status dashboards or trigger downstream processes.

---

## Risk Management

**[Currencies](https://developer.kyriba.com/static/llm/skills/currencies/SKILL.md)** — `currencies`  
Currency reference data including ISO codes, names, and decimal places. Also provides FX rates used in Kyriba for currency conversion and exposure calculations.

**[Hedge De-Designations](https://developer.kyriba.com/static/llm/skills/hedge-dedesignations/SKILL.md)** — `hedge-dedesignations`  
Records of hedge accounting de-designation events: when a hedge instrument is formally de-designated from a hedged item. Used for FX hedge lifecycle reporting and accounting audit trails.

---

## Working Capital Finance

**[Documents](https://developer.kyriba.com/static/llm/skills/documents/SKILL.md)** — `documents`  
Manage invoices and supporting documents submitted by suppliers for early payment programs (SCF). Includes document approval, rejection, and status lifecycle management.

**[Early Payment Interest](https://developer.kyriba.com/static/llm/skills/early-payment-interest/SKILL.md)** — `early-payment-interest`  
Read-only access to the discount rate tables, maturity date brackets, and calculation settings used to compute early payment costs for suppliers. Referenced when building SCF pricing tools.

**[Supplier Service Accesses](https://developer.kyriba.com/static/llm/skills/supplier-service-accesses/SKILL.md)** — `supplier-service-accesses`  
Controls which SCF services (early payment, dynamic discounting) each supplier can access per buyer relationship. Use to onboard suppliers or audit their program eligibility.

**[Supplier Users](https://developer.kyriba.com/static/llm/skills/supplier-users/SKILL.md)** — `supplier-users`  
Manage user accounts for the Kyriba supplier portal, where suppliers view invoices, request early payments, and manage their profile. Separate from main Kyriba platform users.

---

## Webhooks

**[Webhook: Batch Status Changed](https://developer.kyriba.com/static/llm/skills/webhook-batch-status-changed/SKILL.md)** — `webhook-batch-status-changed`  
Fired when a payment batch changes status (e.g., Pending → Approved → Transmitted). Use to trigger downstream processing when payments are confirmed or rejected.

**[Webhook: Document Approved](https://developer.kyriba.com/static/llm/skills/webhook-document-approved/SKILL.md)** — `webhook-document-approved`  
Fired when a Working Capital Finance document (invoice) is approved for early payment. Use to trigger supplier notification or downstream financial system updates.

**[Webhook: Document Cancelled](https://developer.kyriba.com/static/llm/skills/webhook-document-cancelled/SKILL.md)** — `webhook-document-cancelled`  
Fired when a WCF document is cancelled. Use to reverse any downstream actions triggered by prior approval or submission events.

**[Webhook: Entity Changed](https://developer.kyriba.com/static/llm/skills/webhook-entity-changed/SKILL.md)** — `webhook-entity-changed`  
Fired when any platform entity (company, account, user, mapping table) is created, modified, or deleted. Use to keep external systems in sync with Kyriba master data.

**[Webhook: Execution Finished](https://developer.kyriba.com/static/llm/skills/webhook-execution-finished/SKILL.md)** — `webhook-execution-finished`  
Fired when a process template task reaches a terminal state (Complete, Warning, Failed). Use to trigger post-import processing without polling.

**[Webhook: Routing Status Changed](https://developer.kyriba.com/static/llm/skills/webhook-routing-status-changed/SKILL.md)** — `webhook-routing-status-changed`  
Fired when a payment routing file changes status at the bank channel level. Use for real-time payment file status tracking instead of polling the Payment Files Status API.