Edits history of script submission #18877 for ' Create a tax return (sage_intacct)'

  • bun
    One script reply has been approved by the moderators
    Ap­pro­ved
    //native
    type SageIntacct = {
    	token: string
    }
    /**
     * Create a tax return
     * Creates a new tax return.
     */
    export async function main(
    	auth: SageIntacct,
    	body: {
    		key?: string
    		id?: string
    		href?: string
    		name?: string
    		taxId?: string
    		recipientEmail?: string
    		submissionPeriodStartDate?: string
    		submissionPeriodEndDate?: string
    		submissionDate?: string
    		submissionType?: 'manual' | 'electronic'
    		submittersEmail?: string
    		legalCountryCode?: 'au' | 'gb' | 'za' | 'ca'
    		setEmailAddressAsDefault?: false | true
    		isAdjustingCompleted?: false | true
    		currentStepStage?:
    			| 'prepareTaxData'
    			| 'transmitTaxData'
    			| 'prepareTaxReturn'
    			| 'submitToGovernment'
    			| 'transmitRrFilesToSage'
    			| 'manualAdjustment'
    		currentStepStatus?:
    			| 'completed'
    			| 'started'
    			| 'notStarted'
    			| 'failed'
    			| 'inTransit'
    			| 'transitCompleted'
    			| 'transitFailed'
    			| 'processingStarted'
    			| 'processingCompleted'
    			| 'processingFailed'
    			| 'notApplicable'
    		bundleNumber?: string
    		receiptId?: string
    		adjustmentNotes?: string
    		taxProcessingSteps?: {
    			stage?:
    				| 'prepareTaxData'
    				| 'transmitTaxData'
    				| 'prepareTaxReturn'
    				| 'submitToGovernment'
    				| 'transmitRrFilesToSage'
    				| 'manualAdjustment'
    			status?:
    				| 'completed'
    				| 'started'
    				| 'notStarted'
    				| 'failed'
    				| 'inTransit'
    				| 'transitCompleted'
    				| 'transitFailed'
    				| 'processingStarted'
    				| 'processingCompleted'
    				| 'processingFailed'
    				| 'notApplicable'
    			description?: string
    			recentActivityDate?: string
    		}[]
    		relatedFiles?: {
    			fileName?: string
    			stage?: string
    			creationDate?: string
    		}[]
    		reportingEntity?: { key?: string; id?: string; href?: string }
    		taxSolution?: { key?: string; id?: string; href?: string }
    	} & {}
    ) {
    	const url = new URL(`https://api.intacct.com/ia/api/v1/objects/tax/tax-return`)
    
    	const response = await fetch(url, {
    		method: 'POST',
    		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