Skip to main content
POST
Create settlement

Authorizations

Authorization
string
header
required

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

X-Organization-Id
string

Required with OAuth access tokens. Optional with organization API keys; if supplied, it must match the key's organization.

Body

application/json
estimatedArrivalDate
string<date>
required
totalGross
number
required
Required range: x >= 0
totalFees
number
required
Required range: x >= 0
totalNet
number
required
Required range: x >= 0
paymentCount
integer
required
Required range: x >= 0
provider
enum<string>
default:MANUAL
Available options:
STRIPE,
PUSHPAY,
SUBSPLASH,
TITHELY,
PLANNING_CENTER,
ROCK_RMS,
RAMP,
DIVVY,
MANUAL
externalId
string

Generated when omitted for a manual settlement.

externalReference
string | null
actualArrivalDate
string<date> | null
currency
string
default:USD
Required string length: 3
settlementType
string | null
status
enum<string>
Available options:
PENDING,
IN_TRANSIT,
DEPOSITED,
FAILED,
CANCELLED
errorMessage
string | null
failureCode
string | null
depositBasis
enum<string> | null
Available options:
GROSS,
NET
givingIntegrationId
string | null
givingMerchantId
string | null
contributionIds
string[]
Maximum array length: 10000
givingBatchIds
string[]
Maximum array length: 10000
dimensions
object[]
Maximum array length: 100

Response

Created settlement

Recorded settlement values plus independently calculated linked-contribution totals. Accounting and bank-link state are read-only; raw provider metadata, sync diagnostics, accounting details, and fingerprints are excluded.

id
string
required
provider
enum<string>
required
Available options:
STRIPE,
PUSHPAY,
SUBSPLASH,
TITHELY,
PLANNING_CENTER,
ROCK_RMS,
RAMP,
DIVVY,
MANUAL
externalId
string
required
estimatedArrivalDate
string<date-time>
required

Calendar day represented as a UTC-midnight ISO timestamp.

recordedTotals
object
required
linkedContributionTotals
object
required
currency
string
required
Required string length: 3
status
enum<string>
required
Available options:
PENDING,
IN_TRANSIT,
DEPOSITED,
MATCHED,
RECONCILED,
FAILED,
CANCELLED
accounting
object
required
read-only
isFrozen
boolean
required
read-only
createdAt
string<date-time>
required
updatedAt
string<date-time>
required
externalReference
string | null
actualArrivalDate
string<date-time> | null

Calendar day represented as a UTC-midnight ISO timestamp.

settlementType
string | null
errorMessage
string | null
failureCode
string | null
depositBasis
enum<string> | null
Available options:
GROSS,
NET
givingIntegration
object | null
merchant
object | null
dimensions
object[]
batches
object[]
Last modified on August 23, 2026