curl -X POST https://acme.orgo.space/api/v1/invoices/create-for-bank-transfer \
-H "Api-Token: $ORGO_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"productPrice": "/api/v1/product_prices/22",
"billingName": "James Patterson",
"billingAddress": "123 Beacon Street, Boston, MA 02108",
"billingEmail": "james.patterson@example.com"
}'await fetch("https://acme.orgo.space/api/v1/invoices/create-for-bank-transfer", {
method: "POST",
headers: {
"Api-Token": process.env.ORGO_API_TOKEN,
"Content-Type": "application/json",
},
body: JSON.stringify({
productPrice: "/api/v1/product_prices/22",
billingName: "James Patterson",
billingAddress: "123 Beacon Street, Boston, MA 02108",
billingEmail: "james.patterson@example.com",
}),
});
$client->post('/api/v1/invoices/create-for-bank-transfer', [
'headers' => ['Api-Token' => getenv('ORGO_API_TOKEN')],
'json' => [
'productPrice' => '/api/v1/product_prices/22',
'billingName' => 'James Patterson',
'billingAddress' => '123 Beacon Street, Boston, MA 02108',
'billingEmail' => 'james.patterson@example.com',
],
]);
import requests
url = "https://app.orgo.space/api/v1/invoices/create-for-bank-transfer"
payload = {
"productPrice": "/api/v1/product_prices/22",
"billingName": "James Patterson",
"billingAddress": "123 Beacon Street, Boston, MA 02108",
"billingEmail": "james.patterson@example.com",
"vatNumber": None
}
headers = {
"Api-Token": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://app.orgo.space/api/v1/invoices/create-for-bank-transfer"
payload := strings.NewReader("{\n \"productPrice\": \"/api/v1/product_prices/22\",\n \"billingName\": \"James Patterson\",\n \"billingAddress\": \"123 Beacon Street, Boston, MA 02108\",\n \"billingEmail\": \"james.patterson@example.com\",\n \"vatNumber\": null\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Api-Token", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://app.orgo.space/api/v1/invoices/create-for-bank-transfer")
.header("Api-Token", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"productPrice\": \"/api/v1/product_prices/22\",\n \"billingName\": \"James Patterson\",\n \"billingAddress\": \"123 Beacon Street, Boston, MA 02108\",\n \"billingEmail\": \"james.patterson@example.com\",\n \"vatNumber\": null\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.orgo.space/api/v1/invoices/create-for-bank-transfer")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Api-Token"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"productPrice\": \"/api/v1/product_prices/22\",\n \"billingName\": \"James Patterson\",\n \"billingAddress\": \"123 Beacon Street, Boston, MA 02108\",\n \"billingEmail\": \"james.patterson@example.com\",\n \"vatNumber\": null\n}"
response = http.request(request)
puts response.read_body{
"id": 284,
"number": "INV-2026-00284",
"status": "PENDING",
"amount": 5000,
"currency": "USD",
"billingName": "James Patterson",
"billingAddress": "123 Beacon Street, Boston, MA 02108",
"billingEmail": "james.patterson@example.com",
"pdfUrl": "https://cdn.orgo.space/invoices/INV-2026-00284.pdf",
"dateCreated": "2026-01-15T10:30:00+00:00",
"dateDue": "2026-02-14T10:30:00+00:00"
}Create bank transfer invoice
Creates an unpaid membership renewal invoice for bank transfer payment by the authenticated user. Supports two modes: interval-based fees (pass fees object with date ranges and amounts) or regular fees (uses the user assigned product price). Validates no other pending bank transfer invoice exists. Returns the invoice series, amount, currency, and banking info (account holder, IBAN) for the user to complete the transfer. No admin permission required — available to any authenticated member.
curl -X POST https://acme.orgo.space/api/v1/invoices/create-for-bank-transfer \
-H "Api-Token: $ORGO_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"productPrice": "/api/v1/product_prices/22",
"billingName": "James Patterson",
"billingAddress": "123 Beacon Street, Boston, MA 02108",
"billingEmail": "james.patterson@example.com"
}'await fetch("https://acme.orgo.space/api/v1/invoices/create-for-bank-transfer", {
method: "POST",
headers: {
"Api-Token": process.env.ORGO_API_TOKEN,
"Content-Type": "application/json",
},
body: JSON.stringify({
productPrice: "/api/v1/product_prices/22",
billingName: "James Patterson",
billingAddress: "123 Beacon Street, Boston, MA 02108",
billingEmail: "james.patterson@example.com",
}),
});
$client->post('/api/v1/invoices/create-for-bank-transfer', [
'headers' => ['Api-Token' => getenv('ORGO_API_TOKEN')],
'json' => [
'productPrice' => '/api/v1/product_prices/22',
'billingName' => 'James Patterson',
'billingAddress' => '123 Beacon Street, Boston, MA 02108',
'billingEmail' => 'james.patterson@example.com',
],
]);
import requests
url = "https://app.orgo.space/api/v1/invoices/create-for-bank-transfer"
payload = {
"productPrice": "/api/v1/product_prices/22",
"billingName": "James Patterson",
"billingAddress": "123 Beacon Street, Boston, MA 02108",
"billingEmail": "james.patterson@example.com",
"vatNumber": None
}
headers = {
"Api-Token": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://app.orgo.space/api/v1/invoices/create-for-bank-transfer"
payload := strings.NewReader("{\n \"productPrice\": \"/api/v1/product_prices/22\",\n \"billingName\": \"James Patterson\",\n \"billingAddress\": \"123 Beacon Street, Boston, MA 02108\",\n \"billingEmail\": \"james.patterson@example.com\",\n \"vatNumber\": null\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Api-Token", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://app.orgo.space/api/v1/invoices/create-for-bank-transfer")
.header("Api-Token", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"productPrice\": \"/api/v1/product_prices/22\",\n \"billingName\": \"James Patterson\",\n \"billingAddress\": \"123 Beacon Street, Boston, MA 02108\",\n \"billingEmail\": \"james.patterson@example.com\",\n \"vatNumber\": null\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.orgo.space/api/v1/invoices/create-for-bank-transfer")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Api-Token"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"productPrice\": \"/api/v1/product_prices/22\",\n \"billingName\": \"James Patterson\",\n \"billingAddress\": \"123 Beacon Street, Boston, MA 02108\",\n \"billingEmail\": \"james.patterson@example.com\",\n \"vatNumber\": null\n}"
response = http.request(request)
puts response.read_body{
"id": 284,
"number": "INV-2026-00284",
"status": "PENDING",
"amount": 5000,
"currency": "USD",
"billingName": "James Patterson",
"billingAddress": "123 Beacon Street, Boston, MA 02108",
"billingEmail": "james.patterson@example.com",
"pdfUrl": "https://cdn.orgo.space/invoices/INV-2026-00284.pdf",
"dateCreated": "2026-01-15T10:30:00+00:00",
"dateDue": "2026-02-14T10:30:00+00:00"
}Authorizations
Server-to-server authentication. Generate a token in the admin UI at
Settings → Developers → API Access. Send the raw token in the
Api-Token header — there is no Bearer prefix.
Tokens can be marked read-only at creation time, in which case the API
rejects any non-GET request with 403 Forbidden.
Body
The new Invoice resource
"/api/v1/users/1"
"/api/v1/contacts/1"
"/api/v1/companies/1"
"/api/v1/users/1"
"/api/v1/product_prices/1"
Response
Invoice resource created
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
"/api/v1/product_prices/1"

