Expense Report Ingestion field details

This API helps expense report information to be sent to AppZen from the expense management system.

 

Name Type Description
Customer_id integer($int64) [Header] Unique ID for each customer
customer id and customer key are unique per customer and not per division/location
expense_reports{   This holds the details of a report being ingested
addendum boolean Not used for integration. Send as ‘False’.

True - if it is a modification in an existing report, False - otherwise
amount* String Total amount
country* String user's org country code in ISO3 format
countryCode String user's org country code in ISO2 format
curr* String Org currency/reimbursement currency ISO3
date*  String Submission date of expense report

Allowed formats: yyyy-MM-dd'T'HH:mm:ss, yyyy-MM-dd'T'HH:mm:ss.SSS, yyyy-MM-dd'T'HH:mm:ss.SSSZ, yyyy-MM-dd hh:mm:ss, yyyy-MM-dd hh:mm:ss.SSS, yyyy-MM-dd hh:mm:ss.SSSZ
desc string Description of expense report
ecdId integer($int64) Auto generated employee Id
Not mandatory: specific to AppZen
ecdPath string This basically defines the hierarchy of an employee
Not mandatory: specific to AppZen
elccpercharges {   Personal credit card expense lines details (Check DS)
cardId string Unique ID of personal credit card
cardSource string Source of the card
cardType string Type of the card, For ex: AMEX
ccTrxId string Credit card transaction ID
folioType string  
refNumber string Reference number of the transaction made by the card
transactionAmt string The amount that the employee input in the expense management software for the particular transaction
transactionDate string The date that the employee input in the expense management software for the particular transaction
}    
elines* {   This holds the information of expense lines.
cardTransactionDetails {   This holds information of the card through which transaction was done
AccountNumber string Account number associated with the card
AccountNumberLastSegment string Last 4 digits of the card with which transaction is made
CardDescription string Description of the card
CardProgramName string  
CardTypeCode string Type of credit card. For Ex: 'Personal', 'Corporate'
Description string  
ExchangeRateFromBillingToEmployeeCurrency string  
MasterCardCode string  
MerchantCity string City to which Merchant belongs to
MerchantCountryCode string Country code of Merchant's Country in ISO2 format
MerchantReferenceNumber string Reference number of a Merchant
MerchantState string State to which Merchant belongs to
PostedAlphaCode string  
PostedAmount string  
PostedDate string  
SIC_Code string  
TaxAmount string Total Tax amount
TransactionAlphaCode string  
TransactionAmount string The amount paid in the transaction
TransactionCCTType string  
TransactionDate string The date of transaction
TransactionID string Unique ID for the transaction
TransactionMerchantName string Merchant name for which the transaction is made
TransactionReferenceNumber string The reference number of the transaction made by the credit card
merchantId integer($int64) The unique ID of the merchant
}    
comments string The line level comments entered by the user
     
elExternalLineId string The unique number attached to each expense line.
elImageDetails Array Extension of all line level attachment files. e.g. for image1.jpeg, jpeg should be added to this array.
imageId string AppZen generated ID
imageType string MSG, DOC, DOCX, XLS, XLSX, PDF, PNG, JPG, JPEG, PJPEG, GIF, TIFF, UNSUPPORTED_IMAGE_TYPE
elItemizedFlag* string Set it as true if current line is a child line/itemized line
"false": If the flag is NOT to be set,
"true": If the flag is to be set
elItemizedLineNumber string The line number if the child/itemized line
elMileageUrl string  
elParentLineNumber string Pass the elineid of the parent line if the current line id is the child line else it is not required
elWayPoints{    
location string  
stopover string  
}    
elaccounts {    
account_description string  
amount string  
fieldLabel string  
oraParam1 string  
oraParam2 string  
oraParam3 string  
oraParam4 string  
oracleFieldName string  
oracleObjectName string  
params{    
< * >: string  
}    
projectid string  
taskid string  
text string  
value string  
}    
elallocs{   This holds the information of expense line allocation.

Note:
Cost center details should be populated against the field 'custom_3'
amount string  
custom3 {   This is used to send the cost center details of the user
fieldName string Name of the custom field [elcostcenter]
text string Actual Custom Field Name. [cost center name]
value string The value in the Org Unit or Custom field.[The cost center value]
}    
elamount* string Total Reimbursement amount
elattendees* {   details of the attendees of an expense line
amountByAttendee string Amount per attendee
attendeeCount integer($int32) Total count of the attendees
attendeeType string Type of attendee
elExternalAttendeeId string External Attendee ID
elineId string unique sequence for that expense line
employeeFlag string Checks if attendee is an employee
employeeId string ID if the employee
employer string Name of the employer
employerAddr string Address of the Employer
name string Name of the attendee
orgId string  
taxId string  
title string  
}    
elcardsource string  
elccid string  
elcompliances {    
description string  
response string  
type string  
}    
elconvrate string conversion rate from transaction currency to reimbursement currency
elcurr* string Reimbursement currency
eldate* string The date when expense was made. 
Allowed formats: yyyy-MM-dd'T'HH:mm:ss, yyyy-MM-dd'T'HH:mm:ss.SSS, yyyy-MM-dd'T'HH:mm:ss.SSSZ, yyyy-MM-dd hh:mm:ss, yyyy-MM-dd hh:mm:ss.SSS, yyyy-MM-dd hh:mm:ss.SSSZ
eldestination string  
eldetails {   any additional details of an expense report can be sent here
these names needs to be confirmed with AppZen
amount string Amount entered for reimbursement
currCode string currency code for the report currency
empID string Employee ID of the user who submitted the report
endExpDate string  
expStatusCode string Status code of the expense report
expType string Expense type
expTypeCode string Code of the expense type used in a line
fieldLabel string For ex: merchant
fieldName string For ex: merchant
invNum string  
justification string  
lineNum string  
oracleFieldName string For ex: merchant
orgId string  
purpose string  
recCurrAmt string  
recCurrCode string  
repHdrId string  
repLineId string  
stExpDate string  
taxAuthorityLabel string  
taxName string  
taxPostedAmt string  
taxReclaimPostedAmount string  
taxReclaimedTransactionAmt string  
taxSource string  
taxTransactionAmt string  
total string  
value string  
}    
eldiffamt string  
elfuncamt string Transaction amount
elimage string Image at line level
elimageid[] Array Example: ['de6a4f2a-xxxx-41c4-xxxx-f27xxxxee5f']
elimageindb string  
elimagetype string  
elineTimeStamp string time of the expense if the eldate does
elineid* string 1 based index for expense lines.
unique seq for that expense line
elineinfo string  
ellinetype* string Payment type. e.g. CASH, CREDIT etc
elineuniqueid string  
elmileagedist string  
elmileagerate string  
elmileageuom string  
elpaidamount* string total amount in transaction currency i.e. the amount in currency paid to the vendor
elpaidcurr* string Transaction currency
elpersonalflag* string Y if the expense is personal

"N": If the flag is NOT to be set,
"Y": If the flag is to be set
elprojectid string  
elpurpose* string Justification for this expense line
elsource string  
eltaskid string  
eltype string Expense type. e.g. Meals, Taxi, Hotel etc
elvatflag* string is True if the expense is VAT line

"false": If the flag is NOT to be set,
"true": If the flag is to be set
elviolations{    
allowableAmount string Total allowable amount for a violation
elineId string Line id at which the Violation is made
exceededAmount string Total exceeded amount over the allowable amount
funcCurrencyAllowAmt string  
orgId string Org Id for which the violation is made
violationDate string Date of violation
violationType string Type of violation
}    
missingReceipt* string is N if the receipt is attached

"N": If the flag is NOT to be set,
"Y": If the flag is to be set
orgUnit1 string The details from the Org Unit fields
orgUnit2 string The details from the Org Unit fields
orgUnit3 string The details from the Org Unit fields
orgUnit4 string The details from the Org Unit fields
orgUnit5 string The details from the Org Unit fields
orgUnit6 string The details from the Org Unit fields
}    
emailAddress* string user's email id
expenseReportId integer($int64) report id in the source system
externalOrgId string This field is required, when new organization needs to be created by AppZen system
externalOrgName string This field is required, when new organization needs to be created by AppZen system
external_template_id string This field is required, when new template needs to be created by AppZen system
external_template_name string This field is required, when new template needs to be created by AppZen system
headerFields {   any custom fields at header level
text string  
value string  
}    
orgId string An organization is a way of segregation of expense.
For the source system having country and currency based org, only 'country' and 'currency_code' needs to be populated.
For the source system having name based org, either of below two combination is required to be populated:

'org_id' : Should be populated with the value provided by AppZen
'external_org_id and 'external_org_name' : Should be populated with the values from source system.
reportLevelImage string Receipt Image at report level
reportLevelImageArray [string] list of images at report level
The description entered by user for expense report string String of maximum 256 characters.
report_level_image_details_array{   Extension of all header level attachment files. e.g. for image1.jpeg, jpeg should be added to this array.
ImageDetailsIRO{    
imageId string ReceiptImage ID
imageType string MSG, DOC, DOCX, XLS, XLSX, PDF, PNG, JPG, JPEG, PJPEG, GIF, TIFF, UNSUPPORTED_IMAGE_TYPE
}}    
status* string Status of report in source expense system. workflow status in source system
templateId string A valid template_id provided by AppZen needs to be passed against this field. In case a valid template_id is not available, it needs to be skipped and valid template details need to be passed instead.
AppZen system looks-up for a valid template_id based on the the template details provided. It looks-up for a template defined/configured in the system for given 'external_template_name' or 'external_template_id
If no template is found to be defined/configured in the system for given external_template_id/external_template_id, then a new template gets created based on provided template details.In such a scenario, external_template_id and external_template_name are mandatory
userName* string This field should be populated with 'last name, first name'
userid* string This field needs to be populated with the value of employee id
}    
}    
Was this article helpful?
0 out of 0 found this helpful

Comments

0 comments

Please sign in to leave a comment.