Create an invoice for a customer with one product. See schema for all options.

WARNING: This functionality is only available to businesses where isClassicInvoicing: false. Internally, Wave is undertaking a data migration to move all invoicing data to a newer system which this API uses. All new users will automatically use the new system and existing users are slowly being moved over.

Replace <BUSINESS_ID>, <CUSTOMER_ID>, and <PRODUCT_ID> with real ids.

Operation
mutation ($input: InvoiceCreateInput!) {
  invoiceCreate(input: $input) {
    didSucceed
    inputErrors {
      message
      code
      path
    }
    invoice {
      id
      createdAt
      modifiedAt
      pdfUrl
      viewUrl
      status
      title
      subhead
      invoiceNumber
      invoiceDate
      poNumber
      customer {
        id
        name
        # Can add additional customer fields here
      }
      currency {
        code
      }
      dueDate
      amountDue {
        value
        currency {
          symbol
        }
      }
      amountPaid {
        value
        currency {
          symbol
        }
      }
      taxTotal {
        value
        currency {
          symbol
        }
      }
      total {
        value
        currency {
          symbol
        }
      }
      exchangeRate
      footer
      memo
      disableCreditCardPayments
      disableBankPayments
      itemTitle
      unitTitle
      priceTitle
      amountTitle
      hideName
      hideDescription
      hideUnit
      hidePrice
      hideAmount
      items {
        product {
          id
          name
          # Can add additional product fields here
        }
        description
        quantity
        price
        subtotal {
          value
          currency {
            symbol
          }
        }
        total {
          value
          currency {
            symbol
          }
        }
        account {
          id
          name
          subtype {
            name
            value
          }
          # Can add additional account fields here
        }
        taxes {
          amount {
            value
          }
          salesTax {
            id
            name
            # Can add additional sales tax fields here
          }
        }
      }
      lastSentAt
      lastSentVia
      lastViewedAt
    }
  }
}
Operation Variables
{
  "input": {
    "businessId": "<BUSINESS_ID>",
    "customerId": "<CUSTOMER_ID>",
    "items": [
      {
        "productId": "<PRODUCT_ID>"
      }
    ]
  }
}
Updated: