Response Limits
eXite® enforces maximum limits on the size of responses to prevent oversized payloads that could cause client-side processing issues.
System limits
| Operation | Max. invoices | Max. total size |
|---|---|---|
receiveInterchange |
1,000 | 200 MB |
getInterchangeStatus |
10,000 | 1 GB |
Setting custom limits
You can specify lower limits per request using the sessionLimits element in the SOAP Header. This is strongly recommended in production.
<eXite:sessionLimits>
<eXite:maxInterchangeReceive>100</eXite:maxInterchangeReceive>
<eXite:maxSizeReceive>52428800</eXite:maxSizeReceive> <!-- 50 MB -->
</eXite:sessionLimits>
The response will contain at most 100 invoices or 50 MB — whichever limit is hit first.
Handling REFETCH
When more invoices match the criteria than fit within the limit, the response header includes a REFETCH code:
<eXite:sessionProcessing>
<eXite:sessionProcessingInformation
eXite:sessionProcessingInformationCode="REFETCH">
Found too many matching interchanges. Please fetch again.
</eXite:sessionProcessingInformation>
</eXite:sessionProcessing>
Already-collected invoices will not be returned again in the next request — eXite® marks them as collected after each successful receiveInterchange call.
Handling EXTENDLIMITS
If the session limits are set too low to return even a single document, eXite® returns EXTENDLIMITS:
<eXite:sessionProcessingInformation
eXite:sessionProcessingInformationCode="EXTENDLIMITS">
There are matching interchanges but none fit within the current limits.
</eXite:sessionProcessingInformation>
In this case, increase maxInterchangeReceive and/or maxSizeReceive and retry.
Recommended approach for polling
Set maxInterchangeReceive to a manageable batch size (e.g. 50–100) and poll in a loop until no REFETCH code is returned.