Get invoice
Get a single invoice by ID.
curl --request GET \
--url https://api.slash.com/invoice/{invoiceId} \
--header 'X-API-Key: <api-key>'const options = {method: 'GET', headers: {'X-API-Key': '<api-key>'}};
fetch('https://api.slash.com/invoice/{invoiceId}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.slash.com/invoice/{invoiceId}"
headers = {"X-API-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.slash.com/invoice/{invoiceId}"
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))
}{
"invoice": {
"id": "<string>",
"status": "void",
"collectedAmountCents": 123,
"invoiceDetailsId": "<string>",
"accountId": "<string>",
"invoiceTransactions": [
{
"transactionType": "external",
"transaction": {
"paymentMethod": {
"method": "ach_debit",
"config": {
"passFeeToPayer": true
}
},
"paidAt": "<string>"
}
}
],
"legalEntityContactId": "<string>",
"legalEntityCustomerId": "<string>",
"invoicePaymentMethods": [
{
"method": "ach_debit",
"config": {
"passFeeToPayer": true
}
}
],
"closedAt": "2023-11-07T05:31:56Z",
"invoiceSeriesId": "<string>",
"scheduledSendDate": "2023-11-07T05:31:56Z"
},
"invoiceDetails": {
"id": "<string>",
"issuedAt": "2023-11-07T05:31:56Z",
"dueAt": "2023-11-07T05:31:56Z",
"invoiceTz": "America/New_York",
"currency": "<string>",
"lineItemsAndTotals": {
"lineItems": [
{
"name": "<string>",
"quantity": 123,
"priceCents": 123,
"catalogItemId": "<string>"
}
],
"subtotalCents": 123,
"totalAmountCents": 123,
"discount": {
"type": "percentage",
"percent": 123
},
"tax": {
"type": "percentage",
"percent": 123
}
},
"invoiceNumber": "<string>",
"documentId": "<string>",
"billedTo": {
"name": "<string>",
"email": "<string>",
"address": {
"addressLine": "<string>",
"addressCity": "<string>",
"addressState": "<string>",
"addressZip": "<string>",
"addressLine2": "<string>",
"addressCountry": "<string>"
},
"ccEmails": [
"<string>"
]
},
"version": 2,
"memo": "<string>"
},
"invoiceAccount": {
"id": "<string>",
"name": "<string>",
"slashAccountGroupId": "<string>",
"accountType": "default",
"accountNumber": "<string>",
"routingNumber": "<string>",
"closedAt": "<string>"
}
}{
"message": "<string>",
"name": "<string>",
"identifier": "<string>",
"rawStatus": 123,
"meta": {}
}{
"message": "<string>",
"name": "<string>",
"identifier": "<string>",
"rawStatus": 123,
"meta": {}
}{
"message": "<string>",
"name": "<string>",
"identifier": "<string>",
"rawStatus": 123,
"meta": {}
}{
"message": "<string>",
"name": "<string>",
"identifier": "<string>",
"rawStatus": 123,
"meta": {}
}Authorizations
API key authentication for public API requests.
Keys come in two flavors:
- Legal-entity-scoped keys are pinned to a single legal entity. Minted via the dashboard under a specific entity; every request acts on that entity.
- User-scoped keys are pinned to a user and span every legal
entity that user has access to. Every request made with a
user-scoped key (except
GET /legal-entity, which lists the legal entities the user can access) must include anx-legal-entityheader naming the legal entity the request is operating on. Requests without the header are rejected with400. The authenticated user must have an active permission role on the supplied legal entity, otherwise the request is rejected with403.
Path Parameters
Response
OK
Aggregate model for an invoice
Top-level invoice model
Hide child attributes
Hide child attributes
void, unpaid, overdue, paid_partially, paid, scheduled - InvoiceTransaction
- InvoiceTransaction
Hide child attributes
Hide child attributes
external Hide child attributes
Hide child attributes
Payment methods for invoice reconciliation (includes Slash-trackable methods plus external-only options like 'other')
Hide child attributes
Hide child attributes
- PaymentMethodAchDebit
- PaymentMethodCardPayment
- PaymentMethodCryptoDeposit
- PaymentMethodInboundAchTransfer
- PaymentMethodInboundInternationalWire
- PaymentMethodInboundRtp
- PaymentMethodInboundWireTransfer
Hide child attributes
Hide child attributes
IANA timezone identifier used for interpreting invoice dates
"America/New_York"
Hide child attributes
Hide child attributes
1Hide child attributes
Hide child attributes
Optional provenance stamp indicating this line item was populated from a catalog item. Cleared if the user manually edits the name or price after selection.
A user-defined invoice identifier. Allows uppercase letters (A-Z), numbers (0-9), dashes (-), and underscores (_).
1 - 50^[A-Z0-9-_]+$Hide child attributes
Hide child attributes
Hide child attributes
Hide child attributes
ISO 3166-1 Alpha-2 Country Code (e.g., US, FR, UK, DE, ...).
210x >= 11 - 500- Model
- Model
- SlashWalletAccount
Hide child attributes
Hide child attributes
Represent a Subaccount ID in the format of "subaccount_102jifoij01"
^subaccount_[a-z0-9]*default, primary curl --request GET \
--url https://api.slash.com/invoice/{invoiceId} \
--header 'X-API-Key: <api-key>'const options = {method: 'GET', headers: {'X-API-Key': '<api-key>'}};
fetch('https://api.slash.com/invoice/{invoiceId}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.slash.com/invoice/{invoiceId}"
headers = {"X-API-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.slash.com/invoice/{invoiceId}"
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))
}{
"invoice": {
"id": "<string>",
"status": "void",
"collectedAmountCents": 123,
"invoiceDetailsId": "<string>",
"accountId": "<string>",
"invoiceTransactions": [
{
"transactionType": "external",
"transaction": {
"paymentMethod": {
"method": "ach_debit",
"config": {
"passFeeToPayer": true
}
},
"paidAt": "<string>"
}
}
],
"legalEntityContactId": "<string>",
"legalEntityCustomerId": "<string>",
"invoicePaymentMethods": [
{
"method": "ach_debit",
"config": {
"passFeeToPayer": true
}
}
],
"closedAt": "2023-11-07T05:31:56Z",
"invoiceSeriesId": "<string>",
"scheduledSendDate": "2023-11-07T05:31:56Z"
},
"invoiceDetails": {
"id": "<string>",
"issuedAt": "2023-11-07T05:31:56Z",
"dueAt": "2023-11-07T05:31:56Z",
"invoiceTz": "America/New_York",
"currency": "<string>",
"lineItemsAndTotals": {
"lineItems": [
{
"name": "<string>",
"quantity": 123,
"priceCents": 123,
"catalogItemId": "<string>"
}
],
"subtotalCents": 123,
"totalAmountCents": 123,
"discount": {
"type": "percentage",
"percent": 123
},
"tax": {
"type": "percentage",
"percent": 123
}
},
"invoiceNumber": "<string>",
"documentId": "<string>",
"billedTo": {
"name": "<string>",
"email": "<string>",
"address": {
"addressLine": "<string>",
"addressCity": "<string>",
"addressState": "<string>",
"addressZip": "<string>",
"addressLine2": "<string>",
"addressCountry": "<string>"
},
"ccEmails": [
"<string>"
]
},
"version": 2,
"memo": "<string>"
},
"invoiceAccount": {
"id": "<string>",
"name": "<string>",
"slashAccountGroupId": "<string>",
"accountType": "default",
"accountNumber": "<string>",
"routingNumber": "<string>",
"closedAt": "<string>"
}
}{
"message": "<string>",
"name": "<string>",
"identifier": "<string>",
"rawStatus": 123,
"meta": {}
}{
"message": "<string>",
"name": "<string>",
"identifier": "<string>",
"rawStatus": 123,
"meta": {}
}{
"message": "<string>",
"name": "<string>",
"identifier": "<string>",
"rawStatus": 123,
"meta": {}
}{
"message": "<string>",
"name": "<string>",
"identifier": "<string>",
"rawStatus": 123,
"meta": {}
}