Actions
The ballerinax/sap.successfactors.ecadvances package exposes the following clients:
Available clients:
| Client | Purpose |
|---|---|
Client | Manages 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.
| Field | Type | Default | Description |
|---|---|---|---|
auth | http:CredentialsConfig | Required | Configurations related to client authentication |
httpVersion | http:HttpVersion | See default | The HTTP version understood by the client |
http1Settings | http:ClientHttp1Settings | See default | Configurations related to HTTP/1.x protocol |
http2Settings | http:ClientHttp2Settings | See default | Configurations related to HTTP/2 protocol |
timeout | decimal | See default | The maximum time to wait (in seconds) for a response before closing the connection |
forwarded | string | See default | The choice of setting forwarded/x-forwarded header |
followRedirects | http:FollowRedirects | Optional | Configurations associated with Redirection |
poolConfig | http:PoolConfiguration | Optional | Configurations associated with request pooling |
cache | http:CacheConfig | See default | HTTP caching related configurations |
compression | http:Compression | See default | Specifies the way of handling compression (accept-encoding) header |
circuitBreaker | http:CircuitBreakerConfig | Optional | Configurations associated with the behaviour of the Circuit Breaker |
retryConfig | http:RetryConfig | Optional | Configurations associated with retrying |
cookieConfig | http:CookieConfig | Optional | Configurations associated with cookies |
responseLimits | http:ResponseLimitConfigs | See default | Configurations associated with inbound response size limits |
secureSocket | http:ClientSecureSocket | Optional | SSL/TLS-related options |
proxy | http:ProxyConfig | Optional | Proxy server related options |
socketConfig | http:ClientSocketConfig | See default | Provides settings related to client socket configuration |
validation | boolean | See default | Enables the inbound payload validation functionality which provided by the constraint package. Enabled by default |
laxDataBinding | boolean | See default | Enables 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:
| Name | Type | Required | Description |
|---|---|---|---|
headers | map<string|string[]> | No | Headers to be sent with the request |
queries | ListAdvancesInstallmentssQueries | No | Queries to be sent with the request |
Returns: ListAdvancesInstallmentssResponse|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:
| Name | Type | Required | Description |
|---|---|---|---|
Advance_externalCode | string | Yes | key: Advance_externalCode |
NonRecurringPayment_externalCode | string | Yes | key: NonRecurringPayment_externalCode |
externalCode | string | Yes | key: externalCode |
headers | map<string|string[]> | No | Headers to be sent with the request |
queries | GetAdvancesInstallmentsQueries | No | Queries to be sent with the request |
Returns: AdvancesInstallments|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:
| Name | Type | Required | Description |
|---|---|---|---|
headers | map<string|string[]> | No | Headers to be sent with the request |
queries | ListAdvancesEligibilitysQueries | No | Queries to be sent with the request |
Returns: ListAdvancesEligibilitysResponse|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:
| Name | Type | Required | Description |
|---|---|---|---|
effectiveStartDate | string | Yes | key: effectiveStartDate |
externalCode | string | Yes | key: externalCode |
headers | map<string|string[]> | No | Headers to be sent with the request |
queries | GetAdvancesEligibilityQueries | No | Queries to be sent with the request |
Returns: AdvancesEligibility|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:
| Name | Type | Required | Description |
|---|---|---|---|
headers | map<string|string[]> | No | Headers to be sent with the request |
queries | ListAdvancesAccumulationsQueries | No | Queries to be sent with the request |
Returns: ListAdvancesAccumulationsResponse|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:
| Name | Type | Required | Description |
|---|---|---|---|
externalCode | string | Yes | key: externalCode |
headers | map<string|string[]> | No | Headers to be sent with the request |
queries | GetAdvancesAccumulationQueries | No | Queries to be sent with the request |
Returns: AdvancesAccumulation|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:
| Name | Type | Required | Description |
|---|---|---|---|
headers | map<string|string[]> | No | Headers to be sent with the request |
queries | ListAdvancesQueries | No | Queries to be sent with the request |
Returns: ListAdvancesResponse|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:
| Name | Type | Required | Description |
|---|---|---|---|
NonRecurringPayment_externalCode | string | Yes | key: NonRecurringPayment_externalCode |
externalCode | string | Yes | key: externalCode |
headers | map<string|string[]> | No | Headers to be sent with the request |
queries | GetAdvanceQueries | No | Queries to be sent with the request |
Returns: Advance|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"
}
]
}
}