0

Create a credit card transaction template

by
Published Oct 17, 2025

Creates a new credit card transaction template.

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
 * Create a credit card transaction template
7
 * Creates a new credit card transaction template.
8
 */
9
export async function main(
10
	auth: SageIntacct,
11
	body: {
12
		key?: string
13
		id?: string
14
		href?: string
15
		name?: string
16
		description?: string
17
		payee?: string
18
		numberOfRulesUsingTemplate?: number
19
		taxImplication?: 'none' | 'inbound'
20
		isInclusiveTax?: false | true
21
		taxSchedule?: { key?: string; id?: string; name?: string; href?: string }
22
		taxSolution?: { key?: string; id?: string; href?: string }
23
		lines?: {
24
			key?: string
25
			id?: string
26
			href?: string
27
			memo?: string
28
			lineNumber?: number
29
			isBillable?: false | true
30
			exchangeRate?: { date?: string; rate?: number; typeId?: string }
31
			accountLabel?: { key?: string; id?: string; href?: string }
32
			glAccount?: { key?: string; id?: string; name?: string; href?: string }
33
			dimensions?: {
34
				location?: { key?: string; id?: string; name?: string; href?: string }
35
				department?: {
36
					key?: string
37
					id?: string
38
					name?: string
39
					href?: string
40
				}
41
				employee?: { key?: string; id?: string; name?: string; href?: string }
42
				project?: { key?: string; id?: string; name?: string; href?: string }
43
				customer?: { key?: string; id?: string; name?: string; href?: string }
44
				vendor?: { key?: string; id?: string; name?: string; href?: string }
45
				item?: { key?: string; id?: string; name?: string; href?: string }
46
				warehouse?: { key?: string; id?: string; name?: string; href?: string }
47
				class?: { key?: string; id?: string; name?: string; href?: string }
48
				task?: { id?: string; key?: string; name?: string; href?: string }
49
				costType?: { id?: string; key?: string; name?: string; href?: string }
50
				asset?: { id?: string; key?: string; name?: string; href?: string }
51
				contract?: { id?: string; key?: string; name?: string; href?: string }
52
				affiliateEntity?: {
53
					key?: string
54
					id?: string
55
					href?: string
56
					name?: string
57
				}
58
			}
59
			creditCardTxnTemplate?: { id?: string; key?: string; href?: string }
60
			status?: 'active' | 'inactive'
61
			audit?: {
62
				createdDateTime?: string
63
				modifiedDateTime?: string
64
				createdBy?: string
65
				modifiedBy?: string
66
			}
67
		}[]
68
		audit?: {
69
			createdDateTime?: string
70
			modifiedDateTime?: string
71
			createdBy?: string
72
			modifiedBy?: string
73
		} & { createdDateTime?: string }
74
		status?: 'active' | 'inactive'
75
		entity?: { key?: string; id?: string; name?: string; href?: string }
76
	} & {}
77
) {
78
	const url = new URL(
79
		`https://api.intacct.com/ia/api/v1/objects/cash-management/credit-card-txn-template`
80
	)
81

82
	const response = await fetch(url, {
83
		method: 'POST',
84
		headers: {
85
			'Content-Type': 'application/json',
86
			Authorization: 'Bearer ' + auth.token
87
		},
88
		body: JSON.stringify(body)
89
	})
90
	if (!response.ok) {
91
		const text = await response.text()
92
		throw new Error(`${response.status} ${text}`)
93
	}
94
	return await response.json()
95
}
96