# POST /invoices/:invoice_id/resend

**Resource:** [Invoices](./invoices.md)  
**MCP tool:** `resend_invoice`  
**Scopes:** `invoices:write`  
**Write operation:** yes

Send an invoice that already exists, again: a branded email with the invoice PDF attached and a "Pay now" link. Unlike send_invoice this also works on invoices held in a connected accounting platform, fetching the current invoice and PDF from it without altering it, so chasing an overdue invoice needs the invoices:write scope rather than a login to the accounting file. Requires the invoice to be approved/open, not draft or voided.

## Parameters

| Name | In | Type | Required | Description |
|------|----|------|----------|-------------|
| `invoice_id` | path | string | yes |  |
| `to` | body | string | no | Optional. Send to this address instead of the contact the invoice is addressed to. Use it to chase an accounts-payable inbox without changing the invoice itself. |
| `attach_pdf` | body | boolean | no | Optional, defaults to true. Attach the invoice PDF to the email. |
| `recipient_contact_id` | body | string | no | Optional. UUID of another contact on this workspace to send to instead, e.g. a bookkeeper. Ignored when "to" is given. |
| `require_approval` | body | boolean | no | Optional. Set true to route this write into the approval queue for human review instead of executing it immediately (returns 202 + an approval_id). Works even when your key/token has permission to execute directly. |

## Request example

```bash
curl -X POST   "https://api.trustpager.com/functions/v1/api/v1/invoices/:invoice_id/resend"   -H "Authorization: Bearer YOUR_API_KEY"   -H "Content-Type: application/json"   -d '{"to":"...","attach_pdf":"...","recipient_contact_id":"..."}'
```

---
Base URL: `https://api.trustpager.com/functions/v1/api/v1` — Auth: `Authorization: Bearer YOUR_API_KEY`