Skip to main content

Portal Proveedores — Settlements Report

Query settlement data for providers within the authenticated tenant. Settlements group invoices into consolidated payment batches.

Operator-scoped JWT

All endpoints filter results by the ciaid (tenant/company ID) embedded in the JWT. Optional providers and states filters narrow the results.


Settlements Report

Retrieve a paginated list of settlements with per-row detail and an aggregated summary.

GET/apidev/v1/reports/portal/settlements
PermissionAPICLI_RPTPORTAL_LIQUIDACIONES
Rate Limit10 req/min (sliding window)
Cache300s

Request Headers

Every request to a protected endpoint requires these headers:

HeaderRequiredDescription
AuthorizationYesBearer token obtained from the Login endpoint. Format: Bearer <token>
X-API-KeyYesCompany integration key provided during onboarding. Format: gtk_xxx...
tenantYesYour company hostname (e.g., yourcompany.geotareas.com)
Content-TypeConditionalapplication/json — required for POST and PUT requests

Query Parameters

ParameterTypeRequiredDefaultDescription
startdatestring (ISO 8601)YesStart date filter
enddatestring (ISO 8601)YesEnd date filter (max 93-day range)
providersstring|string[]NoComma-separated provider IDs (max 100)
statesstring|string[]NoComma-separated state IDs (max 10)
limitintegerNo25Records per page. Min: 1, Max: 100
offsetintegerNo0Number of records to skip

Response Fields — data.rows[]

FieldTypeDescription
settlement_idstringSettlement unique identifier
provider_idstringProvider ID
provider_namestringProvider display name
datestringSettlement date
state_idnumberSettlement state ID
state_namestringSettlement state display name
invoice_countnumberNumber of invoices included
totalnumberSettlement total amount
total_vouchersnumberTotal voucher amount
total_adjustmentsnumberTotal adjustments amount
differencenumberDifference between total and vouchers
forced_closebooleanWhether the settlement was force-closed
payment_numberstring | nullPayment reference number
payment_notesstring | nullPayment notes
close_datestring | nullSettlement close date
voucher_countnumberNumber of vouchers attached

Response Fields — data.summary

FieldTypeDescription
total_settlementsnumberTotal settlement count
total_systemnumberTotal system amount
total_vouchersnumberTotal voucher amount
total_differencenumberTotal difference
closednumberClosed settlements count
opennumberOpen settlements count

Code Examples

curl -s -X GET "https://api.example.com/apidev/v1/reports/portal/settlements?startdate=2026-03-01&enddate=2026-03-31" \
-H "Authorization: Bearer $TOKEN" \
-H "X-API-Key: $APIKEY" \
-H "tenant: $TENANT"

Response Example

{
"success": true,
"data": {
"rows": [
{
"settlement_id": "9100000000001",
"provider_id": "5678",
"provider_name": "Taller Sanca",
"date": "2026-04-03T10:00:00",
"state_id": 1,
"state_name": "Abierta",
"invoice_count": 3,
"total": 3294.00,
"total_vouchers": 3300.00,
"total_adjustments": 0,
"difference": 6.00,
"forced_close": false,
"payment_number": null,
"payment_notes": null,
"close_date": null,
"voucher_count": 2
}
],
"summary": {
"total_settlements": 1,
"total_system": 3294.00,
"total_vouchers": 3300.00,
"total_difference": 6.00,
"closed": 0,
"open": 1
}
},
"meta": {
"total": 1,
"limit": 25,
"offset": 0
}
}

Errors

CodeHTTPDescription
INVALID_DATE_RANGE400Date range exceeds 93 days or dates are invalid
CodeHTTP StatusDescriptionResolution
VALIDATION_ERROR400Request body or query parameters failed validationCheck the error.details field for specific validation failures
UNAUTHORIZED401Missing, expired, or invalid JWT token or API keyRe-authenticate via Login to get a fresh token
RATE_LIMITED429Too many requests — rate limit exceededWait until the Retry-After header time elapses. See Rate Limits
INTERNAL_ERROR500Unexpected server errorRetry after a brief delay. If persistent, contact support