---
schema_version: "1"
id: ece091d397509c57d9c3cfd26c405264db3fd57dd2125ddc77cf71ce72951dca
title: Manage Invoices by Using APIs or Flow Actions
collection: admin
version: current
locale: en-us
portal_url: https://docs.salesforce.com/admin/current/en-us/ind/264-0-0/billing_invoices_apis_and_actions.md
canonical_url: https://help.salesforce.com/s/articleView?id=ind.billing_invoices_apis_and_actions.htm&release=264.0.0&type=5
source_site: help.salesforce.com
content_type: documentation
content_hash: aa019f32db96e7114836fff36f91fc12ad7352b95470097bf4de5178aa949e7a
description: Use APIs or Flow actions to generate and update invoices, recover the latest generated invoices for billing schedules, void posted invoices, and send emails with posted invoices.
products:
  - Revenue Cloud
release: "264"
---
# Manage Invoices by Using APIs or Flow Actions

Use APIs or Flow actions to generate and update invoices, recover the latest generated invoices for billing schedules, void posted invoices, and send emails with posted invoices.

### Required Editions

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small edition"><colgroup><col></colgroup><tbody><tr class=""><td class="slds-cell-wrap" style="vertical-align:top;">Available in: Lightning Experience</td></tr><tr class=""><td class="slds-cell-wrap" style="vertical-align:top;">Available in: <strong>Enterprise</strong>, <strong>Unlimited</strong>, and <strong>Developer</strong> Editions with <a href="https://help.salesforce.com/s/articleView?id=ind.revenue_licenses_areas_and_features.htm&amp;release=264.0.0&amp;type=5">the Revenue Cloud Advanced license or the Revenue Cloud Billing license</a></td></tr></tbody></table>

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small ">
      <colgroup>
        <col>
        <col>
      </colgroup>
      <thead class="slds-text-title_caps ">
        <tr class="">
          <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d36533e68">Goal</th>
          <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d36533e71">API </th>
        </tr>
      </thead>
      <tbody>
        <tr class="">
          <td data-label="Goal" class="slds-cell-wrap" style="vertical-align:top;" headers="d36533e68 ">Create or update an invoice scheduler to automatically generate invoices.</td>

          <td data-label="API" class="slds-cell-wrap" style="vertical-align:top;" headers="d36533e71 "><a href="https://developer.salesforce.com/docs/atlas.en-us.revenue_lifecycle_management_dev_guide.meta/revenue_lifecycle_management_dev_guide/connect_resources_create_an_invoice_scheduler.htm" target="_blank">Batch Invoice Scheduler API</a></td>

        </tr>
        <tr class="">
          <td data-label="Goal" class="slds-cell-wrap" style="vertical-align:top;" headers="d36533e68 ">Generate an invoice for an account, order, or a list of billing
            schedules.</td>

          <td data-label="API" class="slds-cell-wrap" style="vertical-align:top;" headers="d36533e71 "><a href="https://developer.salesforce.com/docs/atlas.en-us.revenue_lifecycle_management_dev_guide.meta/revenue_lifecycle_management_dev_guide/connect_resources_create_invoices_from_billing_schedules.htm" target="_blank">Invoice Creation API</a></td>

        </tr>
        <tr class="">
          <td data-label="Goal" class="slds-cell-wrap" style="vertical-align:top;" headers="d36533e68 ">Ingest or generate an invoice from an internal or external billing transaction
            data.</td>

          <td data-label="API" class="slds-cell-wrap" style="vertical-align:top;" headers="d36533e71 "><a href="https://developer.salesforce.com/docs/atlas.en-us.revenue_lifecycle_management_dev_guide.meta/revenue_lifecycle_management_dev_guide/connect_resources_invoices_ingestion.htm" target="_blank">Invoice Ingestion API</a></td>

        </tr>

        <tr class="">
          <td data-label="Goal" class="slds-cell-wrap" style="vertical-align:top;" headers="d36533e68 ">Update the status of an invoice from Draft to Posted.</td>

          <td data-label="API" class="slds-cell-wrap" style="vertical-align:top;" headers="d36533e71 ">
            <p><a href="https://developer.salesforce.com/docs/atlas.en-us.revenue_lifecycle_management_dev_guide.meta/revenue_lifecycle_management_dev_guide/connect_resources_draft_to_posted_invoice.htm" target="_blank">Invoice Draft to Posted Status API</a></p>
            <p style="margin-bottom:0;">To
              automate the process of updating the status of an invoice from Draft to Posted,
              build a custom flow and use the <a href="https://developer.salesforce.com/docs/atlas.en-us.revenue_lifecycle_management_dev_guide.meta/revenue_lifecycle_management_dev_guide/actions_obj_post_draft_invoice.htm" target="_blank">Post Draft Invoice action</a>. </p>
          </td>

        </tr>
        <tr class="">
          <td data-label="Goal" class="slds-cell-wrap" style="vertical-align:top;" headers="d36533e68 ">Update a batch of invoices from Draft to Posted status for a credit memo
            application.</td>

          <td data-label="API" class="slds-cell-wrap" style="vertical-align:top;" headers="d36533e71 ">
            <p><a href="https://developer.salesforce.com/docs/atlas.en-us.revenue_lifecycle_management_dev_guide.meta/revenue_lifecycle_management_dev_guide/connect_resources_batch_draft_invoices_to_posted.htm" target="_blank">Batch Invoices Draft to Posted Status API</a></p>
            <p style="margin-bottom:0;">To
              automate the process of updating the status of a batch of invoices from Draft to
              Posted for a credit memo application, build a custom flow and use the <a href="https://developer.salesforce.com/docs/atlas.en-us.revenue_lifecycle_management_dev_guide.meta/revenue_lifecycle_management_dev_guide/actions_obj_post_draft_invoice_batch_run.htm" target="_blank">Post Draft Invoice Batch Run action</a>.
            </p>
          </td>

        </tr>
        <tr class="">
          <td data-label="Goal" class="slds-cell-wrap" style="vertical-align:top;" headers="d36533e68 ">Recover the latest generated invoice associated with the billing schedules in the
            Error or Processing status.</td>

          <td data-label="API" class="slds-cell-wrap" style="vertical-align:top;" headers="d36533e71 ">
            <p><a href="https://developer.salesforce.com/docs/atlas.en-us.revenue_lifecycle_management_dev_guide.meta/revenue_lifecycle_management_dev_guide/connect_resources_recover_billing_schedules.htm" target="_blank">Billing Schedule Recovery List API</a></p>
            <p style="margin-bottom:0;">To
              automate the process of recovering one or more billing schedules in the Error or
              Processing status, build a custom flow and use the <a href="https://developer.salesforce.com/docs/atlas.en-us.revenue_lifecycle_management_dev_guide.meta/revenue_lifecycle_management_dev_guide/actions_obj_recover_billing_schedule.htm" target="_blank">Recover Billing Schedules
                action</a>.</p>
          </td>

        </tr>
        <tr class="">
          <td data-label="Goal" class="slds-cell-wrap" style="vertical-align:top;" headers="d36533e68 ">Recover records associated with a failed invoice run. Recovery is required only
            when billing schedules remain in the Processing, Void In Progress, or Error status. </td>

          <td data-label="API" class="slds-cell-wrap" style="vertical-align:top;" headers="d36533e71 "><a href="https://developer.salesforce.com/docs/atlas.en-us.revenue_lifecycle_management_dev_guide.meta/revenue_lifecycle_management_dev_guide/connect_resources_recover_errored_invoices_batch_run.htm" target="_blank">Invoice Run Recovery API</a></td>

        </tr>
        <tr class="">
          <td data-label="Goal" class="slds-cell-wrap" style="vertical-align:top;" headers="d36533e68 ">Void a posted invoice to rebill the customer.</td>

          <td data-label="API" class="slds-cell-wrap" style="vertical-align:top;" headers="d36533e71 "><a href="https://developer.salesforce.com/docs/atlas.en-us.revenue_lifecycle_management_dev_guide.meta/revenue_lifecycle_management_dev_guide/connect_resources_void_a_posted_invoice.htm" target="_blank">Void a Posted Invoice API</a></td>

        </tr>
        <tr class="">
          <td data-label="Goal" class="slds-cell-wrap" style="vertical-align:top;" headers="d36533e68 ">Send emails for the posted invoices of a specified invoice batch run ID.</td>

          <td data-label="API" class="slds-cell-wrap" style="vertical-align:top;" headers="d36533e71 "><a href="https://developer.salesforce.com/docs/atlas.en-us.revenue_lifecycle_management_dev_guide.meta/revenue_lifecycle_management_dev_guide/connect_resources_send_email_for_invoice_batch_run.htm" target="_blank">Send Emails for Posted Invoices API</a></td>

        </tr>
      </tbody>
    </table>

![Important](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-ind-revenue-264-0-0-production-enus/91ca99c6-d5c8-4986-b961-c6b7801e0d0d/images/icon_important.png)

Important When generating invoices by using the Invoice Creation API or invoice batch runs, implement custom automation on generated invoices as asynchronous processes, such as asynchronous flow paths or asynchronous Apex triggers. Synchronous automation in this context can cause performance issues, timeouts, or failures.