Skip to main content

Actions

The ballerinax/microsoft.dynamics365.finance.cashmanagement package exposes the following clients:

ClientPurpose
ClientProvides full CRUD access to Microsoft Dynamics 365 Finance bank accounts, bank groups, cash accounts, cash balances, cash discounts, cash ledgers, cash symbols, CODA transaction codes, and currency exchange rate setups via the Dynamics 365 Finance and Operations OData API.

Client

Provides full CRUD access to Microsoft Dynamics 365 Finance bank accounts, bank groups, cash accounts, cash balances, cash discounts, cash ledgers, cash symbols, CODA transaction codes, and currency exchange rate setups via the Dynamics 365 Finance and Operations OData API.

Configuration

FieldTypeDefaultDescription
authOAuth2ClientCredentialsGrantConfigRequiredOAuth2 client credentials grant configuration used to authenticate with Microsoft Entra ID (Azure AD): tokenUrl, clientId, clientSecret, and optional scopes.
httpVersionhttp:HttpVersion2.0HTTP protocol version to use for outbound requests.
http1Settingshttp:ClientHttp1Settings{}HTTP/1.x client settings including keep-alive, chunking, and proxy configuration.
secureSockethttp:ClientSecureSocket()SSL/TLS configuration for secure connections.
proxyhttp:ProxyConfig()Proxy server configuration.

Initializing the client

import ballerinax/microsoft.dynamics365.finance.cashmanagement;

configurable string tokenUrl = ?;
configurable string clientId = ?;
configurable string clientSecret = ?;
configurable string serviceUrl = ?;

cashmanagement:Client fo = check new (
{
auth: {
tokenUrl,
clientId,
clientSecret
}
},
serviceUrl
);

Operations

Bank Accounts

listBankAccounts

Reads all bank accounts.

Parameters:

NameTypeRequiredDescription
headersmap<string|string[]>NoHeaders to be sent with the request.
queriesListBankAccountsQueriesNoOData query parameters: $skip, $top, $filter, $orderby, $expand, cross-company, $count, $select.

Returns: cashmanagement:BankAccountsCollection|error

Sample code:

cashmanagement:BankAccountsCollection accounts = check fo->listBankAccounts(
queries = {
filter: "CurrencyCode eq 'USD'",
top: 20,
'select: "BankAccountId,Name,CurrencyCode,AccountNumber"
}
);
createBankAccounts

Creates a bank account.

Parameters:

NameTypeRequiredDescription
payloadBankAccountYesThe bank account to create.
headersmap<string|string[]>NoHeaders to be sent with the request.

Returns: cashmanagement:BankAccount|error

Sample code:

cashmanagement:BankAccount account = check fo->createBankAccounts({
bankAccountId: "USBANK001",
dataAreaId: "usmf",
name: "US Operating Account",
currencyCode: "USD",
accountNumber: "000123456789",
iBAN: "US00BANK0000123456789",
bankGroupId: "CITI",
bankAccountStatus: "ActiveForAllTransactions"
});
getBankAccounts

Reads a specific bank account by key.

Parameters:

NameTypeRequiredDescription
dataAreaIdstringYesThe company data area identifier.
bankAccountIdstringYesThe bank account id key field.
headersmap<string|string[]>NoHeaders to be sent with the request.
queriesGetBankAccountsQueriesNoOData query parameters: $expand, $select.

Returns: cashmanagement:BankAccount|error

Sample code:

cashmanagement:BankAccount account = check fo->getBankAccounts("usmf", "USBANK001");
deleteBankAccounts

Deletes a specific bank account.

Parameters:

NameTypeRequiredDescription
dataAreaIdstringYesThe company data area identifier.
bankAccountIdstringYesThe bank account id key field.
headersDeleteBankAccountsHeadersNoOptional ifMatch ETag header for optimistic concurrency; mapped to If-Match.

Returns: error?

Sample code:

check fo->deleteBankAccounts(
"usmf",
"USBANK001",
headers = {ifMatch: eTag}
);
updateBankAccounts

Updates a specific bank account.

Parameters:

NameTypeRequiredDescription
dataAreaIdstringYesThe company data area identifier.
bankAccountIdstringYesThe bank account id key field.
payloadBankAccountYesThe fields to update.
headersUpdateBankAccountsHeadersNoOptional ifMatch ETag header for optimistic concurrency; mapped to If-Match.

Returns: cashmanagement:BankAccount|error

Sample code:

cashmanagement:BankAccount updated = check fo->updateBankAccounts(
"usmf",
"USBANK001",
{bankAccountStatus: "InactiveForNewTransactions"},
headers = {ifMatch: eTag}
);

Bank Groups

listBankGroups

Reads all bank groups.

Parameters:

NameTypeRequiredDescription
headersmap<string|string[]>NoHeaders to be sent with the request.
queriesListBankGroupsQueriesNoOData query parameters: $skip, $top, $filter, $orderby, $expand, cross-company, $count, $select.

Returns: cashmanagement:BankGroupsCollection|error

Sample code:

cashmanagement:BankGroupsCollection groups = check fo->listBankGroups(
queries = {
filter: "Currency eq 'USD'",
top: 20
}
);
createBankGroups

Creates a bank group.

Parameters:

NameTypeRequiredDescription
payloadBankGroupYesThe bank group to create.
headersmap<string|string[]>NoHeaders to be sent with the request.

Returns: cashmanagement:BankGroup|error

Sample code:

cashmanagement:BankGroup group = check fo->createBankGroups({
bankGroupId: "CITI",
dataAreaId: "usmf",
name: "Citibank",
bankName: "Citibank N.A.",
currency: "USD",
contactEmail: "[email protected]"
});
getBankGroups

Reads a specific bank group by key.

Parameters:

NameTypeRequiredDescription
dataAreaIdstringYesThe company data area identifier.
bankGroupIdstringYesThe bank group id key field.
headersmap<string|string[]>NoHeaders to be sent with the request.
queriesGetBankGroupsQueriesNoOData query parameters: $expand, $select.

Returns: cashmanagement:BankGroup|error

Sample code:

cashmanagement:BankGroup group = check fo->getBankGroups("usmf", "CITI");
deleteBankGroups

Deletes a specific bank group.

Parameters:

NameTypeRequiredDescription
dataAreaIdstringYesThe company data area identifier.
bankGroupIdstringYesThe bank group id key field.
headersDeleteBankGroupsHeadersNoOptional ifMatch ETag header for optimistic concurrency; mapped to If-Match.

Returns: error?

Sample code:

check fo->deleteBankGroups(
"usmf",
"CITI",
headers = {ifMatch: eTag}
);
updateBankGroups

Updates a specific bank group.

Parameters:

NameTypeRequiredDescription
dataAreaIdstringYesThe company data area identifier.
bankGroupIdstringYesThe bank group id key field.
payloadBankGroupYesThe fields to update.
headersUpdateBankGroupsHeadersNoOptional ifMatch ETag header for optimistic concurrency; mapped to If-Match.

Returns: cashmanagement:BankGroup|error

Sample code:

cashmanagement:BankGroup updated = check fo->updateBankGroups(
"usmf",
"CITI",
{contactPhone: "+1-212-555-0100"},
headers = {ifMatch: eTag}
);

Cash Accounts

listCashAccounts

Reads all cash accounts.

Parameters:

NameTypeRequiredDescription
headersmap<string|string[]>NoHeaders to be sent with the request.
queriesListCashAccountsQueriesNoOData query parameters: $skip, $top, $filter, $orderby, $expand, cross-company, $count, $select.

Returns: cashmanagement:CashAccountsCollection|error

Sample code:

cashmanagement:CashAccountsCollection accounts = check fo->listCashAccounts(
queries = {
filter: "Currency eq 'USD'",
top: 20
}
);
createCashAccounts

Creates a cash account.

Parameters:

NameTypeRequiredDescription
payloadCashAccountsYesThe cash account to create.
headersmap<string|string[]>NoHeaders to be sent with the request.

Returns: cashmanagement:CashAccounts|error

Sample code:

cashmanagement:CashAccounts account = check fo->createCashAccounts({
cash: "PETTYCASH-USMF",
dataAreaId: "usmf",
name: "Petty cash - head office",
currency: "USD",
moreCurrencies: "No",
negativeCash: "No"
});
getCashAccounts

Reads a specific cash account by key.

Parameters:

NameTypeRequiredDescription
dataAreaIdstringYesThe company data area identifier.
cashstringYesThe cash key field.
headersmap<string|string[]>NoHeaders to be sent with the request.
queriesGetCashAccountsQueriesNoOData query parameters: $expand, $select.

Returns: cashmanagement:CashAccounts|error

Sample code:

cashmanagement:CashAccounts account = check fo->getCashAccounts("usmf", "PETTYCASH-USMF");
deleteCashAccounts

Deletes a specific cash account.

Parameters:

NameTypeRequiredDescription
dataAreaIdstringYesThe company data area identifier.
cashstringYesThe cash key field.
headersDeleteCashAccountsHeadersNoOptional ifMatch ETag header for optimistic concurrency; mapped to If-Match.

Returns: error?

Sample code:

check fo->deleteCashAccounts(
"usmf",
"PETTYCASH-USMF",
headers = {ifMatch: eTag}
);
updateCashAccounts

Updates a specific cash account.

Parameters:

NameTypeRequiredDescription
dataAreaIdstringYesThe company data area identifier.
cashstringYesThe cash key field.
payloadCashAccountsYesThe fields to update.
headersUpdateCashAccountsHeadersNoOptional ifMatch ETag header for optimistic concurrency; mapped to If-Match.

Returns: cashmanagement:CashAccounts|error

Sample code:

cashmanagement:CashAccounts updated = check fo->updateCashAccounts(
"usmf",
"PETTYCASH-USMF",
{negativeCash: "Yes"},
headers = {ifMatch: eTag}
);

Cash Balances

listCashBalances

Reads all cash balances.

Parameters:

NameTypeRequiredDescription
headersmap<string|string[]>NoHeaders to be sent with the request.
queriesListCashBalancesQueriesNoOData query parameters: $skip, $top, $filter, $orderby, $expand, cross-company, $count, $select.

Returns: cashmanagement:CashBalancesCollection|error

Sample code:

cashmanagement:CashBalancesCollection balances = check fo->listCashBalances(
queries = {
filter: "Cash eq 'PETTYCASH-USMF'"
}
);
createCashBalances

Creates a cash balance record.

Parameters:

NameTypeRequiredDescription
payloadCashBalancesYesThe cash balance to create.
headersmap<string|string[]>NoHeaders to be sent with the request.

Returns: cashmanagement:CashBalances|error

Sample code:

cashmanagement:CashBalances balance = check fo->createCashBalances({
cash: "PETTYCASH-USMF",
dataAreaId: "usmf",
currency: "USD",
amount: 500.00,
amountInTransactionCurrency: 500.00
});
getCashBalances

Reads a specific cash balance by key.

Parameters:

NameTypeRequiredDescription
dataAreaIdstringYesThe company data area identifier.
cashstringYesThe cash key field.
currencystringYesThe currency key field.
headersmap<string|string[]>NoHeaders to be sent with the request.
queriesGetCashBalancesQueriesNoOData query parameters: $expand, $select.

Returns: cashmanagement:CashBalances|error

Sample code:

cashmanagement:CashBalances balance = check fo->getCashBalances("usmf", "PETTYCASH-USMF", "USD");
deleteCashBalances

Deletes a specific cash balance.

Parameters:

NameTypeRequiredDescription
dataAreaIdstringYesThe company data area identifier.
cashstringYesThe cash key field.
currencystringYesThe currency key field.
headersDeleteCashBalancesHeadersNoOptional ifMatch ETag header for optimistic concurrency; mapped to If-Match.

Returns: error?

Sample code:

check fo->deleteCashBalances(
"usmf",
"PETTYCASH-USMF",
"USD",
headers = {ifMatch: eTag}
);
updateCashBalances

Updates a specific cash balance.

Parameters:

NameTypeRequiredDescription
dataAreaIdstringYesThe company data area identifier.
cashstringYesThe cash key field.
currencystringYesThe currency key field.
payloadCashBalancesYesThe fields to update.
headersUpdateCashBalancesHeadersNoOptional ifMatch ETag header for optimistic concurrency; mapped to If-Match.

Returns: cashmanagement:CashBalances|error

Sample code:

cashmanagement:CashBalances updated = check fo->updateCashBalances(
"usmf",
"PETTYCASH-USMF",
"USD",
{amount: 450.00},
headers = {ifMatch: eTag}
);

Cash Discounts

listCashDiscounts

Reads all cash discount terms.

Parameters:

NameTypeRequiredDescription
headersmap<string|string[]>NoHeaders to be sent with the request.
queriesListCashDiscountsQueriesNoOData query parameters: $skip, $top, $filter, $orderby, $expand, cross-company, $count, $select.

Returns: cashmanagement:CashDiscountsCollection|error

Sample code:

cashmanagement:CashDiscountsCollection discounts = check fo->listCashDiscounts(
queries = {
filter: "DiscountMethod eq 'CurrentMth'",
top: 20
}
);
createCashDiscounts

Creates a cash discount term.

Parameters:

NameTypeRequiredDescription
payloadCashDiscountYesThe cash discount term to create.
headersmap<string|string[]>NoHeaders to be sent with the request.

Returns: cashmanagement:CashDiscount|error

Sample code:

cashmanagement:CashDiscount discount = check fo->createCashDiscounts({
cashDiscountCode: "2/10NET30",
dataAreaId: "usmf",
description: "2% 10 days, net 30",
numberOfDays: 10,
percent: 2.0,
discountMethod: "CurrentMth"
});
getCashDiscounts

Reads a specific cash discount term by key.

Parameters:

NameTypeRequiredDescription
dataAreaIdstringYesThe company data area identifier.
cashDiscountCodestringYesThe cash discount code key field.
headersmap<string|string[]>NoHeaders to be sent with the request.
queriesGetCashDiscountsQueriesNoOData query parameters: $expand, $select.

Returns: cashmanagement:CashDiscount|error

Sample code:

cashmanagement:CashDiscount discount = check fo->getCashDiscounts("usmf", "2/10NET30");
deleteCashDiscounts

Deletes a specific cash discount term.

Parameters:

NameTypeRequiredDescription
dataAreaIdstringYesThe company data area identifier.
cashDiscountCodestringYesThe cash discount code key field.
headersDeleteCashDiscountsHeadersNoOptional ifMatch ETag header for optimistic concurrency; mapped to If-Match.

Returns: error?

Sample code:

check fo->deleteCashDiscounts(
"usmf",
"2/10NET30",
headers = {ifMatch: eTag}
);
updateCashDiscounts

Updates a specific cash discount term.

Parameters:

NameTypeRequiredDescription
dataAreaIdstringYesThe company data area identifier.
cashDiscountCodestringYesThe cash discount code key field.
payloadCashDiscountYesThe fields to update.
headersUpdateCashDiscountsHeadersNoOptional ifMatch ETag header for optimistic concurrency; mapped to If-Match.

Returns: cashmanagement:CashDiscount|error

Sample code:

cashmanagement:CashDiscount updated = check fo->updateCashDiscounts(
"usmf",
"2/10NET30",
{percent: 1.5},
headers = {ifMatch: eTag}
);

Cash Ledgers

listCashLedgers

Reads all cash ledger posting profiles.

Parameters:

NameTypeRequiredDescription
headersmap<string|string[]>NoHeaders to be sent with the request.
queriesListCashLedgersQueriesNoOData query parameters: $skip, $top, $filter, $orderby, $expand, cross-company, $count, $select.

Returns: cashmanagement:CashLedgersCollection|error

Sample code:

cashmanagement:CashLedgersCollection ledgers = check fo->listCashLedgers(
queries = {
filter: "Cash eq 'PETTYCASH-USMF'"
}
);
createCashLedgers

Creates a cash ledger posting profile.

Parameters:

NameTypeRequiredDescription
payloadCashLedgerYesThe cash ledger posting profile to create.
headersmap<string|string[]>NoHeaders to be sent with the request.

Returns: cashmanagement:CashLedger|error

Sample code:

cashmanagement:CashLedger ledger = check fo->createCashLedgers({
cashPosting: "PettyCashUS",
dataAreaId: "usmf",
cash: "PETTYCASH-USMF",
description: "Petty cash posting profile - USMF",
validFor: "Table",
mainAccountIdDisplayValue: "101180"
});
getCashLedgers

Reads a specific cash ledger posting profile by key.

Parameters:

NameTypeRequiredDescription
dataAreaIdstringYesThe company data area identifier.
cashPostingstringYesThe cash posting key field.
mainAccountIdDisplayValuestringYesThe main account id display value key field.
cashstringYesThe cash key field.
headersmap<string|string[]>NoHeaders to be sent with the request.
queriesGetCashLedgersQueriesNoOData query parameters: $expand, $select.

Returns: cashmanagement:CashLedger|error

Sample code:

cashmanagement:CashLedger ledger = check fo->getCashLedgers(
"usmf",
"PettyCashUS",
"101180",
"PETTYCASH-USMF"
);
deleteCashLedgers

Deletes a specific cash ledger posting profile.

Parameters:

NameTypeRequiredDescription
dataAreaIdstringYesThe company data area identifier.
cashPostingstringYesThe cash posting key field.
mainAccountIdDisplayValuestringYesThe main account id display value key field.
cashstringYesThe cash key field.
headersDeleteCashLedgersHeadersNoOptional ifMatch ETag header for optimistic concurrency; mapped to If-Match.

Returns: error?

Sample code:

check fo->deleteCashLedgers(
"usmf",
"PettyCashUS",
"101180",
"PETTYCASH-USMF",
headers = {ifMatch: eTag}
);
updateCashLedgers

Updates a specific cash ledger posting profile.

Parameters:

NameTypeRequiredDescription
dataAreaIdstringYesThe company data area identifier.
cashPostingstringYesThe cash posting key field.
mainAccountIdDisplayValuestringYesThe main account id display value key field.
cashstringYesThe cash key field.
payloadCashLedgerYesThe fields to update.
headersUpdateCashLedgersHeadersNoOptional ifMatch ETag header for optimistic concurrency; mapped to If-Match.

Returns: cashmanagement:CashLedger|error

Sample code:

cashmanagement:CashLedger updated = check fo->updateCashLedgers(
"usmf",
"PettyCashUS",
"101180",
"PETTYCASH-USMF",
{description: "Petty cash posting profile - USMF (revised)"},
headers = {ifMatch: eTag}
);

Cash Symbols

listCashSymbols

Reads all cash symbols.

Parameters:

NameTypeRequiredDescription
headersmap<string|string[]>NoHeaders to be sent with the request.
queriesListCashSymbolsQueriesNoOData query parameters: $skip, $top, $filter, $orderby, $expand, cross-company, $count, $select.

Returns: cashmanagement:CashSymbolsCollection|error

Sample code:

cashmanagement:CashSymbolsCollection symbols = check fo->listCashSymbols(
queries = {
top: 20
}
);
createCashSymbols

Creates a cash symbol.

Parameters:

NameTypeRequiredDescription
payloadCashSymbolYesThe cash symbol to create.
headersmap<string|string[]>NoHeaders to be sent with the request.

Returns: cashmanagement:CashSymbol|error

Sample code:

cashmanagement:CashSymbol symbol = check fo->createCashSymbols({
code: "001",
dataAreaId: "usmf",
description: "Cash sale"
});
getCashSymbols

Reads a specific cash symbol by key.

Parameters:

NameTypeRequiredDescription
dataAreaIdstringYesThe company data area identifier.
codestringYesThe code key field.
headersmap<string|string[]>NoHeaders to be sent with the request.
queriesGetCashSymbolsQueriesNoOData query parameters: $expand, $select.

Returns: cashmanagement:CashSymbol|error

Sample code:

cashmanagement:CashSymbol symbol = check fo->getCashSymbols("usmf", "001");
deleteCashSymbols

Deletes a specific cash symbol.

Parameters:

NameTypeRequiredDescription
dataAreaIdstringYesThe company data area identifier.
codestringYesThe code key field.
headersDeleteCashSymbolsHeadersNoOptional ifMatch ETag header for optimistic concurrency; mapped to If-Match.

Returns: error?

Sample code:

check fo->deleteCashSymbols(
"usmf",
"001",
headers = {ifMatch: eTag}
);
updateCashSymbols

Updates a specific cash symbol.

Parameters:

NameTypeRequiredDescription
dataAreaIdstringYesThe company data area identifier.
codestringYesThe code key field.
payloadCashSymbolYesThe fields to update.
headersUpdateCashSymbolsHeadersNoOptional ifMatch ETag header for optimistic concurrency; mapped to If-Match.

Returns: cashmanagement:CashSymbol|error

Sample code:

cashmanagement:CashSymbol updated = check fo->updateCashSymbols(
"usmf",
"001",
{description: "Cash sale - retail counter"},
headers = {ifMatch: eTag}
);

CODA Transactions

listCodaTrans

Reads all CODA transaction codes, used to classify imported electronic bank statement lines.

Parameters:

NameTypeRequiredDescription
headersmap<string|string[]>NoHeaders to be sent with the request.
queriesListCodaTransQueriesNoOData query parameters: $skip, $top, $filter, $orderby, $expand, cross-company, $count, $select.

Returns: cashmanagement:CodaTransCollection|error

Sample code:

cashmanagement:CodaTransCollection codes = check fo->listCodaTrans(
queries = {
filter: "TransactionFamily eq '01'"
}
);
createCodaTrans

Creates a CODA transaction code.

Parameters:

NameTypeRequiredDescription
payloadCodaTransYesThe CODA transaction code to create.
headersmap<string|string[]>NoHeaders to be sent with the request.

Returns: cashmanagement:CodaTrans|error

Sample code:

cashmanagement:CodaTrans codaTrans = check fo->createCodaTrans({
'transaction: "01",
dataAreaId: "usmf",
transactionFamily: "01",
description: "Domestic bank transfer"
});
getCodaTrans

Reads a specific CODA transaction code by key.

Parameters:

NameTypeRequiredDescription
dataAreaIdstringYesThe company data area identifier.
transactionFamilystringYesThe transaction family key field.
'transactionstringYesThe transaction key field.
headersmap<string|string[]>NoHeaders to be sent with the request.
queriesGetCodaTransQueriesNoOData query parameters: $expand, $select.

Returns: cashmanagement:CodaTrans|error

Sample code:

cashmanagement:CodaTrans codaTrans = check fo->getCodaTrans("usmf", "01", "01");
deleteCodaTrans

Deletes a specific CODA transaction code.

Parameters:

NameTypeRequiredDescription
dataAreaIdstringYesThe company data area identifier.
transactionFamilystringYesThe transaction family key field.
'transactionstringYesThe transaction key field.
headersDeleteCodaTransHeadersNoOptional ifMatch ETag header for optimistic concurrency; mapped to If-Match.

Returns: error?

Sample code:

check fo->deleteCodaTrans(
"usmf",
"01",
"01",
headers = {ifMatch: eTag}
);
updateCodaTrans

Updates a specific CODA transaction code.

Parameters:

NameTypeRequiredDescription
dataAreaIdstringYesThe company data area identifier.
transactionFamilystringYesThe transaction family key field.
'transactionstringYesThe transaction key field.
payloadCodaTransYesThe fields to update.
headersUpdateCodaTransHeadersNoOptional ifMatch ETag header for optimistic concurrency; mapped to If-Match.

Returns: cashmanagement:CodaTrans|error

Sample code:

cashmanagement:CodaTrans updated = check fo->updateCodaTrans(
"usmf",
"01",
"01",
{description: "Domestic bank transfer (SEPA)"},
headers = {ifMatch: eTag}
);

Exchange Rate Setups

listExchSetups

Reads all currency exchange rate type setups.

Parameters:

NameTypeRequiredDescription
headersmap<string|string[]>NoHeaders to be sent with the request.
queriesListExchSetupsQueriesNoOData query parameters: $skip, $top, $filter, $orderby, $expand, cross-company, $count, $select.

Returns: cashmanagement:ExchSetupsCollection|error

Sample code:

cashmanagement:ExchSetupsCollection setups = check fo->listExchSetups(
queries = {
filter: "AccountType eq 'Bank'"
}
);
createExchSetups

Creates a currency exchange rate type setup.

Parameters:

NameTypeRequiredDescription
payloadExchSetupYesThe exchange rate setup to create.
headersmap<string|string[]>NoHeaders to be sent with the request.

Returns: cashmanagement:ExchSetup|error

Sample code:

cashmanagement:ExchSetup setup = check fo->createExchSetups({
exchangeCode: "BANKFEES",
dataAreaId: "usmf",
accountType: "Bank"
});
getExchSetups

Reads a specific currency exchange rate type setup by key.

Parameters:

NameTypeRequiredDescription
dataAreaIdstringYesThe company data area identifier.
exchangeCodestringYesThe exchange code key field.
headersmap<string|string[]>NoHeaders to be sent with the request.
queriesGetExchSetupsQueriesNoOData query parameters: $expand, $select.

Returns: cashmanagement:ExchSetup|error

Sample code:

cashmanagement:ExchSetup setup = check fo->getExchSetups("usmf", "BANKFEES");
deleteExchSetups

Deletes a specific currency exchange rate type setup.

Parameters:

NameTypeRequiredDescription
dataAreaIdstringYesThe company data area identifier.
exchangeCodestringYesThe exchange code key field.
headersDeleteExchSetupsHeadersNoOptional ifMatch ETag header for optimistic concurrency; mapped to If-Match.

Returns: error?

Sample code:

check fo->deleteExchSetups(
"usmf",
"BANKFEES",
headers = {ifMatch: eTag}
);
updateExchSetups

Updates a specific currency exchange rate type setup.

Parameters:

NameTypeRequiredDescription
dataAreaIdstringYesThe company data area identifier.
exchangeCodestringYesThe exchange code key field.
payloadExchSetupYesThe fields to update.
headersUpdateExchSetupsHeadersNoOptional ifMatch ETag header for optimistic concurrency; mapped to If-Match.

Returns: cashmanagement:ExchSetup|error

Sample code:

cashmanagement:ExchSetup updated = check fo->updateExchSetups(
"usmf",
"BANKFEES",
{accountType: "Ledger"},
headers = {ifMatch: eTag}
);