# API changelog

Showing the latest 50 of 929 matching changes.
Source: https://raw.githubusercontent.com/apideck-libraries/openapi-specs/main/CHANGELOG.md
Fields: date, release, API, change type, connectors, resources, description.

## 2026-10-16 — Webhooks — other

- Release: 10.69.6
- ID: 10.69.6-0
- API: webhooks
- Change type: other
- Connectors: quickbooks, intuit-enterprise-suite
- Resources: Not specified
- Description: One Intuit webhook URL now delivers events for companies connected through either QuickBooks or Intuit Enterprise Suite. When the company (realm) of an incoming event has no connection under the connector the URL belongs to, the event is delivered through its connection under the other connector, with that connector's serviceid. A company connected through both receives the event only through the URL's connector. A disabled or invalid connection under the URL's connector still counts, so when a company moves between the two connectors, remove the old connection rather than disabling it. Delivery for companies that have a connection under the URL's connector is unchanged.
- Details: https://developers.apideck.com/changelog?api=webhooks&search=10.69.6

## 2026-10-16 — Platform — other

- Release: 10.69.6
- ID: 10.69.6-1
- API: platform
- Change type: other
- Connectors: quickbooks, intuit-enterprise-suite
- Resources: Not specified
- Description: webhooksupport on connectors now includes sharedwith: the service IDs of connectors whose connections also receive events from this connector's webhook URL. QuickBooks and Intuit Enterprise Suite list each other.
- Details: https://developers.apideck.com/changelog?api=platform&search=10.69.6

## 2026-10-16 — Unified Apis — other

- Release: 10.69.5
- ID: 10.69.5-0
- API: unified-apis
- Change type: other
- Connectors: Not specified
- Resources: Not specified
- Description: Application success and error responses now return the existing parent Logs ID in the x-apideck-request-id header, so you can correlate requests with Dashboard logs and share the ID with support. Proxy keeps its existing behavior. API Gateway-generated failures may omit the header. No requestid field is added to response bodies.
- Details: https://developers.apideck.com/changelog?api=unified-apis&search=10.69.5

## 2026-10-15 — Accounting — other

- Release: 10.69.4
- ID: 10.69.4-0
- API: accounting
- Change type: other
- Connectors: netsuite
- Resources: bill-payments
- Description: Behaviour change for NetSuite Bill Payments updates. An update that includes allocations now replaces the payment's bill allocations with the list sent: a bill left out is removed from the payment and its open balance is restored, so a payment can now be moved from one bill to another, and the payment total becomes the sum of the allocations applied. Previously the sent allocations were merged into the existing ones: a bill left out stayed applied, so moving a payment to another bill made it pay both. An update that omits allocations, or sends an empty list, still leaves the existing allocations unchanged. If you add a bill to a payment by sending only the new allocation, send the payment's full list of allocations instead, each with its amount. Vendor credits are unchanged: they can still only be applied when a payment is created, and an update does not unapply a credit applied then.
- Details: https://developers.apideck.com/changelog?api=accounting&search=10.69.4

## 2026-10-14 — Accounting — other

- Release: 10.69.3
- ID: 10.69.3-0
- API: accounting
- Change type: other
- Connectors: sage-intacct
- Resources: journal-entries, invoices, credit-notes
- Description: Sage Intacct now honours the Idempotency-Key header on Journal Entries, Invoices and Credit Notes creates. A 32-character value derived from the key is sent as the create's control id with Sage Intacct's duplicate check switched on, so a retry with the same key and body never creates a second record. It returns the original record's id when the values you sent identify it: a journal entry by its sourceid, an invoice or credit note by its number (or an invoice's code) and customer. Otherwise (no such value, or document sequencing replaced the number you sent) the retry returns Sage Intacct's "already recorded" error instead; nothing is written onto the record to find it. Creates without the header are unchanged.
- Details: https://developers.apideck.com/changelog?api=accounting&search=10.69.3

## 2026-10-14 — Accounting — other

- Release: 10.69.3
- ID: 10.69.3-1
- API: accounting
- Change type: other
- Connectors: sage-intacct-rest
- Resources: journal-entries, invoices, credit-notes
- Description: Sage Intacct REST now honours the Idempotency-Key header on Journal Entries, Invoices and Credit Notes creates. A 32-character value derived from the key is sent as Sage's own Idempotency-Key header, and Sage answers a retry with the same key and body with the original record, id included. Keys are remembered for 1 hour. Creates without the header are unchanged.
- Details: https://developers.apideck.com/changelog?api=accounting&search=10.69.3

## 2026-10-14 — Accounting — other

- Release: 10.69.3
- ID: 10.69.3-2
- API: accounting
- Change type: other
- Connectors: sage-intacct
- Resources: credit-notes
- Description: Sage Intacct Credit Notes lists now support filter[number] (exact match).
- Details: https://developers.apideck.com/changelog?api=accounting&search=10.69.3

## 2026-10-14 — Accounting — other

- Release: 10.69.3
- ID: 10.69.3-3
- API: accounting
- Change type: other
- Connectors: Not specified
- Resources: invoices, credit-notes
- Description: Documented the Sage Intacct Accounts Receivable setting If duplicate numbers, which rejects an Invoices or Credit Notes create whose number already exists for the same customer.
- Details: https://developers.apideck.com/changelog?api=accounting&search=10.69.3

## 2026-10-14 — Accounting — fix

- Release: 10.69.1
- ID: 10.69.1-0
- API: accounting
- Change type: fix
- Connectors: netsuite
- Resources: invoices, bills, purchase-orders, quotes, goods-receipts, employees, projects, expense-reports
- Description: Fixed NetSuite returning date-only fields one calendar day early when the NetSuite integration user's time zone is east of UTC. NetSuite sends a date-only field as local midnight in the user's zone, expressed at the Pacific offset, so a record dated 2025-06-26 by a user on Amsterdam time arrives as 2025-06-25T15:00:00.000-07:00, which was read as 2025-06-25. This affected invoicedate and duedate on Invoices, billdate and duedate on Bills, duedate, issueddate and deliverydate on Purchase Orders, quotedate and expirydate on Quotes, receiveddate on Goods Receipts, hiredate, terminationdate and birthdate on Employees, startdate and enddate on Projects, and duedate and the line transactiondate on Expense Reports (get only). The fix applies to gets and to lists without filter, sort or passthrough; filtered and sorted lists are unchanged. No action is required for almost all accounts — these dates now read correctly without configuration for any NetSuite integration user between UTC-10 and UTC+13, and users from UTC-10 to UTC see unchanged values. The optional timezone connection setting from v10.37.0 now applies to reads as well: when set, reads are exact for every zone and tolerate a setting up to about 12 hours off in either direction. One regression: UTC-11 users (Pago Pago, Niue, Midway) read these dates correctly before and now read them one day late until timezone is set, the same setting they already need for writes. Kiritimati (UTC+14) read a day early before and still does without the setting.
- Details: https://developers.apideck.com/changelog?api=accounting&search=10.69.1

## 2026-10-14 — Proxy — other

- Release: 10.69.1
- ID: 10.69.1-1
- API: proxy
- Change type: other
- Connectors: sap-s4hana-cloud
- Resources: Not specified
- Description: SAP S/4HANA Cloud: OData write requests (any method other than GET, HEAD or OPTIONS) sent through the Proxy API now pass SAP's CSRF protection. Previously they failed with 403 "CSRF token validation failed", because SAP requires the session cookie issued with its CSRF token and the proxy does not forward a caller's Cookie header. Immediately before each write, the proxy fetches a token and session cookies from the OData service root of the requested URL and sends them with the write, retrying once if SAP still answers 403 with x-csrf-token: required. A retried write that still fails returns SAP's real response with x-apideck-downstream-error: true; a repeat CSRF rejection returns the original 403. Callers no longer need to fetch a token; an x-csrf-token they send is replaced by the proxy's when the handshake succeeds. If the proxy's token fetch fails, the request is forwarded unchanged and SAP's own 403 is returned. Each write makes one extra GET to the service root. The handshake, the write and the retry share the request's 28-second budget: the token fetch is shortened when little time remains, the write is given only the remaining time, a request that reaches the proxy with no time left is answered with 504 without contacting SAP, and the retry is skipped rather than started when it could not finish in time. Requests that supply their own credentials through x-apideck-downstream-authorization are not covered, and SOAP endpoints (/sap/bc/srt/…) are unaffected.
- Details: https://developers.apideck.com/changelog?api=proxy&search=10.69.1

## 2026-10-13 — Accounting — coverage-expansion

- Release: 10.69.0
- ID: 10.69.0-0
- API: accounting
- Change type: coverage-expansion
- Connectors: fiken
- Resources: customers, suppliers, invoice-items, projects, tracking-categories, invoices, credit-notes, quotes, sales-orders, journal-entries, bank-accounts, bills, payments, bill-payments, sales-receipts, attachments, ledger-accounts, tax-rates, payment-methods, general-ledger-transactions, companies, company-info, trial-balance
- Description: Added Fiken as an Accounting API connector (beta), for Norwegian small businesses on Fiken. It supports Customers, Suppliers, Products and Projects / Tracking Categories (read and write), Invoices (create, read, and update of the due date), Credit Notes, Quotes, Sales Orders, Journal Entries and Bank Accounts (create and read), Bills, Payments, Bill Payments and Sales Receipts (create, read and delete), Attachments on invoices, bills and journal entries, and Ledger Accounts with current balances, Tax Rates, Payment Methods, General Ledger Transactions, Companies, Company Info and Trial Balance (read). Fiken has no webhook API, so created and updated events for customers, suppliers, invoices, credit notes, products and bills are delivered by polling. A connection is authorized with OAuth, and the customer picks the Fiken company to connect.
- Details: https://developers.apideck.com/changelog?api=accounting&search=10.69.0

## 2026-10-13 — Accounting — other

- Release: 10.68.1
- ID: 10.68.1-0
- API: accounting
- Change type: other
- Connectors: netsuite
- Resources: credit-notes
- Description: NetSuite Credit Notes now return status from how much of the credit has been applied: authorised when none of it has, partiallypaid when part of it has, paid when all of it has, and voided for voided credit memos. Open credit memos were returned as draft before, and partiallypaid was never returned. A status NetSuite reports without amounts that Apideck does not recognise is now left out instead of being returned as draft.
- Details: https://developers.apideck.com/changelog?api=accounting&search=10.68.1

## 2026-10-13 — Accounting — other

- Release: 10.68.1
- ID: 10.68.1-1
- API: accounting
- Change type: other
- Connectors: netsuite
- Resources: invoices
- Description: NetSuite Invoices now return authorised for open invoices instead of draft, partiallypaid for open invoices with part of the amount paid (on filtered lists, where NetSuite reports the paid amount), submitted while pending approval, draft when rejected and void when voided. An unrecognised status is left out instead of being returned as draft.
- Details: https://developers.apideck.com/changelog?api=accounting&search=10.68.1

## 2026-10-13 — Accounting — coverage-expansion

- Release: 10.68.0
- ID: 10.68.0-0
- API: accounting
- Change type: coverage-expansion
- Connectors: e-conomic
- Resources: customers, suppliers, invoice-items, quotes, sales-orders, invoices, credit-notes, journal-entries, bills, bill-payments, ledger-accounts, tax-rates, journals, payment-methods, departments, fiscal-periods, trial-balance, company-info
- Description: Added e-conomic as an Accounting API connector (beta), for Danish businesses on e-conomic. It supports Customers, Suppliers, Products, Quotes and Sales Orders (read and write), Invoices and Credit Notes (booked records to read; drafts to create, update and delete), Journal Entries, Bills and Bill Payments (create and read), and Ledger Accounts, Tax Rates, Journals, Payment Methods, Departments, Fiscal Periods, Trial Balance and Company Info (read). Webhooks are delivered natively for customers, suppliers, products, invoices, quotes, ledger accounts and tax rates; credit notes arrive as invoice events. A connection takes the Agreement Grant Token the customer receives when they approve your e-conomic app.
- Details: https://developers.apideck.com/changelog?api=accounting&search=10.68.0

## 2026-10-13 — Accounting — other

- Release: 10.67.2
- ID: 10.67.2-0
- API: accounting
- Change type: other
- Connectors: netsuite
- Resources: journal-entries
- Description: NetSuite now honours the Idempotency-Key header on Journal Entries creates. The key is sent as the journal entry's externalId, so a retry with the same key and body returns the original journal entry's id instead of writing again or failing with DUPRCRD, including after a create that timed out but was saved. Creates without the header are unchanged.
- Details: https://developers.apideck.com/changelog?api=accounting&search=10.67.2

## 2026-10-13 — Ecommerce — other

- Release: 10.67.1
- ID: 10.67.1-0
- API: ecommerce
- Change type: other
- Connectors: shopify-public-app
- Resources: Not specified
- Description: Shopify (Public App) now requests Shopify's expiring offline access tokens on authorization (expiring=1) and refreshes them automatically using the issued refresh token, as Shopify requires for all public apps from 2027-01-01 (and already for apps created since 2026-04-01). Connections authorized before this release hold a non-expiring token without a refresh token and need to be re-authorized once through Vault.
- Details: https://developers.apideck.com/changelog?api=ecommerce&search=10.67.1

## 2026-10-10 — Accounting — coverage-expansion

- Release: 10.67.0
- ID: 10.67.0-0
- API: accounting
- Change type: coverage-expansion
- Connectors: Not specified
- Resources: fiscal-periods
- Description: Added Fiscal Periods (list and get, beta): the posting periods of a company's fiscal calendar, with startdate, enddate, fiscalyear (the four-digit year the fiscal year ends in), periodnumber, type (period, quarter or year), isadjustment, a status of open, locked (blocked for some users or transaction types), closed (blocked for all users) or future, and lockedthrough, the last date in the period a lock date rejects postings for, so an integration can check that a date is open before posting into it. status is null where the connector does not expose it, or reports a state with no unified equivalent.
- Details: https://developers.apideck.com/changelog?api=accounting&search=10.67.0

## 2026-10-10 — Accounting — other

- Release: 10.67.0
- ID: 10.67.0-1
- API: accounting
- Change type: other
- Connectors: netsuite, oracle-fusion, microsoft-dynamics-365-business-central, exact-online, twinfield, procountor-fi, pennylane, fortnox, spiris, visma-eaccounting, visma-netvisor, datev-unternehmen-online, minox, freeagent, xero, quickbooks, odoo, snelstart
- Resources: Not specified
- Description: Fiscal periods are supported on NetSuite, Oracle Fusion, Microsoft Dynamics 365 Business Central, Exact Online (NL and UK), Twinfield and Procountor. Pennylane, Fortnox, Spiris, Visma eAccounting, Visma Netvisor, DATEV Unternehmen Online, Minox and FreeAgent expose fiscal years only, returned as records with type: year. Xero, QuickBooks, Odoo and SnelStart have no fiscal-year list: their years are generated from the company's fiscal year-end setting, with status taken from the lock or closing dates where the connector has them. Which fields each connector derives, and how it maps its own period states, is listed per connector on the operation. On Fortnox, status and lockedthrough come from the company's locked period, which needs the optional settings scope. Connections do not request it by default, so they return status null until the application owner adds the scope and the customer re-authorizes.
- Details: https://developers.apideck.com/changelog?api=accounting&search=10.67.0

## 2026-10-10 — Accounting — coverage-expansion

- Release: 10.67.0
- ID: 10.67.0-2
- API: accounting
- Change type: coverage-expansion
- Connectors: Not specified
- Resources: trial-balance
- Description: Added Trial Balance (get, beta): every ledger account's balance as of filter[enddate] (today in UTC by default), as debit, credit and a signed balance, with totaldebit and totalcredit. Each line has a linetype and an accountid that GET /accounting/ledger-accounts/{id} accepts; lines with a zero balance are left out, and a report whose debits and credits do not balance returns a 502. Balance sheet accounts are cumulative to the date; income and expense accounts are year-to-date within the fiscal year that contains it. filter[accountingmethod] selects cash or accrual where the connector supports it, and returns a 400 where it does not.
- Details: https://developers.apideck.com/changelog?api=accounting&search=10.67.0

## 2026-10-10 — Accounting — other

- Release: 10.67.0
- ID: 10.67.0-3
- API: accounting
- Change type: other
- Connectors: netsuite, xero, quickbooks, intuit-enterprise-suite, sage-intacct, microsoft-dynamics-365-business-central, odoo, freeagent, dualentry, campfire, zoho-books, sage-business-cloud-accounting, minox, moneybird, datev-unternehmen-online, freshbooks, twinfield, visma-netvisor, spiris, visma-eaccounting, rillet, pennylane, exact-online, snelstart
- Resources: Not specified
- Description: Trial balance is supported on NetSuite, Xero, QuickBooks, Intuit Enterprise Suite, Sage Intacct, Microsoft Dynamics 365 Business Central, Odoo, FreeAgent, DualEntry, Campfire, Zoho Books, Sage Business Cloud Accounting, Minox, Moneybird, DATEV Unternehmen Online, FreshBooks, Twinfield, Visma Netvisor, Spiris, Visma eAccounting, Rillet, Pennylane, Exact Online (NL and UK) and SnelStart. NetSuite, Exact Online, Minox, Moneybird, DATEV and Twinfield report as of the end of the period or month that contains the date. Pennylane returns a 422 while an earlier fiscal year is still open, since its balance sheet balances would miss that year. Where a connector does not close earlier years' results into equity (NetSuite, Exact Online, Business Central, Odoo, Sage Business Cloud Accounting, Moneybird, Twinfield, Visma Netvisor, Minox), they are returned as one extra line, "Result of previous fiscal years (not yet appropriated)", with linetype unappropriatedresult and null accountid and code, so debits equal credits. SnelStart needs the rapportage scope on the connection key. The date semantics of each connector are listed on the operation.
- Details: https://developers.apideck.com/changelog?api=accounting&search=10.67.0

## 2026-10-09 — Accounting — coverage-expansion

- Release: 10.66.4
- ID: 10.66.4-0
- API: accounting
- Change type: coverage-expansion
- Connectors: Not specified
- Resources: invoices
- Description: Added the optional Idempotency-Key header to Invoices updates. A key on an update is scoped to the invoice it updates; connectors that cannot honour it reject it with 400.
- Details: https://developers.apideck.com/changelog?api=accounting&search=10.66.4

## 2026-10-09 — Accounting — other

- Release: 10.66.4
- ID: 10.66.4-1
- API: accounting
- Change type: other
- Connectors: quickbooks, intuit-enterprise-suite
- Resources: journal-entries, invoices
- Description: QuickBooks and Intuit Enterprise Suite now honour the Idempotency-Key header on Journal Entries and Invoices creates and on Invoices updates, voids included. A retry with the same key and body returns the original result instead of writing again, for 24 hours from the first attempt.
- Details: https://developers.apideck.com/changelog?api=accounting&search=10.66.4

## 2026-10-09 — Accounting — other

- Release: 10.66.3
- ID: 10.66.3-0
- API: accounting
- Change type: other
- Connectors: Not specified
- Resources: journal-entries, invoices, bills
- Description: Changed the example value of the Idempotency-Key header on Journal Entries, Invoices and Bills creates from a UUID to a readable placeholder. Behaviour is unchanged.
- Details: https://developers.apideck.com/changelog?api=accounting&search=10.66.3

## 2026-10-08 — Accounting — other

- Release: 10.66.2
- ID: 10.66.2-0
- API: accounting
- Change type: other
- Connectors: netsuite
- Resources: credit-notes, bill-credit-notes, bills, invoices, quotes, journal-entries
- Description: NetSuite now supports number filters on every transaction list that offers one: filter[number] on Credit Notes and Bill Credit Notes, and filter[billnumber] and filter[reference] on Bills, joining Invoices, Quotes and Journal Entries. Each is an exact match on the value the list and get return, and combines with the other filters. A bill number is the supplier's own, so filter[billnumber] can return bills from several suppliers.
- Details: https://developers.apideck.com/changelog?api=accounting&search=10.66.2

## 2026-10-08 — Accounting — fix

- Release: 10.66.2
- ID: 10.66.2-1
- API: accounting
- Change type: fix
- Connectors: netsuite
- Resources: bill-credit-notes
- Description: Fixed NetSuite Bill Credit Notes returning number: null on filtered lists (any filter[...]); they now return the same number (for example VENDCRED4) as the unfiltered list and get.
- Details: https://developers.apideck.com/changelog?api=accounting&search=10.66.2

## 2026-10-08 — Accounting — fix

- Release: 10.66.2
- ID: 10.66.2-2
- API: accounting
- Change type: fix
- Connectors: netsuite
- Resources: invoice-items
- Description: Fixed NetSuite Products creates and updates for Service items with a price returning Please enter missing quantity level(s) when NetSuite had actually rejected them for another reason, such as a missing tax schedule; the error now carries NetSuite's actual reason.
- Details: https://developers.apideck.com/changelog?api=accounting&search=10.66.2

## 2026-10-08 — Accounting — coverage-expansion

- Release: 10.66.1
- ID: 10.66.1-0
- API: accounting
- Change type: coverage-expansion
- Connectors: quickbooks, intuit-enterprise-suite
- Resources: sales-receipts, refunds
- Description: Added accounting.salesreceipt.created, accounting.salesreceipt.updated, accounting.salesreceipt.deleted, accounting.refund.created, accounting.refund.updated and accounting.refund.deleted webhook events for Sales Receipts and Refunds. Delivered by QuickBooks and Intuit Enterprise Suite, which map their native SalesReceipt and RefundReceipt change notifications to these events; emailed and voided notifications are delivered as the corresponding .updated event.
- Details: https://developers.apideck.com/changelog?api=accounting&search=10.66.1

## 2026-10-08 — Accounting — coverage-expansion

- Release: 10.66.0
- ID: 10.66.0-0
- API: accounting
- Change type: coverage-expansion
- Connectors: minox
- Resources: invoices, bills, credit-notes, bill-credit-notes, journal-entries, ledger-accounts, invoice-items, journals, tracking-categories, customers, suppliers, tax-rates, categories, balance-sheet, profit-and-loss, aged-debtors, aged-creditors, attachments
- Description: Added the Minox connector. Supported: Invoices, Bills, Credit Notes and Bill Credit Notes (list, get, create, delete), Journal Entries (list, get, create, delete), Ledger Accounts and Invoice Items (list, get, create, update, delete), Journals and Tracking Categories (list, get, create, update), Customers and Suppliers (list, get, create, update), Tax Rates and Categories (read), Balance Sheet, Profit and Loss, Aged Debtors, Aged Creditors, and Attachments on journal entries, invoices, bills and both credit-note types.
- Details: https://developers.apideck.com/changelog?api=accounting&search=10.66.0

## 2026-10-08 — Accounting — other

- Release: 10.66.0
- ID: 10.66.0-1
- API: accounting
- Change type: other
- Connectors: minox
- Resources: Not specified
- Description: Minox books invoices, bills and credit notes on the administration's sales or purchase journal, so they are posted on create (no drafts), cannot be updated (delete and create again), and take no discounts. Their status and balance follow Minox's open items. When an administration has more than one sales or purchase journal, choose the one to book on in the connection settings.
- Details: https://developers.apideck.com/changelog?api=accounting&search=10.66.0

## 2026-10-08 — Accounting — other

- Release: 10.66.0
- ID: 10.66.0-2
- API: accounting
- Change type: other
- Connectors: minox
- Resources: Not specified
- Description: Minox supports virtual webhooks (created and updated events) for invoices, bills, credit notes, customers, suppliers, invoice items, ledger accounts, tax rates and tracking categories. Deletions are not reported, and sorting is not supported on any list: Minox records have no timestamps.
- Details: https://developers.apideck.com/changelog?api=accounting&search=10.66.0

## 2026-10-08 — Accounting — other

- Release: 10.66.0
- ID: 10.66.0-3
- API: accounting
- Change type: other
- Connectors: minox
- Resources: Not specified
- Description: Minox connections are approved by the main user of the Minox subscription, and a record holds at most one attachment. Quotes are not available yet: Minox has to enable its ordering API for the subscription.
- Details: https://developers.apideck.com/changelog?api=accounting&search=10.66.0

## 2026-10-08 — Accounting — coverage-expansion

- Release: 10.65.0
- ID: 10.65.0-0
- API: accounting
- Change type: coverage-expansion
- Connectors: acumatica, myob-acumatica, sage-intacct, sage-intacct-rest, fortnox
- Resources: sales-orders
- Description: Added a new Sales Orders resource (beta): the customer's committed order with product line items, as distinct from the AR invoice it later becomes. It carries number, ordertype (the downstream order/transaction type), customer, ponumber (the customer's purchase order number) and reference, orderdate, deliverydate (the requested delivery date), status (draft, open, onhold, backordered, invoiced, closed, cancelled, other), amounts (subtotal, totaltax, total and the read-only unbilledamount), shippingmethod, paymentmethod, customermemo and internal notes, invoiceid and quoteid where the system records the link, billing and shipping addresses, custommappings, and lineitems using the shared invoice line-item model so each line can reference an inventory item. List, get, create, update and delete are available, with filter[number], filter[customerid], filter[updatedsince], filter[createdsince] and filter[subsidiaryid]. Supported on Acumatica and MYOB Acumatica (SalesOrder entity; every line needs an InventoryID via item.id or code; ordertype defaults to SO; status: onhold places the order on hold on create), Sage Intacct (Order Entry documents of the Order class; lists are header-only, lines come back on get; create resolves the Order transaction definition from ordertype, the new salesorderdocumenttype connection setting, or the company's single active definition; lines need item.id and unitofmeasure, and locationid on multi-entity companies), Sage Intacct REST (same definition resolution via document::{definition}; SYS- fulfilment definitions are excluded) and Fortnox (customer orders on /3/orders; status derived from the cancelled/invoiced/sent flags, invoiceid and quoteid from the invoice and offer references; DELETE cancels the order, as Fortnox has no delete). Sage Intacct does not record the invoice created from an order, so invoiceid is not returned there; the document an order was converted from is exposed as the sourcedocumentkey custom field, because it is not necessarily a quote. Not yet mapped on other accounting connectors.
- Details: https://developers.apideck.com/changelog?api=accounting&search=10.65.0

## 2026-10-07 — Accounting — coverage-expansion

- Release: 10.64.0
- ID: 10.64.0-0
- API: accounting
- Change type: coverage-expansion
- Connectors: xero
- Resources: journal-entries, invoices, bills
- Description: Added an optional Idempotency-Key header to Journal Entries, Invoices and Bills creates, so a create that times out or ends with an uncertain outcome can be retried safely. Generate one key per record you create (a UUID is recommended; 1-255 printable ASCII characters, sent bare or as a quoted string) and resend it with the same body on every retry: the record is created at most once. A key is remembered for 24 hours from its first use, or for the connector's own deduplication window where that is shorter (Xero: 6 minutes); after that, the same key is treated as a new request, so retry within the window. A retry while the first attempt is still running returns 409, reusing a key with a different body returns 422, and a key sent to a connector or operation that cannot honour it returns 400 instead of creating the record unprotected. Requests without the header are unchanged. Support is enabled per connector, starting with Xero Bills creates.
- Details: https://developers.apideck.com/changelog?api=accounting&search=10.64.0

## 2026-10-07 — Accounting — other

- Release: 10.63.0
- ID: 10.63.0-0
- API: accounting
- Change type: other
- Connectors: freeagent
- Resources: bill-payments, payments, projects, general-ledger-transactions, expenses, quotes, bank-feed-statements, attachments, bank-accounts
- Description: FreeAgent now supports Bill Payments, Payments, Projects, General Ledger Transactions (read-only), Expenses, Quotes, Bank Feed Statements and Attachments on bills, bill credit notes and expenses, plus deleting Bank Accounts. FreeAgent records a payment as an explanation on a bank account, so each bill payment or payment settles exactly one document and lists are read across every bank account. A bill, credit note or expense holds one attachment, and uploading again replaces it. Bank feed statements cannot be updated. See the FreeAgent notes on each resource for the details.
- Details: https://developers.apideck.com/changelog?api=accounting&search=10.63.0

## 2026-10-07 — Accounting — other

- Release: 10.63.0
- ID: 10.63.0-1
- API: accounting
- Change type: other
- Connectors: freeagent
- Resources: Not specified
- Description: FreeAgent now supports virtual webhooks for invoices, credit notes, customers, suppliers, bills, bill payments, payments, invoice items, ledger accounts, projects, expenses and quotes (created and updated events).
- Details: https://developers.apideck.com/changelog?api=accounting&search=10.63.0

## 2026-10-07 — Accounting — other

- Release: 10.63.0
- ID: 10.63.0-2
- API: accounting
- Change type: other
- Connectors: freeagent
- Resources: invoices, bills
- Description: FreeAgent Invoices and Bills that FreeAgent marks Overdue were returned as draft (invoices) and now return submitted; Zero Value returns paid. An open or overdue invoice or bill with part of its amount paid now returns partiallypaid instead of submitted, and an invoice FreeAgent marks Part written-off returns partiallypaid only while an amount is still due (paid otherwise).
- Details: https://developers.apideck.com/changelog?api=accounting&search=10.63.0

## 2026-10-07 — Accounting — other

- Release: 10.63.0
- ID: 10.63.0-3
- API: accounting
- Change type: other
- Connectors: freeagent
- Resources: credit-notes
- Description: FreeAgent Credit Notes that FreeAgent marks Overdue were returned as draft and now return authorised; a credit note with part of its amount refunded returns partiallypaid. balance is now the amount still to be refunded (it was always null), and dateissued is now sent when creating a credit note (it was ignored and FreeAgent used the current date).
- Details: https://developers.apideck.com/changelog?api=accounting&search=10.63.0

## 2026-10-07 — Accounting — other

- Release: 10.63.0
- ID: 10.63.0-4
- API: accounting
- Change type: other
- Connectors: freeagent
- Resources: bills
- Description: FreeAgent Bills now support filter[status] (paid and unpaid; partiallypaid is rejected with a 400) and filter[updatedsince].
- Details: https://developers.apideck.com/changelog?api=accounting&search=10.63.0

## 2026-10-07 — Accounting — fix

- Release: 10.63.0
- ID: 10.63.0-5
- API: accounting
- Change type: fix
- Connectors: freeagent
- Resources: journal-entries
- Description: Fixed FreeAgent writes that FreeAgent rejected or silently changed: creating an invoice with status: submitted left it as a draft (it is now marked as sent, without emailing the customer); credit notes were created with positive amounts, which FreeAgent cannot send; invoices with only a duedate, or with terms such as Net 30 days, were rejected for missing payment terms; and balanced Journal Entries with positive credit amounts were rejected as unbalanced.
- Details: https://developers.apideck.com/changelog?api=accounting&search=10.63.0

## 2026-10-07 — Accounting — fix

- Release: 10.63.0
- ID: 10.63.0-6
- API: accounting
- Change type: fix
- Connectors: freeagent
- Resources: invoices, credit-notes, journal-entries
- Description: Fixed FreeAgent Invoices and Credit Notes returning an empty lineitems[].taxamount: it is now the line's net amount × salestaxrate. Creating or updating a Journal Entry now returns only id, as the unified contract specifies.
- Details: https://developers.apideck.com/changelog?api=accounting&search=10.63.0

## 2026-10-07 — Accounting — fix

- Release: 10.63.0
- ID: 10.63.0-7
- API: accounting
- Change type: fix
- Connectors: freeagent
- Resources: profit-and-loss
- Description: Fixed FreeAgent Profit and Loss failing schema validation: income.records and expenses.records are now returned (empty, as FreeAgent's summary has no per-account lines).
- Details: https://developers.apideck.com/changelog?api=accounting&search=10.63.0

## 2026-10-07 — Accounting — coverage-expansion

- Release: 10.62.1
- ID: 10.62.1-0
- API: accounting
- Change type: coverage-expansion
- Connectors: sap-s4hana-cloud
- Resources: credit-notes, invoices, bill-credit-notes, bills, journal-entries, payments, bill-payments
- Description: Added Credit Notes support for SAP S/4HANA Cloud, with list, get and create. A credit note is posted as an FI customer credit memo (the accounts-receivable mirror of how Invoices are posted on this connector) — not an SD credit memo request or billing document, so it does not appear in SD reporting or link to a sales order. On create, companyid, customer.id, currency, a positive totalamount and at least one lineitems[].ledgeraccount are required, and the line amounts must add up to the total; note (25 characters), reference (16 characters), lineitems[].description, lineitems[].departmentid and lineitems[].trackingcategories are posted and read back; tax and allocations are not posted; number is assigned by SAP. When SAP refuses the posting (for example an unbalanced document or an account that requires a tax code), the request fails with a 400 instead of returning a 201 for a document that does not exist. Posted credit notes are immutable: update and delete are unsupported, and type is always accountsreceivablecredit. Supported filters are updatedsince, createdsince and number, compared on whole days and inclusive. Also fixed on this connector: getting an Invoice by an id that belongs to a different SAP document type (for example a payment id) previously returned a 200 with an empty record and now returns a 404 (as does a Bill Credit Note or Bill fetched by an id of the other type), an invoice whose customer item has been cleared now reads status: paid, and lists of Invoices, Journal Entries, Payments and Bill Payments are now returned newest first with sort honoured (the ordering was previously never sent to SAP).
- Details: https://developers.apideck.com/changelog?api=accounting&search=10.62.1

## 2026-10-06 — Accounting — coverage-expansion

- Release: 10.62.0
- ID: 10.62.0-0
- API: accounting
- Change type: coverage-expansion
- Connectors: plaid-exchange, intuit-bank-feeds
- Resources: bank-feed-accounts, bank-feed-statements
- Description: Added Plaid Core Exchange to the Accounting API (early access) for Bank Feed Accounts and Bank Feed Statements. It works like Intuit Bank Feeds: accounts and statements you create are stored on the Apideck side for Plaid to read, rather than pushed into a ledger. Plaid requires account holder contact data, so every account must carry at least one entry in each of accountholders, emails, addresses and phonenumbers, or it is rejected with one contactrequired violation per missing list. Client authentication between Plaid and Apideck is still pending, so ingested data is stored but not yet served to Plaid.
- Details: https://developers.apideck.com/changelog?api=accounting&search=10.62.0

## 2026-10-06 — Accounting — coverage-expansion

- Release: 10.62.0
- ID: 10.62.0-1
- API: accounting
- Change type: coverage-expansion
- Connectors: intuit-bank-feeds
- Resources: bank-feed-accounts
- Description: Added optional accountholders, emails, addresses and phonenumbers to Bank Feed Accounts. accountholders items carry type (consumer or business), relationship, firstname, middlename, lastname, suffix and businessname; the other three lists use the same item shapes as on customers and suppliers. Intuit Bank Feeds and Plaid Core Exchange forward up to 10 items per list and only the fields the bank-feed provider stores: an address keeps type, line1 to line3, city, state, postalcode and country, and an item's id is not forwarded.
- Details: https://developers.apideck.com/changelog?api=accounting&search=10.62.0

## 2026-10-05 — Accounting — other

- Release: 10.61.1
- ID: 10.61.1-0
- API: accounting
- Change type: other
- Connectors: netsuite, sage-intacct, sage-intacct-rest
- Resources: journal-entries
- Description: NetSuite and Sage Intacct now return number when listing or getting Journal Entries — the journal number NetSuite assigns (for example JE1493) and the batch number Intacct assigns — and both support filter[number] as an exact-match lookup on it. Sage Intacct additionally stores sourceid on create and update, returns it on reads, and supports the new filter[sourceid], so a caller can find an entry again by the reference it supplied. Together these close the write-timeout gap: a create that times out or returns a 5xx may still have been recorded, and there was previously no supported way to check before retrying. On both connectors number cannot be set on create — the value sent is ignored and the connector-assigned number is returned instead. On Sage Intacct both filters are exact-match and case-sensitive. Intacct numbers batches per journal, so filter[number] can return one entry per journal (check journalsymbol, or combine it with filter[sourceid]), and sourceid is not enforced as unique, so filter[sourceid] can return several entries if the same value was reused; use a unique value per entry. Sage Intacct REST, which already stored and returned sourceid, now supports filter[sourceid] as well (exact, case-sensitive). The filter[sourceid] key is declared on the unified Journal Entries filter, so other connectors reject it with UnsupportedFiltersError until mapped. Note for NetSuite: filtered lists (any filter[...]) previously returned NetSuite's internal transaction number in number; they now return the journal number, matching the unfiltered list and get.
- Details: https://developers.apideck.com/changelog?api=accounting&search=10.61.1

## 2026-10-05 — Ecommerce — coverage-expansion

- Release: 10.61.0
- ID: 10.61.0-0
- API: ecommerce
- Change type: coverage-expansion
- Connectors: magento
- Resources: customers
- Description: Added read-only taxnumber to Customers on both list and get-by-id, at two levels: on the customer itself and on each entry in its addresses. It carries the tax or VAT identification number as free text, with leading and trailing whitespace removed and internal spacing kept as registered (for example GB 123 456 789). It is always present and is null when no number is registered, including when the stored value is blank. Populated on Magento from the customer's taxvat and each address's own vatid; an address without a vatid is null and does not inherit the customer-level number. The field is not populated on other ecommerce connectors yet.
- Details: https://developers.apideck.com/changelog?api=ecommerce&search=10.61.0

## 2026-10-05 — Ecommerce — fix

- Release: 10.61.0
- ID: 10.61.0-1
- API: ecommerce
- Change type: fix
- Connectors: magento
- Resources: customers, products, orders
- Description: Fixed Magento list pagination returning the first page twice on Customers, Products and Orders. Magento numbers pages from 1 and treats page 0 as page 1, so the first two pages of a cursor walk held the same records. No records were skipped, so a full walk now returns each record exactly once and reaches the end one page sooner; clients that de-duplicated by id see no difference. Cursors issued before this change continue from the correct position.
- Details: https://developers.apideck.com/changelog?api=ecommerce&search=10.61.0

## 2026-10-02 — Accounting — coverage-expansion

- Release: 10.60.1
- ID: 10.60.1-0
- API: accounting
- Change type: coverage-expansion
- Connectors: oracle-fusion
- Resources: journal-entries, invoices, invoice-items, ledger-accounts, tracking-categories, subsidiaries, company-info
- Description: Added Oracle Fusion Cloud to the Accounting API (beta), covering Journal Entries, Invoices, Invoice Items, Ledger Accounts, Tracking Categories, Subsidiaries and Company Info. Journal entry and ledger account reads are scoped to the ledger configured on the connection: only records belonging to that ledger's chart of accounts are returned, and a record outside it is answered exactly as one that does not exist. The other resources are not ledger-scoped — subsidiaries are tenant-wide, invoices and invoice items follow the integration user's own Oracle data-access grant, and tracking categories are scoped by the tracking segment value set named on the connection. Journal entries support list, get, create and delete; ledger accounts, tracking categories, subsidiaries and invoice items are read-only, and invoices support list, get and create.
- Details: https://developers.apideck.com/changelog?api=accounting&search=10.60.1

## 2026-10-01 — Accounting — coverage-expansion

- Release: 10.60.0
- ID: 10.60.0-0
- API: accounting
- Change type: coverage-expansion
- Connectors: Not specified
- Resources: ledger-accounts, tracking-categories, customers, suppliers, journal-entries
- Description: Added batch create to Ledger Accounts, Tracking Categories, Customers, Suppliers and Journal Entries, on the same contract as the batch endpoints added in v10.59.0: POST /accounting/{resource}/batch creates several records in one request. The body is { "items": [{ "ref": "...", "data": { ...record } }] }, and each item's optional ref comes back on its own result. Items are processed independently, so the endpoint returns 200 with one result per item in the order sent — read the per-item status, not the HTTP status, to see which records were written. Each item's data follows that resource's {Model}CreateInput schema, the same as the other batch endpoints. Batch update is not part of this release.
- Details: https://developers.apideck.com/changelog?api=accounting&search=10.60.0

## 2026-10-01 — Accounting — other

- Release: 10.60.0
- ID: 10.60.0-1
- API: accounting
- Change type: other
- Connectors: xero
- Resources: credit-notes, payments, bill-payments
- Description: Xero now accepts batch create for Credit Notes, Payments and Bill Payments, which previously rejected every batch request outright. Records are written one at a time rather than in a single call to the provider, so a request counts as one call per record against the Xero rate limit and takes proportionally longer than a single write. For Payments and Bill Payments, a payment allocated across several invoices is recorded by Xero as several payments, so each result carries the id of the first payment Xero creates for that item. See each resource's gotchas for the current item cap.
- Details: https://developers.apideck.com/changelog?api=accounting&search=10.60.0
