0

Update an adjustment line

by
Published Oct 17, 2025

Updates an existing adjustment line by setting field values. Any fields not provided remain unchanged. Permissions and other requirements SubscriptionAccounts Payable User typeBusiness PermissionsList, View, Edit Adjustment lines

Script sage_intacct Verified

The script

Submitted by hugo697 Bun
Verified 235 days ago
1
//native
2
type SageIntacct = {
3
	token: string
4
}
5
/**
6
 * Update an adjustment line
7
 * Updates an existing adjustment line by setting field values. Any fields not provided remain unchanged. 
8

9

10

11
Permissions and other requirements
12

13
SubscriptionAccounts Payable
14
User typeBusiness
15
PermissionsList, View, Edit Adjustment lines
16

17

18

19

20
 */
21
export async function main(
22
	auth: SageIntacct,
23
	key: string,
24
	body: {
25
		id?: string
26
		key?: string
27
		href?: string
28
		baseAmount?: string
29
		txnAmount?: string
30
		totalTxnAmount?: string
31
		memo?: string
32
		lineNumber?: string
33
		hasForm1099?: string
34
		form1099?: { type?: string; box?: string }
35
		adjustmentType?: string
36
		glAccount?: { key?: string; id?: string; name?: string; href?: string }
37
		overrideOffsetGLAccount?: {
38
			key?: string
39
			id?: string
40
			name?: string
41
			href?: string
42
		}
43
		accountLabel?: { key?: string; id?: string; href?: string }
44
		dimensions?: {
45
			location?: { key?: string; id?: string; name?: string; href?: string }
46
			department?: { key?: string; id?: string; name?: string; href?: string }
47
			employee?: { key?: string; id?: string; name?: string; href?: string }
48
			project?: { key?: string; id?: string; name?: string; href?: string }
49
			customer?: { key?: string; id?: string; name?: string; href?: string }
50
			vendor?: { key?: string; id?: string; name?: string; href?: string }
51
			item?: { key?: string; id?: string; name?: string; href?: string }
52
			warehouse?: { key?: string; id?: string; name?: string; href?: string }
53
			class?: { key?: string; id?: string; name?: string; href?: string }
54
			task?: { id?: string; key?: string; name?: string; href?: string }
55
			costType?: { id?: string; key?: string; name?: string; href?: string }
56
			asset?: { id?: string; key?: string; name?: string; href?: string }
57
			contract?: { id?: string; key?: string; name?: string; href?: string }
58
			affiliateEntity?: {
59
				key?: string
60
				id?: string
61
				href?: string
62
				name?: string
63
			}
64
		} & {
65
			department?: { key?: string; id?: string; name?: string; href?: string }
66
			location?: { key?: string; id?: string; name?: string; href?: string }
67
		}
68
		currency?: {
69
			baseCurrency?: string
70
			txnCurrency?: string
71
			exchangeRate?: { date?: string; rate?: string; typeId?: string }
72
		}
73
		paymentInformation?: {
74
			totalBaseAmountPaid?: string
75
			txnTotalPaid?: string
76
			totalBaseAmountSelected?: string
77
			txnTotalSelected?: string
78
		}
79
		taxEntries?: {
80
			key?: string
81
			id?: string
82
			baseTaxAmount?: string
83
			txnTaxAmount?: string
84
			taxRate?: number
85
		} & {
86
			purchasingTaxDetail?: { key?: string; id?: string; href?: string }
87
			adjustmentLine?: { id?: string; key?: string; href?: string }
88
		}[]
89
		apAdjustment?: { id?: string; key?: string; href?: string }
90
		audit?: {
91
			createdDateTime?: string
92
			modifiedDateTime?: string
93
			createdBy?: string
94
			modifiedBy?: string
95
		}
96
	}
97
) {
98
	const url = new URL(
99
		`https://api.intacct.com/ia/api/v1/objects/accounts-payable/adjustment-line/${key}`
100
	)
101

102
	const response = await fetch(url, {
103
		method: 'PATCH',
104
		headers: {
105
			'Content-Type': 'application/json',
106
			Authorization: 'Bearer ' + auth.token
107
		},
108
		body: JSON.stringify(body)
109
	})
110
	if (!response.ok) {
111
		const text = await response.text()
112
		throw new Error(`${response.status} ${text}`)
113
	}
114
	return await response.json()
115
}
116