microsoft.dynamics365.finance.expense
Module microsoft.dynamics365.finance.expense
API
Definitions
ballerinax/microsoft.dynamics365.finance.expense Ballerina library
Overview
Microsoft Dynamics 365 Finance is Microsoft's cloud ERP solution for financial management, covering general ledger, accounts receivable and payable, fixed assets, budgeting, cash and bank management, and tax.
The microsoft.dynamics365.finance.expense connector provides access to Microsoft Dynamics 365 Finance Expense entities via the OData REST API.
Key Features
- Manage expense entities in Microsoft Dynamics 365 Finance
- Support for list, create, read, update, and delete operations
- OAuth2 client credentials authentication
Setup guide
Prerequisites
- A Microsoft Dynamics 365 Finance & Operations environment (cloud-hosted or sandbox)
- An Azure Active Directory (Entra ID) app registration with API permissions for Dynamics 365
Step 1: Register an application in Azure AD
-
Sign in to the Azure portal and navigate to Azure Active Directory → App registrations → New registration.
-
Give the application a name, select the appropriate account type, and click Register.
-
Note the Application (client) ID and Directory (tenant) ID from the overview page.
-
Under Certificates & secrets, create a new client secret and note the value immediately — it is only shown once.
Step 2: Grant Dynamics 365 API permissions
-
In the app registration, go to API permissions → Add a permission → APIs my organization uses.
-
Search for Dynamics 365 (or
Microsoft Dynamics ERP) and add theuser_impersonation(or.default) delegated/application scope. -
Click Grant admin consent for your tenant.
Step 3: Add the app as a D365 user
-
In your D365 Finance environment, go to System administration → Users → New.
-
Set the User ID and User name, then paste the Azure AD Application (client) ID into the Azure AD application field.
-
Assign appropriate security roles and save.
Quickstart
To use the microsoft.dynamics365.finance.expense connector in your Ballerina application, modify the .bal file as follows:
Step 1: Import the module
import ballerinax/microsoft.dynamics365.finance.expense;
Step 2: Instantiate a new connector
configurable string tenantId = ?; configurable string clientId = ?; configurable string clientSecret = ?; configurable string serviceUrl = ?; // e.g. "https://<env>.operations.dynamics.com/data" expense:Client cl = check new ({ config = { auth: { tokenUrl: string `https://login.microsoftonline.com/${tenantId}/oauth2/v2.0/token`, clientId, clientSecret, scopes: [string `${serviceUrl}/.default`] } }, serviceUrl );
Step 3: Invoke the connector operation
expense:ExpenseCodesCollection results = check cl->listExpenseCodes();
Step 4: Run the Ballerina application
bal run
Examples
The Dynamics 365 Finance Ballerina connectors provide practical examples illustrating usage in various scenarios. Explore these examples.
Clients
microsoft.dynamics365.finance.expense: Client
Constructor
Gets invoked to initialize the connector.
init (ConnectionConfig config, string serviceUrl)- config ConnectionConfig - The configurations to be used when initializing the
connector
- serviceUrl string "https://your-org.operations.dynamics.com/data" - URL of the target service
listExpenseCodes
function listExpenseCodes(map<string|string[]> headers, *ListExpenseCodesQueries queries) returns ExpenseCodesCollection|errorList ExpenseCodes
Parameters
- queries *ListExpenseCodesQueries - Queries to be sent with the request
Return Type
- ExpenseCodesCollection|error - Collection of ExpenseCode
createExpenseCodes
function createExpenseCodes(ExpenseCode payload, map<string|string[]> headers) returns ExpenseCode|errorCreate ExpenseCode
Parameters
- payload ExpenseCode - The request body
Return Type
- ExpenseCode|error - ExpenseCode created
getExpenseCodes
function getExpenseCodes(string dataAreaId, string expenseCode, map<string|string[]> headers, *GetExpenseCodesQueries queries) returns ExpenseCode|errorGet ExpenseCode by key
Parameters
- dataAreaId string - The company data area identifier
- expenseCode string - The expense code key field
- queries *GetExpenseCodesQueries - Queries to be sent with the request
Return Type
- ExpenseCode|error - ExpenseCode
deleteExpenseCodes
function deleteExpenseCodes(string dataAreaId, string expenseCode, DeleteExpenseCodesHeaders headers) returns error?Delete ExpenseCode
Parameters
- dataAreaId string - The company data area identifier
- expenseCode string - The expense code key field
- headers DeleteExpenseCodesHeaders (default {}) - Headers to be sent with the request
Return Type
- error? - ExpenseCode deleted
updateExpenseCodes
function updateExpenseCodes(string dataAreaId, string expenseCode, ExpenseCode payload, UpdateExpenseCodesHeaders headers) returns ExpenseCode|errorUpdate ExpenseCode
Parameters
- dataAreaId string - The company data area identifier
- expenseCode string - The expense code key field
- payload ExpenseCode - The request body
- headers UpdateExpenseCodesHeaders (default {}) - Headers to be sent with the request
Return Type
- ExpenseCode|error - ExpenseCode updated
listExpenseParameters
function listExpenseParameters(map<string|string[]> headers, *ListExpenseParametersQueries queries) returns ExpenseParametersCollection|errorList ExpenseParameters
Parameters
- queries *ListExpenseParametersQueries - Queries to be sent with the request
Return Type
- ExpenseParametersCollection|error - Collection of ExpenseParameters
createExpenseParameters
function createExpenseParameters(ExpenseParameters payload, map<string|string[]> headers) returns ExpenseParameters|errorCreate ExpenseParameters
Parameters
- payload ExpenseParameters - The request body
Return Type
- ExpenseParameters|error - ExpenseParameters created
getExpenseParameters
function getExpenseParameters(string dataAreaId, map<string|string[]> headers, *GetExpenseParametersQueries queries) returns ExpenseParameters|errorGet ExpenseParameters by key
Parameters
- dataAreaId string - The company data area identifier
- queries *GetExpenseParametersQueries - Queries to be sent with the request
Return Type
- ExpenseParameters|error - ExpenseParameters
deleteExpenseParameters
function deleteExpenseParameters(string dataAreaId, DeleteExpenseParametersHeaders headers) returns error?Delete ExpenseParameters
Parameters
- dataAreaId string - The company data area identifier
- headers DeleteExpenseParametersHeaders (default {}) - Headers to be sent with the request
Return Type
- error? - ExpenseParameters deleted
updateExpenseParameters
function updateExpenseParameters(string dataAreaId, ExpenseParameters payload, UpdateExpenseParametersHeaders headers) returns ExpenseParameters|errorUpdate ExpenseParameters
Parameters
- dataAreaId string - The company data area identifier
- payload ExpenseParameters - The request body
- headers UpdateExpenseParametersHeaders (default {}) - Headers to be sent with the request
Return Type
- ExpenseParameters|error - ExpenseParameters updated
listExpenseRates
function listExpenseRates(map<string|string[]> headers, *ListExpenseRatesQueries queries) returns ExpenseRatesCollection|errorList ExpenseRates
Parameters
- queries *ListExpenseRatesQueries - Queries to be sent with the request
Return Type
- ExpenseRatesCollection|error - Collection of ExpenseRate
createExpenseRates
function createExpenseRates(ExpenseRate payload, map<string|string[]> headers) returns ExpenseRate|errorCreate ExpenseRate
Parameters
- payload ExpenseRate - The request body
Return Type
- ExpenseRate|error - ExpenseRate created
getExpenseRates
function getExpenseRates(string dataAreaId, string expense, map<string|string[]> headers, *GetExpenseRatesQueries queries) returns ExpenseRate|errorGet ExpenseRate by key
Parameters
- dataAreaId string - The company data area identifier
- expense string - The expense key field
- queries *GetExpenseRatesQueries - Queries to be sent with the request
Return Type
- ExpenseRate|error - ExpenseRate
deleteExpenseRates
function deleteExpenseRates(string dataAreaId, string expense, DeleteExpenseRatesHeaders headers) returns error?Delete ExpenseRate
Parameters
- dataAreaId string - The company data area identifier
- expense string - The expense key field
- headers DeleteExpenseRatesHeaders (default {}) - Headers to be sent with the request
Return Type
- error? - ExpenseRate deleted
updateExpenseRates
function updateExpenseRates(string dataAreaId, string expense, ExpenseRate payload, UpdateExpenseRatesHeaders headers) returns ExpenseRate|errorUpdate ExpenseRate
Parameters
- dataAreaId string - The company data area identifier
- expense string - The expense key field
- payload ExpenseRate - The request body
- headers UpdateExpenseRatesHeaders (default {}) - Headers to be sent with the request
Return Type
- ExpenseRate|error - ExpenseRate updated
listExpenses
function listExpenses(map<string|string[]> headers, *ListExpensesQueries queries) returns ExpensesCollection|errorList Expenses
Parameters
- queries *ListExpensesQueries - Queries to be sent with the request
Return Type
- ExpensesCollection|error - Collection of Expenses
createExpenses
Create Expenses
Parameters
- payload Expenses - The request body
getExpenses
function getExpenses(string dataAreaId, string expenseTransactionNumber, map<string|string[]> headers, *GetExpensesQueries queries) returns Expenses|errorGet Expenses by key
Parameters
- dataAreaId string - The company data area identifier
- expenseTransactionNumber string - The expense transaction number key field
- queries *GetExpensesQueries - Queries to be sent with the request
deleteExpenses
function deleteExpenses(string dataAreaId, string expenseTransactionNumber, DeleteExpensesHeaders headers) returns error?Delete Expenses
Parameters
- dataAreaId string - The company data area identifier
- expenseTransactionNumber string - The expense transaction number key field
- headers DeleteExpensesHeaders (default {}) - Headers to be sent with the request
Return Type
- error? - Expenses deleted
updateExpenses
function updateExpenses(string dataAreaId, string expenseTransactionNumber, Expenses payload, UpdateExpensesHeaders headers) returns Expenses|errorUpdate Expenses
Parameters
- dataAreaId string - The company data area identifier
- expenseTransactionNumber string - The expense transaction number key field
- payload Expenses - The request body
- headers UpdateExpensesHeaders (default {}) - Headers to be sent with the request
listMileageRates
function listMileageRates(map<string|string[]> headers, *ListMileageRatesQueries queries) returns MileageRatesCollection|errorList MileageRates
Parameters
- queries *ListMileageRatesQueries - Queries to be sent with the request
Return Type
- MileageRatesCollection|error - Collection of MileageRate
createMileageRates
function createMileageRates(MileageRate payload, map<string|string[]> headers) returns MileageRate|errorCreate MileageRate
Parameters
- payload MileageRate - The request body
Return Type
- MileageRate|error - MileageRate created
getMileageRates
function getMileageRates(string dataAreaId, string expenseCategory, string fromDate, decimal quantity, string rateType, string vehicleType, map<string|string[]> headers, *GetMileageRatesQueries queries) returns MileageRate|errorGet MileageRate by key
Parameters
- dataAreaId string - The company data area identifier
- expenseCategory string - The expense category key field
- fromDate string - The from date key field
- quantity decimal - The quantity key field
- rateType string - The rate type key field
- vehicleType string - The vehicle type key field
- queries *GetMileageRatesQueries - Queries to be sent with the request
Return Type
- MileageRate|error - MileageRate
deleteMileageRates
function deleteMileageRates(string dataAreaId, string expenseCategory, string fromDate, decimal quantity, string rateType, string vehicleType, DeleteMileageRatesHeaders headers) returns error?Delete MileageRate
Parameters
- dataAreaId string - The company data area identifier
- expenseCategory string - The expense category key field
- fromDate string - The from date key field
- quantity decimal - The quantity key field
- rateType string - The rate type key field
- vehicleType string - The vehicle type key field
- headers DeleteMileageRatesHeaders (default {}) - Headers to be sent with the request
Return Type
- error? - MileageRate deleted
updateMileageRates
function updateMileageRates(string dataAreaId, string expenseCategory, string fromDate, decimal quantity, string rateType, string vehicleType, MileageRate payload, UpdateMileageRatesHeaders headers) returns MileageRate|errorUpdate MileageRate
Parameters
- dataAreaId string - The company data area identifier
- expenseCategory string - The expense category key field
- fromDate string - The from date key field
- quantity decimal - The quantity key field
- rateType string - The rate type key field
- vehicleType string - The vehicle type key field
- payload MileageRate - The request body
- headers UpdateMileageRatesHeaders (default {}) - Headers to be sent with the request
Return Type
- MileageRate|error - MileageRate updated
listPerDiems
function listPerDiems(map<string|string[]> headers, *ListPerDiemsQueries queries) returns PerDiemsCollection|errorList PerDiems
Parameters
- queries *ListPerDiemsQueries - Queries to be sent with the request
Return Type
- PerDiemsCollection|error - Collection of PerDiems
createPerDiems
Create PerDiems
Parameters
- payload PerDiems - The request body
getPerDiems
function getPerDiems(string dataAreaId, string location, string stateId, string countryRegionId, string dateFrom, string dateTo, map<string|string[]> headers, *GetPerDiemsQueries queries) returns PerDiems|errorGet PerDiems by key
Parameters
- dataAreaId string - The company data area identifier
- location string - The location key field
- stateId string - The state id key field
- countryRegionId string - The country region id key field
- dateFrom string - The date from key field
- dateTo string - The date to key field
- queries *GetPerDiemsQueries - Queries to be sent with the request
deletePerDiems
function deletePerDiems(string dataAreaId, string location, string stateId, string countryRegionId, string dateFrom, string dateTo, DeletePerDiemsHeaders headers) returns error?Delete PerDiems
Parameters
- dataAreaId string - The company data area identifier
- location string - The location key field
- stateId string - The state id key field
- countryRegionId string - The country region id key field
- dateFrom string - The date from key field
- dateTo string - The date to key field
- headers DeletePerDiemsHeaders (default {}) - Headers to be sent with the request
Return Type
- error? - PerDiems deleted
updatePerDiems
function updatePerDiems(string dataAreaId, string location, string stateId, string countryRegionId, string dateFrom, string dateTo, PerDiems payload, UpdatePerDiemsHeaders headers) returns PerDiems|errorUpdate PerDiems
Parameters
- dataAreaId string - The company data area identifier
- location string - The location key field
- stateId string - The state id key field
- countryRegionId string - The country region id key field
- dateFrom string - The date from key field
- dateTo string - The date to key field
- payload PerDiems - The request body
- headers UpdatePerDiemsHeaders (default {}) - Headers to be sent with the request
listTrvReceipts
function listTrvReceipts(map<string|string[]> headers, *ListTrvReceiptsQueries queries) returns TrvReceiptsCollection|errorList TrvReceipts
Parameters
- queries *ListTrvReceiptsQueries - Queries to be sent with the request
Return Type
- TrvReceiptsCollection|error - Collection of TrvReceiptEntity
createTrvReceipts
function createTrvReceipts(TrvReceiptEntity payload, map<string|string[]> headers) returns TrvReceiptEntity|errorCreate TrvReceiptEntity
Parameters
- payload TrvReceiptEntity - The request body
Return Type
- TrvReceiptEntity|error - TrvReceiptEntity created
getTrvReceipts
function getTrvReceipts(string dataAreaId, string documentId, map<string|string[]> headers, *GetTrvReceiptsQueries queries) returns TrvReceiptEntity|errorGet TrvReceiptEntity by key
Parameters
- dataAreaId string - The company data area identifier
- documentId string - The document id key field
- queries *GetTrvReceiptsQueries - Queries to be sent with the request
Return Type
- TrvReceiptEntity|error - TrvReceiptEntity
deleteTrvReceipts
function deleteTrvReceipts(string dataAreaId, string documentId, DeleteTrvReceiptsHeaders headers) returns error?Delete TrvReceiptEntity
Parameters
- dataAreaId string - The company data area identifier
- documentId string - The document id key field
- headers DeleteTrvReceiptsHeaders (default {}) - Headers to be sent with the request
Return Type
- error? - TrvReceiptEntity deleted
updateTrvReceipts
function updateTrvReceipts(string dataAreaId, string documentId, TrvReceiptEntity payload, UpdateTrvReceiptsHeaders headers) returns TrvReceiptEntity|errorUpdate TrvReceiptEntity
Parameters
- dataAreaId string - The company data area identifier
- documentId string - The document id key field
- payload TrvReceiptEntity - The request body
- headers UpdateTrvReceiptsHeaders (default {}) - Headers to be sent with the request
Return Type
- TrvReceiptEntity|error - TrvReceiptEntity updated
Records
microsoft.dynamics365.finance.expense: ConnectionConfig
Fields
- auth? OAuth2ClientCredentialsGrantConfig - Configurations related to client authentication
- httpVersion HttpVersion(default http:HTTP_2_0) - The HTTP version understood by the client
- http1Settings ClientHttp1Settings(default {}) - Configurations related to HTTP/1.x protocol
- http2Settings ClientHttp2Settings(default {}) - Configurations related to HTTP/2 protocol
- timeout decimal(default 30) - The maximum time to wait (in seconds) for a response before closing the connection
- forwarded string(default "disable") - The choice of setting
forwarded/x-forwardedheader
- followRedirects? FollowRedirects - Configurations associated with Redirection
- poolConfig? PoolConfiguration - Configurations associated with request pooling
- cache CacheConfig(default {}) - HTTP caching related configurations
- compression Compression(default http:COMPRESSION_AUTO) - Specifies the way of handling compression (
accept-encoding) header
- circuitBreaker? CircuitBreakerConfig - Configurations associated with the behaviour of the Circuit Breaker
- retryConfig? RetryConfig - Configurations associated with retrying
- cookieConfig? CookieConfig - Configurations associated with cookies
- responseLimits ResponseLimitConfigs(default {}) - Configurations associated with inbound response size limits
- secureSocket? ClientSecureSocket - SSL/TLS-related options
- proxy? ProxyConfig - Proxy server related options
- socketConfig ClientSocketConfig(default {}) - Provides settings related to client socket configuration
- validation boolean(default true) - Enables the inbound payload validation functionality which provided by the constraint package. Enabled by default
- laxDataBinding boolean(default true) - Enables relaxed data binding on the client side. When enabled,
nilvalues are treated as optional, and absent fields are handled asnilabletypes. Enabled by default.
microsoft.dynamics365.finance.expense: DeleteExpenseCodesHeaders
Represents the Headers record for the operation: deleteExpenseCodes
Fields
- ifMatch? string - ETag value for optimistic concurrency; prevents overwriting concurrent modifications
microsoft.dynamics365.finance.expense: DeleteExpenseParametersHeaders
Represents the Headers record for the operation: deleteExpenseParameters
Fields
- ifMatch? string - ETag value for optimistic concurrency; prevents overwriting concurrent modifications
microsoft.dynamics365.finance.expense: DeleteExpenseRatesHeaders
Represents the Headers record for the operation: deleteExpenseRates
Fields
- ifMatch? string - ETag value for optimistic concurrency; prevents overwriting concurrent modifications
microsoft.dynamics365.finance.expense: DeleteExpensesHeaders
Represents the Headers record for the operation: deleteExpenses
Fields
- ifMatch? string - ETag value for optimistic concurrency; prevents overwriting concurrent modifications
microsoft.dynamics365.finance.expense: DeleteMileageRatesHeaders
Represents the Headers record for the operation: deleteMileageRates
Fields
- ifMatch? string - ETag value for optimistic concurrency; prevents overwriting concurrent modifications
microsoft.dynamics365.finance.expense: DeletePerDiemsHeaders
Represents the Headers record for the operation: deletePerDiems
Fields
- ifMatch? string - ETag value for optimistic concurrency; prevents overwriting concurrent modifications
microsoft.dynamics365.finance.expense: DeleteTrvReceiptsHeaders
Represents the Headers record for the operation: deleteTrvReceipts
Fields
- ifMatch? string - ETag value for optimistic concurrency; prevents overwriting concurrent modifications
microsoft.dynamics365.finance.expense: ExpenseCode
Fields
- dataAreaId? string -
- locked? NoYes -
- salesTaxCode? string -
- parentCode? string -
- expenseCode? string -
- codeType? RTax25ProfitType -
- shortDescription? string -
- name? string -
- direct? NoYes -
microsoft.dynamics365.finance.expense: ExpenseCodesCollection
Fields
- Fields Included from *ODataCollection
- Fields Included from *ExpenseCodesCollectionAllOf2
- value ExpenseCode[]
- anydata...
microsoft.dynamics365.finance.expense: ExpenseCodesCollectionAllOf2
Fields
- value? ExpenseCode[] -
microsoft.dynamics365.finance.expense: ExpenseParameters
Fields
- ledgerDimensionDisplayValue? string -
- isAllowSubmitExpenseOnBudgetFail? NoYes -
- useAntiCorruption? NoYes -
- perDiemCalculation? TrvPerDiemCalculation -
- skipAutoAddExpensesAndReceipts? NoYes -
- allowEditDistributions? NoYes -
- taxIncluded? NoYes -
- createExpensesFromReport? NoYes -
- useAdditionalInformationForDescriptionIntercompanyInvoice? NoYes -
- dataAreaId? string -
- displayEntireExpenseOnDrillBack? NoYes -
- personalPaidBy? TrvPersonalPaidBy -
- barCodeSetupId? string -
- deductBreakf? decimal -
- isProjectValidationAllowedForMobile? NoYes -
- isReleaseEncumbrancesOnCloseRequisition? NoYes -
- allowEditOnTransDateForPerDiems? NoYes -
- otherReductionDef? decimal -
- postExpensesOnPostingDate? NoYes -
- perDiemRounding? TrvPerDiemRounding -
- isTravelRequisitionMandatoryForExpense? NoYes -
- glWorkSheet? string -
- convertPBSExchToInternal? NoYes -
- allowOverlappingPerdiemsForSameLocation? NoYes -
- validateTravelPurpose? NoYes -
- whenToEvaluatePolicy? TrvEvaluateExpensePolicies -
- mealReductionDef? decimal -
- useInterCompanyExpense? NoYes -
- postImmediately? NoYes -
- includeUserIDInBarcode? NoYes -
- mealReductionType? TrvMealReductionType -
- isAllowApproveExpenseOnBudgetFail? NoYes -
- hotelReductionDef? decimal -
- isAllowSubmitRequisitionOnBudgetFail? NoYes -
- enableTaxRecovery? NoYes -
- isAllowUpdateAccountingDate? NoYes -
- minHours? decimal -
- kmPrice? decimal -
- deductDinner? decimal -
- deductLunch? decimal -
- allowEditCreditCardExchRate? NoYes -
- includeOverviewInCoverPage? NoYes -
microsoft.dynamics365.finance.expense: ExpenseParametersCollection
Fields
- Fields Included from *ODataCollection
- Fields Included from *ExpenseParametersCollectionAllOf2
- value ExpenseParameters[]
- anydata...
microsoft.dynamics365.finance.expense: ExpenseParametersCollectionAllOf2
Fields
- value? ExpenseParameters[] -
microsoft.dynamics365.finance.expense: ExpenseRate
Fields
- description? string -
- overRateItemSalesTaxGroup? string -
- vATOperationCode? string -
- overRatePayrollIncome? string -
- rate? decimal -
- rateMainAccountDisplayValue? string -
- dataAreaId? string -
- rateItemSalesTaxGroup? string -
- rateIAmountsIncludeSalesTax? NoYes -
- expense? string -
- overRateIsAmountsIncludeSalesTax? NoYes -
- currency? string -
- rateDefaultDimensionDisplayValue? string -
- overRateDefaultDimensionDisplayValue? string -
- overRatePayrollIsTransferToTaxBase? NoYes -
- rateSalesTaxGroup? string -
- overRateSalesTaxGroup? string -
- overRatePayrollRetention? string -
- overRateMainAccountDisplayValue? string -
microsoft.dynamics365.finance.expense: ExpenseRatesCollection
Fields
- Fields Included from *ODataCollection
- Fields Included from *ExpenseRatesCollectionAllOf2
- value ExpenseRate[]
- anydata...
microsoft.dynamics365.finance.expense: ExpenseRatesCollectionAllOf2
Fields
- value? ExpenseRate[] -
microsoft.dynamics365.finance.expense: Expenses
Fields
- mobileStatement? NoYes -
- intercompanyLegalEntity? string -
- company? string -
- cashAdvanceNumber? string -
- perDiemFromDate? string -
- postingErrors? string -
- amountMST? decimal -
- legalEntityDataAreaId? string -
- reimbursementAmount? decimal -
- creditCardLocalCurrency? string -
- approvalStatus? TrvAppStatus -
- dataAreaId? string -
- actualSalesTaxAmount? decimal -
- expenseLineLevelPosting? NoYes -
- activityNumber? string -
- intercompanyCostPrice? decimal -
- ticketNumber? string -
- dimensionDisplayValue? string -
- dinner? Signed32 -
- perDiemToDate? string -
- locationsCountryRegionId? string -
- finTagDisplayValue? string -
- creditCardLocalAmount? decimal -
- currency? string -
- ratePerMile? decimal -
- isSplitToPersonal? NoYes -
- originalReceiptsReceived? NoYes -
- receiptNumber? string -
- status? ProjExpPolicyStatus -
- salesTaxGroup? string -
- mileage? decimal -
- countryRegion? string -
- employeePersonnelNumber? string -
- expenseType? TrvExpType -
- subCategoryCostType? string -
- city? string -
- applyAction? NoYes -
- postAccountIdentification? string -
- isPreAuthorized? NoYes -
- receiptRequired? NoYes -
- reconciled? decimal -
- netTransactionAmount? decimal -
- receiptsAttached? NoYes -
- paymentMethod? string -
- mileageToAddress? string -
- categoryDescription? string -
- dateApproved? string -
- addressCityName? string -
- costOwner? TrvCostOwner -
- exchangeRate? decimal -
- ticketClass? string -
- itemSalesTaxGroup? string -
- intercompanyTransferCurrency? string -
- itemizedLineTransNumber? string -
- projectTransactionID? string -
- projectID? string -
- taxIncluded? NoYes -
- intercompanyProjectCategory? string -
- invoiceAmount? decimal -
- lineNumber? decimal -
- salesTaxAmountInCompanyCurrency? decimal -
- locationOfEntertainment? string -
- merchant? string -
- intercompanyBilled? boolean -
- ticketUsed? NoYes -
- dateRejected? string -
- intercompanyCurrency? string -
- addressZipCodeDetails? string -
- locationsStateId? string -
- numberOfPassengers? Signed32 -
- expenseLineType? TrvExpLineType -
- transactionDate? string -
- additionalInformation? string -
- breakfast? Signed32 -
- expenseTransactionNumber? string -
- amount? decimal -
- billable? string -
- vehicleType? string -
- purpose? string -
- internalNote? string -
- splitLineType? TrvExpSplitLineType -
- lunch? Signed32 -
- voucher? string -
- transRowNum? Signed32 -
- transactionAmount? decimal -
- sharedSubCategoryName? string -
- mealReduction? decimal -
- expenseCategory? string -
- mileageFromAddress? string -
- expenseReportNumber? string -
- importedCreditCard? NoYes -
- postOffsetAccountType? LedgerJournalACType -
- intercompanySalesPrice? decimal -
- addressState? string -
- locationsLocation? string -
microsoft.dynamics365.finance.expense: ExpensesCollection
Fields
- Fields Included from *ODataCollection
- Fields Included from *ExpensesCollectionAllOf2
- value Expenses[]
- anydata...
microsoft.dynamics365.finance.expense: ExpensesCollectionAllOf2
Fields
- value? Expenses[] -
microsoft.dynamics365.finance.expense: GetExpenseCodesQueries
Represents the Queries record for the operation: getExpenseCodes
Fields
- expand? string - OData $expand query parameter - comma-separated list of related entities to include
- 'select? string - OData $select query parameter - comma-separated list of fields to return
microsoft.dynamics365.finance.expense: GetExpenseParametersQueries
Represents the Queries record for the operation: getExpenseParameters
Fields
- expand? string - OData $expand query parameter - comma-separated list of related entities to include
- 'select? string - OData $select query parameter - comma-separated list of fields to return
microsoft.dynamics365.finance.expense: GetExpenseRatesQueries
Represents the Queries record for the operation: getExpenseRates
Fields
- expand? string - OData $expand query parameter - comma-separated list of related entities to include
- 'select? string - OData $select query parameter - comma-separated list of fields to return
microsoft.dynamics365.finance.expense: GetExpensesQueries
Represents the Queries record for the operation: getExpenses
Fields
- expand? string - OData $expand query parameter - comma-separated list of related entities to include
- 'select? string - OData $select query parameter - comma-separated list of fields to return
microsoft.dynamics365.finance.expense: GetMileageRatesQueries
Represents the Queries record for the operation: getMileageRates
Fields
- expand? string - OData $expand query parameter - comma-separated list of related entities to include
- 'select? string - OData $select query parameter - comma-separated list of fields to return
microsoft.dynamics365.finance.expense: GetPerDiemsQueries
Represents the Queries record for the operation: getPerDiems
Fields
- expand? string - OData $expand query parameter - comma-separated list of related entities to include
- 'select? string - OData $select query parameter - comma-separated list of fields to return
microsoft.dynamics365.finance.expense: GetTrvReceiptsQueries
Represents the Queries record for the operation: getTrvReceipts
Fields
- expand? string - OData $expand query parameter - comma-separated list of related entities to include
- 'select? string - OData $select query parameter - comma-separated list of fields to return
microsoft.dynamics365.finance.expense: ListExpenseCodesQueries
Represents the Queries record for the operation: listExpenseCodes
Fields
- skip? int - OData $skip query parameter - number of records to skip
- top? int - OData $top query parameter - maximum number of records to return
- filter? string - OData $filter query parameter - filter expression
- orderby? string - OData $orderby query parameter - sort order expression
- expand? string - OData $expand query parameter - comma-separated list of related entities to include
- crossCompany? boolean - When true, query results include records from all companies
- count? boolean - When true, the response includes the total count of matching records
- 'select? string - OData $select query parameter - comma-separated list of fields to return
microsoft.dynamics365.finance.expense: ListExpenseParametersQueries
Represents the Queries record for the operation: listExpenseParameters
Fields
- skip? int - OData $skip query parameter - number of records to skip
- top? int - OData $top query parameter - maximum number of records to return
- filter? string - OData $filter query parameter - filter expression
- orderby? string - OData $orderby query parameter - sort order expression
- expand? string - OData $expand query parameter - comma-separated list of related entities to include
- crossCompany? boolean - When true, query results include records from all companies
- count? boolean - When true, the response includes the total count of matching records
- 'select? string - OData $select query parameter - comma-separated list of fields to return
microsoft.dynamics365.finance.expense: ListExpenseRatesQueries
Represents the Queries record for the operation: listExpenseRates
Fields
- skip? int - OData $skip query parameter - number of records to skip
- top? int - OData $top query parameter - maximum number of records to return
- filter? string - OData $filter query parameter - filter expression
- orderby? string - OData $orderby query parameter - sort order expression
- expand? string - OData $expand query parameter - comma-separated list of related entities to include
- crossCompany? boolean - When true, query results include records from all companies
- count? boolean - When true, the response includes the total count of matching records
- 'select? string - OData $select query parameter - comma-separated list of fields to return
microsoft.dynamics365.finance.expense: ListExpensesQueries
Represents the Queries record for the operation: listExpenses
Fields
- skip? int - OData $skip query parameter - number of records to skip
- top? int - OData $top query parameter - maximum number of records to return
- filter? string - OData $filter query parameter - filter expression
- orderby? string - OData $orderby query parameter - sort order expression
- expand? string - OData $expand query parameter - comma-separated list of related entities to include
- crossCompany? boolean - When true, query results include records from all companies
- count? boolean - When true, the response includes the total count of matching records
- 'select? string - OData $select query parameter - comma-separated list of fields to return
microsoft.dynamics365.finance.expense: ListMileageRatesQueries
Represents the Queries record for the operation: listMileageRates
Fields
- skip? int - OData $skip query parameter - number of records to skip
- top? int - OData $top query parameter - maximum number of records to return
- filter? string - OData $filter query parameter - filter expression
- orderby? string - OData $orderby query parameter - sort order expression
- expand? string - OData $expand query parameter - comma-separated list of related entities to include
- crossCompany? boolean - When true, query results include records from all companies
- count? boolean - When true, the response includes the total count of matching records
- 'select? string - OData $select query parameter - comma-separated list of fields to return
microsoft.dynamics365.finance.expense: ListPerDiemsQueries
Represents the Queries record for the operation: listPerDiems
Fields
- skip? int - OData $skip query parameter - number of records to skip
- top? int - OData $top query parameter - maximum number of records to return
- filter? string - OData $filter query parameter - filter expression
- orderby? string - OData $orderby query parameter - sort order expression
- expand? string - OData $expand query parameter - comma-separated list of related entities to include
- crossCompany? boolean - When true, query results include records from all companies
- count? boolean - When true, the response includes the total count of matching records
- 'select? string - OData $select query parameter - comma-separated list of fields to return
microsoft.dynamics365.finance.expense: ListTrvReceiptsQueries
Represents the Queries record for the operation: listTrvReceipts
Fields
- skip? int - OData $skip query parameter - number of records to skip
- top? int - OData $top query parameter - maximum number of records to return
- filter? string - OData $filter query parameter - filter expression
- orderby? string - OData $orderby query parameter - sort order expression
- expand? string - OData $expand query parameter - comma-separated list of related entities to include
- crossCompany? boolean - When true, query results include records from all companies
- count? boolean - When true, the response includes the total count of matching records
- 'select? string - OData $select query parameter - comma-separated list of fields to return
microsoft.dynamics365.finance.expense: MileageRate
Fields
- dataAreaId? string -
- description? string -
- expenseCategory? string -
- rate? decimal -
- vehicleType? string -
- quantity? decimal -
- fromDate? string -
- toDate? string -
- rateType? TrvMileageRateType -
microsoft.dynamics365.finance.expense: MileageRatesCollection
Fields
- Fields Included from *ODataCollection
- Fields Included from *MileageRatesCollectionAllOf2
- value MileageRate[]
- anydata...
microsoft.dynamics365.finance.expense: MileageRatesCollectionAllOf2
Fields
- value? MileageRate[] -
microsoft.dynamics365.finance.expense: OAuth2ClientCredentialsGrantConfig
OAuth2 Client Credentials Grant Configs
Fields
- Fields Included from *OAuth2ClientCredentialsGrantConfig
- tokenUrl string(default "https://login.microsoftonline.com/{tenant}/oauth2/v2.0/token") - Token URL
microsoft.dynamics365.finance.expense: ODataCollection
Fields
- odataNextLink? string -
- odataCount? int -
- odataContext? string -
microsoft.dynamics365.finance.expense: PerDiems
Fields
- otherAllowance? decimal -
- stateId? string -
- deductTwoMeals? decimal -
- hotelAllowance? decimal -
- dataAreaId? string -
- deductThreeOrMoreMeals? decimal -
- mealAllowance? decimal -
- deductBreakf? decimal -
- countryRegionId? string -
- dateFrom? string -
- currency? string -
- deductDinner? decimal -
- deductOneMeal? decimal -
- deductLunch? decimal -
- location? string -
- dateTo? string -
microsoft.dynamics365.finance.expense: PerDiemsCollection
Fields
- Fields Included from *ODataCollection
- Fields Included from *PerDiemsCollectionAllOf2
- value PerDiems[]
- anydata...
microsoft.dynamics365.finance.expense: PerDiemsCollectionAllOf2
Fields
- value? PerDiems[] -
microsoft.dynamics365.finance.expense: Project
Fields
- taskCompletelyScheduled? NoYes -
- zakatContractAmendment? decimal -
- isReadyForInvoicing? NoYes -
- locationID? string -
- sortingId3? string -
- actualStartDate? string -
- sortingId2? string -
- sortingId1? string -
- estimateProjectID? string -
- certifiedPayroll? NoYes -
- invoicingMethod? PSAInvoiceMethod -
- status? PSAProjStatus -
- projectOrTask? PSAProjTask -
- canCarryForwardRemainingBudgets? NoYes -
- customerRetentionTermId? string -
- allowNegativeBudgetsToBeCarriedForward? NoYes -
- defaultOnSubprojects? NoYes -
- ledgerPostingSortPriority? ProjLedgerPosting -
- requisitionOrPurchaseOrderControl? PSAPReqControl -
- transactionTypesControlled? ProjBudgetaryControlOn -
- header? NoYes -
- isActivityRequiredForExpenseForecast? NoYes -
- durationDeterminesEndDate? NoYes -
- itemValidation? PSAPReqValidate -
- description? string -
- endTime? Signed32 -
- projectName? string -
- subprojectIDFormat? string -
- workerArchitectPersonnelNumber? string -
- alertTimeFrameWeeks? Signed32 -
- salesPriceGroup? string -
- isActivityRequiredForExpenseTransaction? NoYes -
- workerRespSalesPersonnelNumber? string -
- activeRevision? string -
- zakatSubject? string -
- workerResponsiblePersonnelNumber? string -
- externalRevision? string -
- minimumTimeIncrement? decimal -
- isActivityRequiredForHourForecast? NoYes -
- calendar? string -
- endDate1? string -
- canUseAlternateProjectBudget? NoYes -
- projectedEndDate? string -
- trackCost? PSAProjTrackCost -
- jobIdentification? string -
- constraintType? PSAConstraintType -
- invoiceCost? NoYes -
- budgetOverrunDefault? ProjBudgetOverrunOption -
- scheduleStatus? PSAResSchedStatus -
- projectGroup? string -
- email? string -
- workerRespFinancialPersonnelNumber? string -
- projectContractID? string -
- zakatContractPeriod? string -
- unit? string -
- defaultInvoiceAccount? string -
- pSASchedIgnoreCalendar? NoYes -
- isActivityRequiredForItemForecast? NoYes -
- dataAreaId? string -
- budgetControlInterval? ProjBudgetInterval -
- dimensionDisplayValue? string -
- postingLevel? DetailSummary -
- canVerifyCostAgainstRemainingForecast? NoYes -
- templateApplied? NoYes -
- salesTaxGroup? string -
- parentProject? string -
- milestone? NoYes -
- projectStage? ProjStatus -
- startTime? Signed32 -
- startDate1? string -
- customerAccount? string -
- extensionDate? string -
- projectType? ProjType -
- bankDocumentType? BankLGDocumentType -
- isActivityRequiredForHourTransaction? NoYes -
- category? NoYes -
- telephone? string -
- jobPayType? JmgJobPayTypeEnum -
- durationInDays? decimal -
- fixedAssetNumber? string -
- projectID? string -
- canUseBudgetControl? NoYes -
- deliveryName? string -
- projectedStartDate? string -
- dateOfCreation? string -
- searchPriority? ProjLinePropertySearch -
- notes? string -
- actualEndDate? string -
- isActivityRequiredForItemTransaction? NoYes -
- hourValidation? PSAPReqValidate -
- constraintDate? string -
- date? string -
- zakatProjectValue? decimal -
- totalEffortInHours? decimal -
- percentToRetain? decimal -
- timeMeasure? PSAProjTimeMeasure -
- projectBudgetManagement? ProjBudgetManagement -
- fax? string -
- alternateProject? string -
- zakatContractDate? string -
- projectTemplate? NoYes -
microsoft.dynamics365.finance.expense: ProjectGroup
Fields
- ledgerPostingSearchPriority? ProjLedgerPosting -
- accrueRevenueExpense? NoYes -
- productionCategoryId? string -
- postCostsItem? ProjLedgerStatus -
- accrueRevenueFee? NoYes -
- accrueRevenueItem? NoYes -
- name? string -
- dataAreaId? string -
- canVerifyCostAgainstRemainingForecast? NoYes -
- salesValueCategoryId? string -
- periodCode? string -
- accrueRevenueHour? NoYes -
- linePropertySearchPriority? ProjLinePropertySearch -
- postCostsExpense? ProjLedgerStatus -
- onAccountInvoicing? ProjLedgerStatusOnAcc -
- accruedLossCategoryId? string -
- calculationMethod? ProjSalesPriceMatchingPrincip -
- postCostsHour? ProjLedgerStatus -
- projectType? ProjType -
- matchingPrinciple? ProjMatchingPrincip -
- areForeseeableLosses? NoYes -
- revenueRecognitionAccountingRule? ProjCompletePrincip -
- costTemplate? string -
- profitCategoryId? string -
- projectGroup? string -
microsoft.dynamics365.finance.expense: ProjectStage
Fields
- status? ProjStatus -
- dataAreaId? string -
- language? string -
- stage? string -
microsoft.dynamics365.finance.expense: TrvReceiptEntity
Fields
- actualCompanyId? string -
- dataAreaId? string -
- docuRefId? int -
- fileContents? record { fileContent byte[], fileName string } -
- fileType? string -
- isCreditCardExpense? NoYes -
- fileName? string -
- documentId? string -
- 'resource int -
- notes? string -
- name? string -
microsoft.dynamics365.finance.expense: TrvReceiptsCollection
Fields
- Fields Included from *ODataCollection
- Fields Included from *TrvReceiptsCollectionAllOf2
- value TrvReceiptEntity[]
- anydata...
microsoft.dynamics365.finance.expense: TrvReceiptsCollectionAllOf2
Fields
- value? TrvReceiptEntity[] -
microsoft.dynamics365.finance.expense: UpdateExpenseCodesHeaders
Represents the Headers record for the operation: updateExpenseCodes
Fields
- ifMatch? string - ETag value for optimistic concurrency; prevents overwriting concurrent modifications
microsoft.dynamics365.finance.expense: UpdateExpenseParametersHeaders
Represents the Headers record for the operation: updateExpenseParameters
Fields
- ifMatch? string - ETag value for optimistic concurrency; prevents overwriting concurrent modifications
microsoft.dynamics365.finance.expense: UpdateExpenseRatesHeaders
Represents the Headers record for the operation: updateExpenseRates
Fields
- ifMatch? string - ETag value for optimistic concurrency; prevents overwriting concurrent modifications
microsoft.dynamics365.finance.expense: UpdateExpensesHeaders
Represents the Headers record for the operation: updateExpenses
Fields
- ifMatch? string - ETag value for optimistic concurrency; prevents overwriting concurrent modifications
microsoft.dynamics365.finance.expense: UpdateMileageRatesHeaders
Represents the Headers record for the operation: updateMileageRates
Fields
- ifMatch? string - ETag value for optimistic concurrency; prevents overwriting concurrent modifications
microsoft.dynamics365.finance.expense: UpdatePerDiemsHeaders
Represents the Headers record for the operation: updatePerDiems
Fields
- ifMatch? string - ETag value for optimistic concurrency; prevents overwriting concurrent modifications
microsoft.dynamics365.finance.expense: UpdateTrvReceiptsHeaders
Represents the Headers record for the operation: updateTrvReceipts
Fields
- ifMatch? string - ETag value for optimistic concurrency; prevents overwriting concurrent modifications
Union types
microsoft.dynamics365.finance.expense: LedgerJournalACType
LedgerJournalACType
microsoft.dynamics365.finance.expense: TrvExpSplitLineType
TrvExpSplitLineType
microsoft.dynamics365.finance.expense: TrvMileageRateType
TrvMileageRateType
microsoft.dynamics365.finance.expense: ProjExpPolicyStatus
ProjExpPolicyStatus
microsoft.dynamics365.finance.expense: ProjLedgerStatus
ProjLedgerStatus
microsoft.dynamics365.finance.expense: ProjType
ProjType
microsoft.dynamics365.finance.expense: ProjLinePropertySearch
ProjLinePropertySearch
microsoft.dynamics365.finance.expense: PSAPReqControl
PSAPReqControl
microsoft.dynamics365.finance.expense: TrvCostOwner
TrvCostOwner
microsoft.dynamics365.finance.expense: PSAProjTrackCost
PSAProjTrackCost
microsoft.dynamics365.finance.expense: TrvExpType
TrvExpType
microsoft.dynamics365.finance.expense: TrvPerDiemRounding
TrvPerDiemRounding
microsoft.dynamics365.finance.expense: TrvEvaluateExpensePolicies
TrvEvaluateExpensePolicies
microsoft.dynamics365.finance.expense: RTax25ProfitType
RTax25ProfitType
microsoft.dynamics365.finance.expense: TrvAppStatus
TrvAppStatus
microsoft.dynamics365.finance.expense: ProjMatchingPrincip
ProjMatchingPrincip
microsoft.dynamics365.finance.expense: PSAProjTask
PSAProjTask
microsoft.dynamics365.finance.expense: ProjLedgerPosting
ProjLedgerPosting
microsoft.dynamics365.finance.expense: DetailSummary
DetailSummary
microsoft.dynamics365.finance.expense: PSAConstraintType
PSAConstraintType
microsoft.dynamics365.finance.expense: ProjStatus
ProjStatus
microsoft.dynamics365.finance.expense: ProjBudgetInterval
ProjBudgetInterval
microsoft.dynamics365.finance.expense: PSAProjTimeMeasure
PSAProjTimeMeasure
microsoft.dynamics365.finance.expense: ProjBudgetManagement
ProjBudgetManagement
microsoft.dynamics365.finance.expense: ProjSalesPriceMatchingPrincip
ProjSalesPriceMatchingPrincip
microsoft.dynamics365.finance.expense: PSAPReqValidate
PSAPReqValidate
microsoft.dynamics365.finance.expense: PSAInvoiceMethod
PSAInvoiceMethod
microsoft.dynamics365.finance.expense: PSAResSchedStatus
PSAResSchedStatus
microsoft.dynamics365.finance.expense: ProjBudgetaryControlOn
ProjBudgetaryControlOn
microsoft.dynamics365.finance.expense: PSAProjStatus
PSAProjStatus
microsoft.dynamics365.finance.expense: TrvPerDiemCalculation
TrvPerDiemCalculation
microsoft.dynamics365.finance.expense: TrvPersonalPaidBy
TrvPersonalPaidBy
microsoft.dynamics365.finance.expense: BankLGDocumentType
BankLGDocumentType
microsoft.dynamics365.finance.expense: TrvMealReductionType
TrvMealReductionType
microsoft.dynamics365.finance.expense: TrvExpLineType
TrvExpLineType
microsoft.dynamics365.finance.expense: ProjBudgetOverrunOption
ProjBudgetOverrunOption
microsoft.dynamics365.finance.expense: JmgJobPayTypeEnum
JmgJobPayTypeEnum
microsoft.dynamics365.finance.expense: NoYes
NoYes
microsoft.dynamics365.finance.expense: ProjCompletePrincip
ProjCompletePrincip
microsoft.dynamics365.finance.expense: ProjLedgerStatusOnAcc
ProjLedgerStatusOnAcc
Import
import ballerinax/microsoft.dynamics365.finance.expense;Other versions
0.8.0
Metadata
Released date: 2 days ago
Version: 0.8.0
License: Apache-2.0
Compatibility
Platform: any
Ballerina version: 2201.13.0
GraalVM compatible: Yes
Pull count
Total: 0
Current verison: 0
Weekly downloads
Keywords
Name/Microsoft Dynamics 365 Finance Expense
Area/Finance & Accounting
Vendor/Microsoft
Dynamics365
Finance
ERP
Type/Connector
Expense
Travel
Mileage
PerDiem
Contributors