Getting invoices as PDFs in Zoho CRM typically involves either downloading them manually through the UI or retrieving them programmatically via the Zoho Books API — both approaches are covered below.
Why this matters
Zoho CRM is often integrated with Zoho Books or Zoho Invoice to manage billing, and sales teams frequently need to share or archive invoice PDFs directly from their workflow. Whether you want to attach a PDF to an email, download it for your records, or automate the retrieval as part of a custom function, knowing the right method saves significant time. This is especially relevant for businesses running automated quote-to-cash processes inside Zoho.
> Note: Beam Help is an independent expert support resource — not official Zoho support.
---
Step-by-step
Option A: Download an invoice PDF manually (UI approach)
Step 1. Open the invoice you want to download. From the invoice detail view, locate the more options menu (the ellipsis icon). The available actions listed there include Download, which exports the invoice directly as a PDF file. [7][8]
Step 2. Click Download from that menu. The invoice will be saved to your device as a PDF. You can also choose Print from the same menu if you need a hard copy instead. [7][8]
Step 3. If you want to send the PDF to a customer by email rather than downloading it yourself, click Send Invoice on the invoice record. By default, the Add Invoice PDF checkbox is pre-selected, so the PDF will be attached to the outgoing email automatically. [2][3]
Step 4. Before sending, you can rename the attached PDF by clicking on its filename and typing a new value. You may also attach up to three additional files, each no larger than 3 MB, using the Attachments option. [2][3]
Step 5. In the To field, choose from the contact email address, company email address, or any email addresses belonging to the company's contacts — all pulled from your integrated finance organisation. Each of the To, Cc, and Bcc fields supports a maximum of five email addresses. [2][3]
Step 6. Click Send to dispatch the email with the PDF attached. [4][5]
---
Option B: Retrieve an invoice PDF via the Zoho Books API (automation/developer approach)
This method is useful when you want to pull invoice PDFs programmatically — for example, inside a Zoho CRM custom function or a Deluge script.
Step 1. Identify the organizationid for your Zoho Books organisation and the invoiceid of the invoice you want to export. Both values are required as query parameters in the API call. [1]
Step 2. Construct a GET request to the following endpoint, substituting your real values:
https://www.zohoapis.com/books/v3/invoices/pdf?organization_id=YOUR_ORG_ID&invoice_ids=YOUR_INVOICE_ID
Step 3. In a Deluge custom function (for example, inside Zoho CRM), use invokeurl to call this endpoint with a GET request type and your Zoho Books connection name. A minimal example looks like this:
DownloadInvoice = invokeurl
[
url: "https://www.zohoapis.com/books/v3/invoices/pdf?organization_id=" + organizationID + "&invoice_ids=" + invoiceID
type: GET
connection: "zohobooks"
];
Step 4. The response will contain the PDF binary data, which you can then store, attach to a CRM record, or forward as needed within your automation logic. [1]
---
Common pitfalls
- Invoice status restrictions: An invoice in Void status cannot be edited, and certain actions are only available depending on the current status (e.g., Mark as Sent is only available when the invoice is in Draft state). Make sure the invoice is in an appropriate status before attempting to download or send it. [7][8]
- PDF naming limitations: When attaching invoice PDFs via automated send-mail tasks, renaming the PDF dynamically (e.g., including the client name or invoice number in the filename) can require workarounds. The platform's current tooling makes variable-based PDF filenames non-trivial to implement in some automation contexts. [6]
- Connection name must match: When using the
invokeurlDeluge approach, theconnectionparameter must exactly match the name of the Zoho Books connection you have configured in your Zoho CRM account. An incorrect connection name will cause the API call to fail silently or return an auth error. [1]
- Attachment size limits: When emailing invoices, additional attachments are capped at three files with a maximum of 3 MB each. Exceeding these limits will prevent the email from sending. [2][3]
---
What to check
- Verify the invoice is not in Void status before attempting to download or send — voided invoices have restricted actions available. [7][8]
- Confirm your Zoho Books connection is active and authorised in Zoho CRM if you are using the API/Deluge approach, and that the
organizationidandinvoiceidsvalues are correct. [1] - Check that the Add Invoice PDF checkbox is selected in the Send Invoice dialog if a customer reports not receiving the PDF attachment in their email. [2][3]