Transactions
Create manual transactions in bulk
Creates up to 500 manual transactions in one request. If any transaction fails, none are created. Requires an Idempotency-Key.
post/transactions/bulk
Request
- Base URL: https://next-api.saturation.io/v1
- URL: https://next-api.saturation.io/v1/transactions/bulk
- Auth: HTTP bearer
Headers
Idempotency-Keystring required
A unique 16-255 character key. Reusing the key with the same body returns the first result. Reusing it with a different body returns 409 idempotency_conflict.
Request body
Example request
{
"transactions": [
{
"type": "Invoice",
"amount": {
"amount": 152900,
"currency": "USD"
},
"status": "posted",
"projectId": "txn_8f2a1c9e",
"contactId": "txn_8f2a1c9e",
"budgetLineId": "txn_8f2a1c9e",
"fringeId": "txn_8f2a1c9e"
}
]
}Response
The created transactions.
Example response
{
"data": [
{
"id": "txn_8f2a1c9e",
"source": "manual",
"type": "CreditCard",
"status": "posted",
"amount": {
"amount": 152900,
"currency": "USD"
},
"exchangeRateSource": "bank",
"timestamp": "2026-05-20T14:03:00.000Z",
"contactId": "txn_8f2a1c9e",
"projectId": "txn_8f2a1c9e",
"budgetLineId": "txn_8f2a1c9e",
"fringeId": "txn_8f2a1c9e",
"purchaseOrderId": "txn_8f2a1c9e",
"contact": {
"id": "txn_8f2a1c9e"
},
"documents": [
{
"id": "txn_8f2a1c9e"
}
],
"items": [
{
"id": "txn_8f2a1c9e",
"lineNumber": "1",
"budgetLineId": "txn_8f2a1c9e",
"fringeId": "txn_8f2a1c9e",
"contactId": "txn_8f2a1c9e",
"qty": "3",
"unit": "Day",
"customUnitId": "txn_8f2a1c9e",
"amount": {
"amount": 152900,
"currency": "USD"
},
"account": {
"id": "txn_8f2a1c9e",
"name": "Camera",
"code": "1200"
},
"tagIds": [
"txn_8f2a1c9e"
],
"tags": [
{
"id": "txn_8f2a1c9e"
}
]
}
],
"account": {
"id": "txn_8f2a1c9e",
"name": "Camera",
"code": "1200"
},
"purchaseOrder": {
"id": "txn_8f2a1c9e"
}
}
],
"nextCursor": "eyJpZCI6InR4bl84ZjJhMWM5ZSJ9",
"statusReachability": {
"manual": [
"posted",
"void",
"projected"
],
"plaid": [
"pending",
"posted",
"void",
"needs_review"
],
"saturation_pay": [
"unpaid",
"pending",
"posted",
"void",
"rejected"
],
"saturation_credit": [
"pending",
"posted",
"void",
"needs_review",
"rejected"
]
}
}Changes
No recorded changes to this operation across all 4 revisions of this API.