Get Invoice
curl --request GET \
--url https://payments.shakesco.com/invoices/{invoice_number} \
--header 'Authorization: Bearer <token>'import requests
url = "https://payments.shakesco.com/invoices/{invoice_number}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://payments.shakesco.com/invoices/{invoice_number}', 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://payments.shakesco.com/invoices/{invoice_number}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$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://payments.shakesco.com/invoices/{invoice_number}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://payments.shakesco.com/invoices/{invoice_number}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://payments.shakesco.com/invoices/{invoice_number}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"id": 1,
"user_id": 42,
"invoice_number": "INV-2026-a1b2c3d4",
"status": "pending",
"type": "public",
"currency": "USD",
"tax_rate": "0.00",
"is_business": true,
"from_store": false,
"receiver": "business@example.com",
"receiver_country": "US",
"payer_name": "Jane Doe",
"payer_email": "customer@example.com",
"payer_country": null,
"asset": null,
"amount": null,
"rate": null,
"tx_hash_link": null,
"receipt_number": null,
"payment_url": "https://pay.shakesco.com/@business/a1b2c3...",
"redirect_url": "https://yourstore.com/order/complete",
"expires_at": "2026-05-23T10:00:00.000000Z",
"scanned_at": null,
"paid_at": null,
"store_item_ids": null,
"name": "business",
"image": "https://example.com/avatar.jpg",
"created_at": "2026-05-16T10:00:00.000000Z",
"updated_at": "2026-05-16T10:00:00.000000Z",
"transaction_items": [
{
"id": 1,
"crypto_transaction_id": 1,
"description": "Platform Services",
"unit": "1",
"price": "1400",
"image": null,
"created_at": "2026-05-16T10:00:00.000000Z",
"updated_at": "2026-05-16T10:00:00.000000Z"
}
]
}
{ "message": "Transaction not found." }
Invoices
Get Invoice
Look up a single invoice by its invoice number
GET
/
invoices
/
{invoice_number}
Get Invoice
curl --request GET \
--url https://payments.shakesco.com/invoices/{invoice_number} \
--header 'Authorization: Bearer <token>'import requests
url = "https://payments.shakesco.com/invoices/{invoice_number}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://payments.shakesco.com/invoices/{invoice_number}', 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://payments.shakesco.com/invoices/{invoice_number}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$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://payments.shakesco.com/invoices/{invoice_number}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://payments.shakesco.com/invoices/{invoice_number}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://payments.shakesco.com/invoices/{invoice_number}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"id": 1,
"user_id": 42,
"invoice_number": "INV-2026-a1b2c3d4",
"status": "pending",
"type": "public",
"currency": "USD",
"tax_rate": "0.00",
"is_business": true,
"from_store": false,
"receiver": "business@example.com",
"receiver_country": "US",
"payer_name": "Jane Doe",
"payer_email": "customer@example.com",
"payer_country": null,
"asset": null,
"amount": null,
"rate": null,
"tx_hash_link": null,
"receipt_number": null,
"payment_url": "https://pay.shakesco.com/@business/a1b2c3...",
"redirect_url": "https://yourstore.com/order/complete",
"expires_at": "2026-05-23T10:00:00.000000Z",
"scanned_at": null,
"paid_at": null,
"store_item_ids": null,
"name": "business",
"image": "https://example.com/avatar.jpg",
"created_at": "2026-05-16T10:00:00.000000Z",
"updated_at": "2026-05-16T10:00:00.000000Z",
"transaction_items": [
{
"id": 1,
"crypto_transaction_id": 1,
"description": "Platform Services",
"unit": "1",
"price": "1400",
"image": null,
"created_at": "2026-05-16T10:00:00.000000Z",
"updated_at": "2026-05-16T10:00:00.000000Z"
}
]
}
{ "message": "Transaction not found." }
For the complete documentation index, see llms.txt.
Returns a single invoice by its number. The response includes two extra fields injected by the API for payment-page rendering:
name (the receiver’s username) and image (the receiver’s profile photo URL).
Path Parameters
The invoice’s unique identifier (e.g.
INV-2026-a1b2c3d4)Response
The invoice identifier
"pending", "scanned", "paid", "expired", or "void"URL the customer opens to pay
URL the customer is sent to after paying, or
null if none was setWhether the transaction originated from the Shakesco store.
true for store transactions, false for a standard invoice you created through the API, and null when it does not apply. Use this to tell store sales apart from your own invoices.Receiver’s username (injected for payment-page rendering)
Receiver’s profile photo URL (injected for payment-page rendering)
Line items on the invoice
const response = await fetch(
"https://payments.shakesco.com/invoices/INV-2026-a1b2c3d4",
{ headers: { Authorization: `Bearer ${API_KEY}` } }
);
const invoice = await response.json();
{
"id": 1,
"user_id": 42,
"invoice_number": "INV-2026-a1b2c3d4",
"status": "pending",
"type": "public",
"currency": "USD",
"tax_rate": "0.00",
"is_business": true,
"from_store": false,
"receiver": "business@example.com",
"receiver_country": "US",
"payer_name": "Jane Doe",
"payer_email": "customer@example.com",
"payer_country": null,
"asset": null,
"amount": null,
"rate": null,
"tx_hash_link": null,
"receipt_number": null,
"payment_url": "https://pay.shakesco.com/@business/a1b2c3...",
"redirect_url": "https://yourstore.com/order/complete",
"expires_at": "2026-05-23T10:00:00.000000Z",
"scanned_at": null,
"paid_at": null,
"store_item_ids": null,
"name": "business",
"image": "https://example.com/avatar.jpg",
"created_at": "2026-05-16T10:00:00.000000Z",
"updated_at": "2026-05-16T10:00:00.000000Z",
"transaction_items": [
{
"id": 1,
"crypto_transaction_id": 1,
"description": "Platform Services",
"unit": "1",
"price": "1400",
"image": null,
"created_at": "2026-05-16T10:00:00.000000Z",
"updated_at": "2026-05-16T10:00:00.000000Z"
}
]
}
{ "message": "Transaction not found." }
⌘I