//native
type SageIntacct = {
token: string
}
/**
* Update a financial institution
* Updates an existing financial institution by setting field values. Any fields not provided remain unchanged.
Permissions and other requirements
SubscriptionCash Management, Sage Cloud Services
User typeBusiness user with admin permissions
PermissionsMap accounts, List, View, Add, Edit Financial Institution
*/
export async function main(
auth: SageIntacct,
key: string,
body: {
key?: string
id?: string
name?: string
addOnServices?: {
name?: string
serviceContract?: {
key?: string
accountType?: 'checking' | 'savings' | 'creditCard'
}
}[]
checkingAccounts?: {
key?: string
externalBankAccount?: { id?: string; name?: string }
requestedStartDate?: string
}[]
savingsAccounts?: {
key?: string
externalBankAccount?: { id?: string; name?: string }
requestedStartDate?: string
}[]
creditCards?: {
key?: string
externalBankAccount?: { id?: string; name?: string }
requestedStartDate?: string
}[]
totalAccounts?: number
href?: string
audit?: {
createdDateTime?: string
modifiedDateTime?: string
createdBy?: string
modifiedBy?: string
} & { modifiedBy?: string }
entity?: { key?: string; id?: string; name?: string; href?: string }
} & {}
) {
const url = new URL(
`https://api.intacct.com/ia/api/v1/objects/cash-management/financial-institution/${key}`
)
const response = await fetch(url, {
method: 'PATCH',
headers: {
'Content-Type': 'application/json',
Authorization: 'Bearer ' + auth.token
},
body: JSON.stringify(body)
})
if (!response.ok) {
const text = await response.text()
throw new Error(`${response.status} ${text}`)
}
return await response.json()
}
Submitted by hugo697 235 days ago