Skip to main content
PATCH
/
invoices
/
{id}
JavaScript
import Whop from '@whop/sdk';

const client = new Whop({
  apiKey: process.env['WHOP_API_KEY'], // This is the default and can be omitted
});

const invoice = await client.invoices.update('inv_xxxxxxxxxxxxxx');

console.log(invoice.id);
{
  "id": "inv_xxxxxxxxxxxxxx",
  "created_at": "2023-12-01T05:00:00.401Z",
  "status": "draft",
  "number": "#0001",
  "due_date": "2023-12-01T05:00:00.401Z",
  "email_address": "customer@example.com",
  "fetch_invoice_token": "eyJhbGciOiJIUzI1NiJ9...",
  "current_plan": {
    "id": "plan_xxxxxxxxxxxxx",
    "formatted_price": "$10.00",
    "currency": "usd"
  },
  "user": {
    "id": "user_xxxxxxxxxxxxx",
    "name": "John Doe",
    "username": "johndoe42"
  }
}

Authorizations

Authorization
string
header
required

A company API key, company scoped JWT, app API key, or user OAuth token. You must prepend your key/token with the word 'Bearer', which will look like Bearer ***************************

Path Parameters

id
string
required

The unique identifier of the invoice to update.

Example:

"inv_xxxxxxxxxxxxxx"

Body

application/json

Parameters for UpdateInvoice

automatically_finalizes_at
string<date-time> | null

The date and time when the invoice will be automatically finalized. For charge_automatically, triggers an automatic charge. For send_invoice, sends the invoice email at the specified time.

Example:

"2023-12-01T05:00:00.401Z"

billing_address
object

Inline billing address to create or update a mailing address for this invoice.

charge_buyer_fee
boolean | null

Whether to charge the customer a buyer fee on this invoice.

collection_method
enum<string> | null

How the invoice should be collected.

Available options:
send_invoice,
charge_automatically
customer_name
string | null

The name of the customer.

due_date
string<date-time> | null

The date by which the invoice must be paid.

Example:

"2023-12-01T05:00:00.401Z"

email_address
string | null

The email address of the customer.

line_items
object[] | null

Line items that break down the invoice total.

mailing_address_id
string | null

The unique identifier of an existing mailing address to attach.

Example:

"ma_xxxxxxxxxxxxxxx"

member_id
string | null

The unique identifier of a member to assign as the customer.

Example:

"mber_xxxxxxxxxxxxx"

payment_method_id
string | null

The unique identifier of the payment method to charge.

Example:

"pmt_xxxxxxxxxxxxxx"

plan
object

Updated plan attributes.

subscription_billing_anchor_at
string<date-time> | null

The date that defines when the subscription billing cycle should start.

Example:

"2023-12-01T05:00:00.401Z"

Response

A successful response

An invoice represents an itemized bill sent by a company to a customer for a specific product and plan, tracking the amount owed, due date, and payment status.

id
string
required

The unique identifier for the invoice.

Example:

"inv_xxxxxxxxxxxxxx"

created_at
string<date-time>
required

The datetime the invoice was created.

Example:

"2023-12-01T05:00:00.401Z"

status
enum<string>
required

The current payment status of the invoice, such as draft, open, paid, or void.

Available options:
draft,
open,
paid,
past_due,
uncollectible,
void
number
string
required

The sequential invoice number for display purposes.

Example:

"#0001"

due_date
string<date-time> | null
required

The deadline by which payment is expected. Null if the invoice is collected automatically.

Example:

"2023-12-01T05:00:00.401Z"

email_address
string | null
required

The email address of the customer this invoice is addressed to. Null if no email is on file.

Example:

"customer@example.com"

fetch_invoice_token
string
required

A signed token that allows fetching invoice data publicly without authentication.

Example:

"eyJhbGciOiJIUzI1NiJ9..."

current_plan
object
required

The plan that this invoice charges for.

user
object
required

The user this invoice is addressed to. Null if the user account has been removed.