Transactions
List Transactions
Paginated UNION of invoices + credit memos. Each row carries a `type` discriminator and a `magento_admin_url` deep-link that points at the correct admin section (invoice vs credit memo) on the storefront.
Get Transaction
Single transaction detail. The `{txn}` id can refer to either a `magento2_invoices.id` or a `magento2_credit_memos.id`; the `type` query string disambiguates.
Get Transaction Filter Options
Aggregated dropdown options for the transactions filter panel — currencies (pulled live from the linked orders), per-type counts, and per-state counts. Empty / never-synced instances surface empty lists.
Refresh Transactions
Dispatch the tracked job that refreshes invoices + credit memos for the instance. Returns the `tracked_job_log_id` so the frontend can pivot the global JobProgressTray to it. Job name prefix is `Refresh Magento 2 Transactions: ` — the page's `lastCompletedJob` watcher matches on this prefix.
Refresh Single Transaction
Re-fetch a single transaction from Magento — typically used when the merchant reconciled / captured / refunded the row in Magento admin and wants SKU.io to pick up the change without a full refresh.
Push Transaction to Accounting
Push the transaction to the configured accounting integration (QuickBooks Online / Xero / etc.). Synchronous — returns the updated row inline. Repeated calls overwrite `pushed_to_accounting_at` so the UI can show 'pushed N minutes ago' deterministically.
Toggle Reconciliation
Toggle the manual reconciliation flag on the transaction. The note is optional and persists alongside the timestamp; setting `is_reconciled: false` clears both fields.