{
"id": "<string>",
"externalId": "<string>",
"description": "<string>",
"amount": 1,
"direction": "INFLOW",
"transactionType": "DEPOSIT",
"date": "2023-11-07T05:31:56Z",
"referenceNumber": "<string>",
"source": "MANUAL",
"reviewStatus": "DRAFT",
"isReconciled": true,
"is1099Excluded": true,
"bankAccount": {
"id": "<string>",
"name": "<string>",
"mask": "<string>",
"accountType": "<string>"
},
"sourceAccount": {
"id": "<string>",
"accountNumber": "<string>",
"name": "<string>",
"accountType": "<string>"
},
"fund": {
"id": "<string>",
"name": "<string>",
"fundType": "<string>"
},
"vendor": {
"id": "<string>",
"name": "<string>"
},
"dimensions": [
{
"dimensionId": "<string>",
"dimensionValueId": "<string>",
"dimensionName": "<string>",
"dimensionValueName": "<string>"
}
],
"coding": {
"status": "UNCATEGORIZED",
"journalEntryId": "<string>",
"entryNumber": "<string>",
"isSplit": true,
"lines": [
{
"id": "<string>",
"account": {
"id": "<string>",
"accountNumber": "<string>",
"name": "<string>",
"accountType": "<string>"
},
"fund": {
"id": "<string>",
"name": "<string>",
"fundType": "<string>"
},
"amount": 123,
"memo": "<string>",
"dimensions": [
{
"dimensionId": "<string>",
"dimensionValueId": "<string>",
"dimensionName": "<string>",
"dimensionValueName": "<string>"
}
]
}
],
"missingRequiredDimensions": [
{
"dimensionId": "<string>",
"dimensionName": "<string>"
}
]
},
"suggestion": {
"account": {
"id": "<string>",
"accountNumber": "<string>",
"name": "<string>",
"accountType": "<string>"
},
"fund": {
"id": "<string>",
"name": "<string>",
"fundType": "<string>"
},
"confidence": 50
},
"attachmentCount": 1,
"canManage": true,
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z"
}{
"code": "forbidden",
"message": "You do not have access to this organization.",
"error": "You do not have access to this organization.",
"details": {
"fields": [
{
"field": "amount",
"code": "invalid_type"
}
]
}
}{
"code": "forbidden",
"message": "You do not have access to this organization.",
"error": "You do not have access to this organization.",
"details": {
"fields": [
{
"field": "amount",
"code": "invalid_type"
}
]
}
}{
"code": "forbidden",
"message": "You do not have access to this organization.",
"error": "You do not have access to this organization.",
"details": {
"fields": [
{
"field": "amount",
"code": "invalid_type"
}
]
}
}{
"code": "forbidden",
"message": "You do not have access to this organization.",
"error": "You do not have access to this organization.",
"details": {
"fields": [
{
"field": "amount",
"code": "invalid_type"
}
]
}
}{
"code": "forbidden",
"message": "You do not have access to this organization.",
"error": "You do not have access to this organization.",
"details": {
"fields": [
{
"field": "amount",
"code": "invalid_type"
}
]
}
}{
"code": "forbidden",
"message": "You do not have access to this organization.",
"error": "You do not have access to this organization.",
"details": {
"fields": [
{
"field": "amount",
"code": "invalid_type"
}
]
}
}{
"code": "forbidden",
"message": "You do not have access to this organization.",
"error": "You do not have access to this organization.",
"details": {
"fields": [
{
"field": "amount",
"code": "invalid_type"
}
]
}
}{
"code": "forbidden",
"message": "You do not have access to this organization.",
"error": "You do not have access to this organization.",
"details": {
"fields": [
{
"field": "amount",
"code": "invalid_type"
}
]
}
}Code or split a transaction
Creates or replaces the transaction’s draft journal entry. Approved transactions must be unapproved first, and reconciled transactions cannot be recoded. Returns 409 when the transaction is in an open reconciliation.
{
"id": "<string>",
"externalId": "<string>",
"description": "<string>",
"amount": 1,
"direction": "INFLOW",
"transactionType": "DEPOSIT",
"date": "2023-11-07T05:31:56Z",
"referenceNumber": "<string>",
"source": "MANUAL",
"reviewStatus": "DRAFT",
"isReconciled": true,
"is1099Excluded": true,
"bankAccount": {
"id": "<string>",
"name": "<string>",
"mask": "<string>",
"accountType": "<string>"
},
"sourceAccount": {
"id": "<string>",
"accountNumber": "<string>",
"name": "<string>",
"accountType": "<string>"
},
"fund": {
"id": "<string>",
"name": "<string>",
"fundType": "<string>"
},
"vendor": {
"id": "<string>",
"name": "<string>"
},
"dimensions": [
{
"dimensionId": "<string>",
"dimensionValueId": "<string>",
"dimensionName": "<string>",
"dimensionValueName": "<string>"
}
],
"coding": {
"status": "UNCATEGORIZED",
"journalEntryId": "<string>",
"entryNumber": "<string>",
"isSplit": true,
"lines": [
{
"id": "<string>",
"account": {
"id": "<string>",
"accountNumber": "<string>",
"name": "<string>",
"accountType": "<string>"
},
"fund": {
"id": "<string>",
"name": "<string>",
"fundType": "<string>"
},
"amount": 123,
"memo": "<string>",
"dimensions": [
{
"dimensionId": "<string>",
"dimensionValueId": "<string>",
"dimensionName": "<string>",
"dimensionValueName": "<string>"
}
]
}
],
"missingRequiredDimensions": [
{
"dimensionId": "<string>",
"dimensionName": "<string>"
}
]
},
"suggestion": {
"account": {
"id": "<string>",
"accountNumber": "<string>",
"name": "<string>",
"accountType": "<string>"
},
"fund": {
"id": "<string>",
"name": "<string>",
"fundType": "<string>"
},
"confidence": 50
},
"attachmentCount": 1,
"canManage": true,
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z"
}{
"code": "forbidden",
"message": "You do not have access to this organization.",
"error": "You do not have access to this organization.",
"details": {
"fields": [
{
"field": "amount",
"code": "invalid_type"
}
]
}
}{
"code": "forbidden",
"message": "You do not have access to this organization.",
"error": "You do not have access to this organization.",
"details": {
"fields": [
{
"field": "amount",
"code": "invalid_type"
}
]
}
}{
"code": "forbidden",
"message": "You do not have access to this organization.",
"error": "You do not have access to this organization.",
"details": {
"fields": [
{
"field": "amount",
"code": "invalid_type"
}
]
}
}{
"code": "forbidden",
"message": "You do not have access to this organization.",
"error": "You do not have access to this organization.",
"details": {
"fields": [
{
"field": "amount",
"code": "invalid_type"
}
]
}
}{
"code": "forbidden",
"message": "You do not have access to this organization.",
"error": "You do not have access to this organization.",
"details": {
"fields": [
{
"field": "amount",
"code": "invalid_type"
}
]
}
}{
"code": "forbidden",
"message": "You do not have access to this organization.",
"error": "You do not have access to this organization.",
"details": {
"fields": [
{
"field": "amount",
"code": "invalid_type"
}
]
}
}{
"code": "forbidden",
"message": "You do not have access to this organization.",
"error": "You do not have access to this organization.",
"details": {
"fields": [
{
"field": "amount",
"code": "invalid_type"
}
]
}
}{
"code": "forbidden",
"message": "You do not have access to this organization.",
"error": "You do not have access to this organization.",
"details": {
"fields": [
{
"field": "amount",
"code": "invalid_type"
}
]
}
}Authorizations
Organization API key created in Grain Settings → API. The key determines the organization and is limited to its assigned resource scopes. Write scopes imply the corresponding read scope.
Headers
Required with OAuth access tokens for resource requests. Omit only for GET /api/v1/organizations. Optional with organization API keys; if supplied with an API key, it must match the key's organization.
Path Parameters
Resource ID
Body
Replaces the transaction's coding. Line amounts must sum to the transaction amount. One line codes to a single account; several lines split the transaction.
1 - 250 elementsHide child attributes
Hide child attributes
Active postable account from GET /accounts. Cannot be the transaction's own bank or card account.
1Non-zero. Negative amounts offset other lines, such as a refund inside a split.
Defaults to defaultFundId, then the transaction's fund, then the organization default fund.
120001REGULAR, ADJUSTING, CLOSING, REVERSING Response
Coded transaction
Integrator-supplied ID, unique within the organization.
Always positive. Use direction for the sign.
x >= 0INFLOW, OUTFLOW DEPOSIT, WITHDRAWAL, TRANSFER, ADJUSTMENT Calendar day represented as a UTC-midnight ISO timestamp.
MANUAL, PLAID, IMPORT, PLANNING_CENTER, PUSHPAY, TITHELY, SUBSPLASH, ROCK_RMS, RAMP, DIVVY, OVERFLOW DRAFT, PENDING_REVIEW, PENDING_TRANSFER_MATCH, PENDING_TRANSFER_CONFIRM, AUTO_CATEGORIZED, APPROVED, POSTED, REJECTED Hide child attributes
Hide child attributes
UNCATEGORIZED has no journal entry. CATEGORIZED has a draft entry. APPROVED has a posted entry.
UNCATEGORIZED, CATEGORIZED, APPROVED Category-side journal lines. The bank or card line is omitted.
Hide child attributes
Hide child attributes
Journal entry line ID.
Allocated amount. Positive values allocate the transaction; negative values offset another line.
Rule or AI coding suggestion awaiting review.
Hide child attributes
Hide child attributes
0 <= x <= 100x >= 0Whether this credential can edit the transaction.