Attach a file to a transaction
attach_fileAttach an original PDF, image, spreadsheet, CSV or Word file to an existing QuickBooks transaction. upload_id identifies a file in the Caribooks document box, populated through portal uploads or the account's receiving email address. For ChatGPT native attachments, file accepts the original file descriptor supplied by ChatGPT. content_base64 accepts the actual bytes of a small file. Maximum file size: 20 MB. Requires full access on the connection. Does not create a transaction or render a transcription.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| file | No | A file the user attached in this conversation, passed by the assistant's app. Use this or upload_id or content_base64, not two. | |
| txn_id | Yes | QuickBooks Id of that transaction. | |
| company | No | Which connected QuickBooks company to use (name, realm id, or connection id). Optional when only one company is connected. | |
| filename | No | File name with its extension, e.g. 'facture-2026-08.xlsx'. Shown in QuickBooks. Required with content_base64; with upload_id it defaults to the uploaded file's name. | |
| txn_type | Yes | QuickBooks transaction type the file documents. | |
| upload_id | No | The document id from list_receipt_inbox. Use this or content_base64, not both. | |
| content_type | No | Media type of the file, e.g. application/pdf, image/jpeg, text/csv, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet. With content_base64 only; optional when it is a data URL that names it. | |
| content_base64 | No | The file's bytes encoded as base64 (a data URL is accepted too), for a small file you hold. | |
| allow_duplicate | No | The call fails if the transaction already has an attachment. Only set true after the user explicitly confirms they want an additional document attached. |