List invoices
curl --request GET \
--url https://api.assembly.com/v1/invoices \
--header 'X-API-KEY: <api-key>'import requests
url = "https://api.assembly.com/v1/invoices"
headers = {"X-API-KEY": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-API-KEY': '<api-key>'}};
fetch('https://api.assembly.com/v1/invoices', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.assembly.com/v1/invoices",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-API-KEY: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.assembly.com/v1/invoices"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-API-KEY", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.assembly.com/v1/invoices")
.header("X-API-KEY", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.assembly.com/v1/invoices")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-API-KEY"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"data": [
{
"address": {
"addressLine1": "548 Market St",
"addressLine2": "Suite 100",
"city": "San Francisco",
"country": "United States",
"fullAddress": "548 Market St, San Francisco, CA 94105",
"postalCode": "94105",
"region": "California"
},
"amountPaid": 123,
"attachmentKeys": [
"<string>"
],
"attachmentUrls": [
"<string>"
],
"billingReason": "manual",
"clientId": "client_a1b2c3d4e5f6",
"collectionMethod": "sendInvoice",
"companyId": "company_a1b2c3d4e5f6",
"createdAt": "<string>",
"creatorId": "<string>",
"currency": "usd",
"data": "<string>",
"daysUntilDue": 14,
"dueDate": "2024-03-01T00:00:00Z",
"entityType": "<string>",
"fileKey": "<string>",
"fileUrl": "<string>",
"id": "<string>",
"identityId": "<string>",
"interval": "<string>",
"latestRefundStatus": "succeeded",
"lineItems": [
{
"amount": 5000,
"description": "Onboarding setup fee",
"id": "<string>",
"priceId": "price_1a2b3c",
"priceInterval": "month",
"productId": "prod_1a2b3c",
"quantity": 2,
"type": "<string>"
}
],
"memo": "Thanks for your business",
"number": "INV-0001",
"object": "<string>",
"origin": "internal",
"paidManually": true,
"payment": [
{
"amount": 10000,
"brand": "Visa",
"chargedAt": "2024-02-20T14:05:00Z",
"createdAt": "<string>",
"creatorId": "<string>",
"data": "<string>",
"declineCode": "insufficientFunds",
"entityType": "PAYMENT",
"fee": {
"absorbedAmount": 0,
"chargedAmount": 150,
"isFeeAbsorbed": false,
"items": [
{
"amount": 150,
"type": "ccPercentage"
}
],
"totalAmount": 150
},
"feeAmount": {
"paidByClient": 150,
"paidByPlatform": 0
},
"id": "<string>",
"identityId": "<string>",
"intentId": "pi_3OabcdEFghIJklmn",
"invoiceId": "550e8400-e29b-41d4-a716-446655440000",
"last4Digits": "4242",
"message": "The card has insufficient funds to complete the purchase.",
"object": "<string>",
"paymentMethod": "creditCard",
"portalId": "a1b2c3d4",
"previousAttributes": {},
"ref": "<string>",
"status": "succeeded",
"stripeChargeId": "ch_3OabcdEFghIJklmn",
"updatedAt": "<string>"
}
],
"paymentMethodPreferences": [
{
"feePaidByClient": true,
"type": "creditCard"
}
],
"paymentPreferences": {
"absorbTransactionFee": [],
"paymentMethodTypes": []
},
"paymentSourceId": "<string>",
"paymentSuccessDate": "2024-02-20T14:05:00Z",
"portalId": "<string>",
"previousAttributes": {},
"quickBooksData": {
"invoiceId": "<string>",
"paymentId": "<string>"
},
"receiptKey": "<string>",
"receiptNumber": "REC-0001",
"receiptUrl": "<string>",
"recipientId": "client_a1b2c3d4e5f6",
"ref": "<string>",
"sentDate": "2024-02-15T09:00:00Z",
"sourcePaymentLinkId": "plink_a1b2c3d4e5f6",
"status": "open",
"subscription": {
"additionalFields": {},
"cancelledAt": "2024-02-20T14:05:00Z",
"clientId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"collectionMethod": "sendInvoice",
"companyId": "f0e1d2c3-b4a5-6789-0123-456789abcdef",
"createdAt": "<string>",
"creatorId": "<string>",
"currency": "usd",
"data": "<string>",
"daysUntilDue": 30,
"fields": {
"absorbTransactionFees": true,
"address": {
"addressLine1": "548 Market St",
"addressLine2": "Suite 100",
"city": "San Francisco",
"country": "United States",
"fullAddress": "548 Market St, San Francisco, CA 94105",
"postalCode": "94105",
"region": "California"
},
"allowPaymentViaACH": true,
"allowPaymentViaCC": true,
"attachment": "<string>",
"cancelledAt": "<string>",
"clientUserId": "<string>",
"collectionMethod": "<string>",
"companyId": "<string>",
"currency": "<string>",
"daysUntilDue": 123,
"forcePaused": true,
"interval": "<string>",
"lineItems": [
{
"description": "<string>",
"id": "<string>",
"priceId": "<string>",
"productId": "<string>",
"quantity": 123,
"rate": 123
}
],
"memo": "<string>",
"paymentPreferences": {
"absorbTransactionFee": [],
"paymentMethodTypes": []
},
"prorate": true,
"purchaseFields": {},
"reactivatedBy": "<string>",
"resetBillingCycle": true,
"scheduleEndDate": 123,
"scheduleIterations": 123,
"scheduleStartDate": 123,
"taxPercentage": 123
},
"filteredListIndexPkey": "<string>",
"forcePaused": false,
"id": "<string>",
"identityId": "<string>",
"interval": "monthly",
"intervalCount": 1,
"lineItems": [
{
"amount": 5000,
"description": "Onboarding setup fee",
"id": "<string>",
"priceId": "price_1a2b3c",
"priceInterval": "month",
"productId": "prod_1a2b3c",
"quantity": 2,
"type": "<string>"
}
],
"memo": "Monthly retainer",
"object": "<string>",
"paymentMethodPreferences": [
{
"feePaidByClient": true,
"type": "creditCard"
}
],
"paymentSourceId": "card_1a2b3c",
"previousAttributes": {},
"recipientId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"ref": "<string>",
"status": "active",
"taxPercentage": 8.25,
"templateId": "a7c3e9f1-2b4d-4e6a-8c0f-1d2e3f4a5b6c",
"updatedAt": "<string>"
},
"subscriptionId": "sub_a1b2c3d4e5f6",
"taxAmount": 1275,
"taxPercentage": 8.5,
"templateId": "itmpl_a1b2c3d4e5f6",
"total": 15000,
"updatedAt": "<string>"
}
],
"nextToken": "<string>"
}{
"code": "<string>",
"data": "<unknown>",
"message": "<string>"
}{
"code": "<string>",
"data": "<unknown>",
"message": "<string>"
}{
"code": "<string>",
"data": "<unknown>",
"message": "<string>"
}Invoices
List invoices
Returns a paginated list of invoices for the portal. Supports filtering by client, company, and subscription.
GET
/
v1
/
invoices
List invoices
curl --request GET \
--url https://api.assembly.com/v1/invoices \
--header 'X-API-KEY: <api-key>'import requests
url = "https://api.assembly.com/v1/invoices"
headers = {"X-API-KEY": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-API-KEY': '<api-key>'}};
fetch('https://api.assembly.com/v1/invoices', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.assembly.com/v1/invoices",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-API-KEY: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.assembly.com/v1/invoices"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-API-KEY", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.assembly.com/v1/invoices")
.header("X-API-KEY", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.assembly.com/v1/invoices")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-API-KEY"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"data": [
{
"address": {
"addressLine1": "548 Market St",
"addressLine2": "Suite 100",
"city": "San Francisco",
"country": "United States",
"fullAddress": "548 Market St, San Francisco, CA 94105",
"postalCode": "94105",
"region": "California"
},
"amountPaid": 123,
"attachmentKeys": [
"<string>"
],
"attachmentUrls": [
"<string>"
],
"billingReason": "manual",
"clientId": "client_a1b2c3d4e5f6",
"collectionMethod": "sendInvoice",
"companyId": "company_a1b2c3d4e5f6",
"createdAt": "<string>",
"creatorId": "<string>",
"currency": "usd",
"data": "<string>",
"daysUntilDue": 14,
"dueDate": "2024-03-01T00:00:00Z",
"entityType": "<string>",
"fileKey": "<string>",
"fileUrl": "<string>",
"id": "<string>",
"identityId": "<string>",
"interval": "<string>",
"latestRefundStatus": "succeeded",
"lineItems": [
{
"amount": 5000,
"description": "Onboarding setup fee",
"id": "<string>",
"priceId": "price_1a2b3c",
"priceInterval": "month",
"productId": "prod_1a2b3c",
"quantity": 2,
"type": "<string>"
}
],
"memo": "Thanks for your business",
"number": "INV-0001",
"object": "<string>",
"origin": "internal",
"paidManually": true,
"payment": [
{
"amount": 10000,
"brand": "Visa",
"chargedAt": "2024-02-20T14:05:00Z",
"createdAt": "<string>",
"creatorId": "<string>",
"data": "<string>",
"declineCode": "insufficientFunds",
"entityType": "PAYMENT",
"fee": {
"absorbedAmount": 0,
"chargedAmount": 150,
"isFeeAbsorbed": false,
"items": [
{
"amount": 150,
"type": "ccPercentage"
}
],
"totalAmount": 150
},
"feeAmount": {
"paidByClient": 150,
"paidByPlatform": 0
},
"id": "<string>",
"identityId": "<string>",
"intentId": "pi_3OabcdEFghIJklmn",
"invoiceId": "550e8400-e29b-41d4-a716-446655440000",
"last4Digits": "4242",
"message": "The card has insufficient funds to complete the purchase.",
"object": "<string>",
"paymentMethod": "creditCard",
"portalId": "a1b2c3d4",
"previousAttributes": {},
"ref": "<string>",
"status": "succeeded",
"stripeChargeId": "ch_3OabcdEFghIJklmn",
"updatedAt": "<string>"
}
],
"paymentMethodPreferences": [
{
"feePaidByClient": true,
"type": "creditCard"
}
],
"paymentPreferences": {
"absorbTransactionFee": [],
"paymentMethodTypes": []
},
"paymentSourceId": "<string>",
"paymentSuccessDate": "2024-02-20T14:05:00Z",
"portalId": "<string>",
"previousAttributes": {},
"quickBooksData": {
"invoiceId": "<string>",
"paymentId": "<string>"
},
"receiptKey": "<string>",
"receiptNumber": "REC-0001",
"receiptUrl": "<string>",
"recipientId": "client_a1b2c3d4e5f6",
"ref": "<string>",
"sentDate": "2024-02-15T09:00:00Z",
"sourcePaymentLinkId": "plink_a1b2c3d4e5f6",
"status": "open",
"subscription": {
"additionalFields": {},
"cancelledAt": "2024-02-20T14:05:00Z",
"clientId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"collectionMethod": "sendInvoice",
"companyId": "f0e1d2c3-b4a5-6789-0123-456789abcdef",
"createdAt": "<string>",
"creatorId": "<string>",
"currency": "usd",
"data": "<string>",
"daysUntilDue": 30,
"fields": {
"absorbTransactionFees": true,
"address": {
"addressLine1": "548 Market St",
"addressLine2": "Suite 100",
"city": "San Francisco",
"country": "United States",
"fullAddress": "548 Market St, San Francisco, CA 94105",
"postalCode": "94105",
"region": "California"
},
"allowPaymentViaACH": true,
"allowPaymentViaCC": true,
"attachment": "<string>",
"cancelledAt": "<string>",
"clientUserId": "<string>",
"collectionMethod": "<string>",
"companyId": "<string>",
"currency": "<string>",
"daysUntilDue": 123,
"forcePaused": true,
"interval": "<string>",
"lineItems": [
{
"description": "<string>",
"id": "<string>",
"priceId": "<string>",
"productId": "<string>",
"quantity": 123,
"rate": 123
}
],
"memo": "<string>",
"paymentPreferences": {
"absorbTransactionFee": [],
"paymentMethodTypes": []
},
"prorate": true,
"purchaseFields": {},
"reactivatedBy": "<string>",
"resetBillingCycle": true,
"scheduleEndDate": 123,
"scheduleIterations": 123,
"scheduleStartDate": 123,
"taxPercentage": 123
},
"filteredListIndexPkey": "<string>",
"forcePaused": false,
"id": "<string>",
"identityId": "<string>",
"interval": "monthly",
"intervalCount": 1,
"lineItems": [
{
"amount": 5000,
"description": "Onboarding setup fee",
"id": "<string>",
"priceId": "price_1a2b3c",
"priceInterval": "month",
"productId": "prod_1a2b3c",
"quantity": 2,
"type": "<string>"
}
],
"memo": "Monthly retainer",
"object": "<string>",
"paymentMethodPreferences": [
{
"feePaidByClient": true,
"type": "creditCard"
}
],
"paymentSourceId": "card_1a2b3c",
"previousAttributes": {},
"recipientId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"ref": "<string>",
"status": "active",
"taxPercentage": 8.25,
"templateId": "a7c3e9f1-2b4d-4e6a-8c0f-1d2e3f4a5b6c",
"updatedAt": "<string>"
},
"subscriptionId": "sub_a1b2c3d4e5f6",
"taxAmount": 1275,
"taxPercentage": 8.5,
"templateId": "itmpl_a1b2c3d4e5f6",
"total": 15000,
"updatedAt": "<string>"
}
],
"nextToken": "<string>"
}{
"code": "<string>",
"data": "<unknown>",
"message": "<string>"
}{
"code": "<string>",
"data": "<unknown>",
"message": "<string>"
}{
"code": "<string>",
"data": "<unknown>",
"message": "<string>"
}Authorizations
Query Parameters
Filter by client ID
Filter by company ID (mutually exclusive with clientId)
Include company-level invoices in the results
Filter by subscription ID
Maximum number of records to return
Pagination cursor returned by a previous request
⌘I