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 | PDF, PNG, JPEG |
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 | JPEG, PNG, PDF |
}} | ||
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 |
} | ||
} |
Comments
Please sign in to leave a comment.