Skip to main content

Actions

The ballerinax/sap.successfactors.ecadvances package exposes the following clients:

Available clients:

ClientPurpose
ClientManages ecadvances objects: AdvancesInstallments, AdvancesEligibility, AdvancesAccumulation, Advance, over the SAP SuccessFactors OData v2 API.

Client​

You can use these APIs to manage the information about payroll advances and the recovery of the advances.

Configuration​

ConnectionConfig​

Provides a set of configurations for controlling the behaviours when communicating with the SAP SuccessFactors OData endpoint. Passed as the argument to the client initializer.

FieldTypeDefaultDescription
authhttp:CredentialsConfigRequiredConfigurations related to client authentication
httpVersionhttp:HttpVersionSee defaultThe HTTP version understood by the client
http1Settingshttp:ClientHttp1SettingsSee defaultConfigurations related to HTTP/1.x protocol
http2Settingshttp:ClientHttp2SettingsSee defaultConfigurations related to HTTP/2 protocol
timeoutdecimalSee defaultThe maximum time to wait (in seconds) for a response before closing the connection
forwardedstringSee defaultThe choice of setting forwarded/x-forwarded header
followRedirectshttp:FollowRedirectsOptionalConfigurations associated with Redirection
poolConfighttp:PoolConfigurationOptionalConfigurations associated with request pooling
cachehttp:CacheConfigSee defaultHTTP caching related configurations
compressionhttp:CompressionSee defaultSpecifies the way of handling compression (accept-encoding) header
circuitBreakerhttp:CircuitBreakerConfigOptionalConfigurations associated with the behaviour of the Circuit Breaker
retryConfighttp:RetryConfigOptionalConfigurations associated with retrying
cookieConfighttp:CookieConfigOptionalConfigurations associated with cookies
responseLimitshttp:ResponseLimitConfigsSee defaultConfigurations associated with inbound response size limits
secureSockethttp:ClientSecureSocketOptionalSSL/TLS-related options
proxyhttp:ProxyConfigOptionalProxy server related options
socketConfighttp:ClientSocketConfigSee defaultProvides settings related to client socket configuration
validationbooleanSee defaultEnables the inbound payload validation functionality which provided by the constraint package. Enabled by default
laxDataBindingbooleanSee defaultEnables relaxed data binding on the client side. When enabled, nil values are treated as optional, and absent fields are handled as nilable types. Enabled by default.

The client also accepts a hostname string parameter (the SAP SuccessFactors API server host) and an optional port (defaults to 443).

Initializing the client​

import ballerinax/sap.successfactors.ecadvances;

configurable string hostname = ?;
configurable string username = ?;
configurable string password = ?;

ecadvances:Client client = check new (
{
auth: { username, password }
},
hostname
);

Operations​

AdvancesInstallments​

listAdvancesInstallmentss

Queries the AdvancesInstallments collection and returns a page of entities, optionally filtered, sorted, and paged via OData query options.

Parameters:

NameTypeRequiredDescription
headersmap<string|string[]>NoHeaders to be sent with the request
queriesListAdvancesInstallmentssQueriesNoQueries to be sent with the request

Returns: ListAdvancesInstallmentssResponse&#124;error

Sample code:

ListAdvancesInstallmentssResponse result = check client->listAdvancesInstallmentss();

Sample response:

{
"d": {
"results": [
{
"Advance_externalCode": "1000",
"NonRecurringPayment_externalCode": "1000",
"externalCode": "1000"
}
]
}
}
getAdvancesInstallments

Retrieves a single AdvancesInstallments entity identified by its key properties.

Parameters:

NameTypeRequiredDescription
Advance_externalCodestringYeskey: Advance_externalCode
NonRecurringPayment_externalCodestringYeskey: NonRecurringPayment_externalCode
externalCodestringYeskey: externalCode
headersmap<string|string[]>NoHeaders to be sent with the request
queriesGetAdvancesInstallmentsQueriesNoQueries to be sent with the request

Returns: AdvancesInstallments&#124;error

Sample code:

AdvancesInstallments result = check client->getAdvancesInstallments(Advance_externalCode, NonRecurringPayment_externalCode, externalCode);

Sample response:

{
"Advance_externalCode": "1000",
"NonRecurringPayment_externalCode": "1000",
"externalCode": "1000"
}

AdvancesEligibility​

listAdvancesEligibilitys

Queries the AdvancesEligibility collection and returns a page of entities, optionally filtered, sorted, and paged via OData query options.

Parameters:

NameTypeRequiredDescription
headersmap<string|string[]>NoHeaders to be sent with the request
queriesListAdvancesEligibilitysQueriesNoQueries to be sent with the request

Returns: ListAdvancesEligibilitysResponse&#124;error

Sample code:

ListAdvancesEligibilitysResponse result = check client->listAdvancesEligibilitys();

Sample response:

{
"d": {
"results": [
{
"effectiveStartDate": "2026-01-01",
"externalCode": "1000"
}
]
}
}
getAdvancesEligibility

Retrieves a single AdvancesEligibility entity identified by its key properties.

Parameters:

NameTypeRequiredDescription
effectiveStartDatestringYeskey: effectiveStartDate
externalCodestringYeskey: externalCode
headersmap<string|string[]>NoHeaders to be sent with the request
queriesGetAdvancesEligibilityQueriesNoQueries to be sent with the request

Returns: AdvancesEligibility&#124;error

Sample code:

AdvancesEligibility result = check client->getAdvancesEligibility(effectiveStartDate, externalCode);

Sample response:

{
"effectiveStartDate": "2026-01-01",
"externalCode": "1000"
}

AdvancesAccumulation​

listAdvancesAccumulations

Queries the AdvancesAccumulation collection and returns a page of entities, optionally filtered, sorted, and paged via OData query options.

Parameters:

NameTypeRequiredDescription
headersmap<string|string[]>NoHeaders to be sent with the request
queriesListAdvancesAccumulationsQueriesNoQueries to be sent with the request

Returns: ListAdvancesAccumulationsResponse&#124;error

Sample code:

ListAdvancesAccumulationsResponse result = check client->listAdvancesAccumulations();

Sample response:

{
"d": {
"results": [
{
"externalCode": "1000"
}
]
}
}
getAdvancesAccumulation

Retrieves a single AdvancesAccumulation entity identified by its key property.

Parameters:

NameTypeRequiredDescription
externalCodestringYeskey: externalCode
headersmap<string|string[]>NoHeaders to be sent with the request
queriesGetAdvancesAccumulationQueriesNoQueries to be sent with the request

Returns: AdvancesAccumulation&#124;error

Sample code:

AdvancesAccumulation result = check client->getAdvancesAccumulation(externalCode);

Sample response:

{
"externalCode": "1000"
}

Advance​

listAdvances

Queries the Advance collection and returns a page of entities, optionally filtered, sorted, and paged via OData query options.

Parameters:

NameTypeRequiredDescription
headersmap<string|string[]>NoHeaders to be sent with the request
queriesListAdvancesQueriesNoQueries to be sent with the request

Returns: ListAdvancesResponse&#124;error

Sample code:

ListAdvancesResponse result = check client->listAdvances();

Sample response:

{
"d": {
"results": [
{
"NonRecurringPayment_externalCode": "1000",
"externalCode": "1000",
"advanceEligibilityCodeNav": {},
"advancesInstallments": {}
}
]
}
}
getAdvance

Retrieves a single Advance entity identified by its key properties.

Parameters:

NameTypeRequiredDescription
NonRecurringPayment_externalCodestringYeskey: NonRecurringPayment_externalCode
externalCodestringYeskey: externalCode
headersmap<string|string[]>NoHeaders to be sent with the request
queriesGetAdvanceQueriesNoQueries to be sent with the request

Returns: Advance&#124;error

Sample code:

Advance result = check client->getAdvance(NonRecurringPayment_externalCode, externalCode);

Sample response:

{
"NonRecurringPayment_externalCode": "1000",
"externalCode": "1000",
"advanceEligibilityCodeNav": {
"results": [
{
"effectiveStartDate": "2026-01-01",
"externalCode": "1000"
}
]
},
"advancesInstallments": {
"results": [
{
"Advance_externalCode": "1000",
"NonRecurringPayment_externalCode": "1000",
"externalCode": "1000"
}
]
}
}