Skip to main content

Auto-Retry

Where to find it

This form opens from the Scheduled jobs page: click a job of kind Auto-retry to edit it, or New job → Auto-retry to create one. Save & apply reloads the schedules at once — no server restart.

An Auto-retry job resends to the Plateforme Agréée (PA), once a day, every invoice currently in the chosen statuses. The usual job resends the Send failed (9904) invoices at 3 a.m., so that what failed during the day — a platform outage, a timeout — is sent again before the morning.

Several jobs can coexist, each with its own time and its own statuses. The job uses the same resend as the Resend all N button of the IT dashboard's Send failed card, and each invoice goes through the resend rules. The job works the same whatever the source system — JD Edwards, SAP, NetSuite or a custom ERP: it resends the UBL stored for each invoice.


At a glance​

Auto-retry · retry-send-failedGENERALDESCRIPTIONOvernight resend of send failuresEnabledSCHEDULEHOUR3MINUTE0TARGETSTATUSES TO RETRY9904 · Send failed ×9907 · PA import failed ×— add status —ONLY RETRY INVOICES FROM THE LAST N DAYS00 = no date narrowingTHROTTLEWAIT BETWEEN PA CALLS (MS)100PARALLEL WORKERS4Save & applyEnabledoff = kept, never firedDaily timeserver time, once a dayError – tech codes9904 by default · OR between codesIssue datelast N days · 0 = allParallel workers1 to 8 · the wait applies to eachSave & applyreloads schedules, no restart

Fields​

General​

FieldDefaultDescription
Name—Given when the job is created (New job); it identifies the job on the Scheduled jobs page.
DescriptionemptyFree text: what the job covers.
EnabledonOff, the job is kept but never fired on schedule.

Schedule​

FieldDefaultDescription
Hour3Hour of the daily run (0–23), server time.
Minute0Minute of the run (0–59). Shifting the minute keeps two jobs from starting together.

Target​

FieldDefaultDescription
Statuses to retry9904One or more codes, picked among the statuses of the Error – tech group of the Status catalogue, except 9905 (Validation failed), which is never resent. Several codes combine with OR. With no status picked, nothing runs.
Only retry invoices from the last N days0Keeps only the invoices whose issue date falls in the last N days. 0 keeps every invoice in the chosen statuses.

A resend accepts only the internal 99xx statuses other than 9905, 9911 and 9913 (see the resend rules):

CodeLabelResent?
9904Send failedYes — the usual target.
9907PA import failedYes.
9909PA export failedYes.
9905Validation failedNot offered — a UBL that failed validation is never sent: correct the invoice, or run a full reprocess, which validates it again.
213RejectedNo — a platform status, refused by the resend and counted as failed. A 213 for an addressing reason (ADR_ERR, REJ_ADR, DEST_INC) is reopened by Fix buyer, which revalidates it and can resend it.

Throttle​

FieldDefaultDescription
Wait between PA calls (ms)100Pause between two sends. Raise it when the platform limits the request rate; 0 sends without pause.
Parallel workers4Number of sends run at the same time (1 to 8). The wait applies to each worker, so the rate towards the platform is about workers ÷ wait. 1 sends one invoice after the other.

The connector's own request limits apply on top of these settings.


What happens at the scheduled time​

  1. The job selects the invoices whose status is one of the chosen codes, narrowed to the last N days of issue date when set — up to 100,000 invoices per run.
  2. Each invoice is resent with the resend rules: document type Do not send, missing UBL, validation failure or platform status → failed, without a call to the platform.
  3. The run ends with a summary ok=… fail=… of …, shown in the Result column of the Scheduled jobs page and in its run history.

Run now on the Scheduled jobs page fires the job at once with its current settings; the next scheduled run is unchanged. A run missed while the server was stopped is not caught up: the next one fires at its usual time.


Tips & best practices​

  • One job for 9904 is enough in most cases. Add a job only for another time or another set of statuses.
  • Leave 213 out. A 213 is always refused by the resend; an addressing reject goes through Fix buyer.
  • Shift the minutes. Two jobs at the same minute compete for the database connections and the platform.
  • Raise the wait on 429. A Too Many Requests answer from the platform means the rate is too high: raise the wait or lower the workers.
  • Disable rather than delete during a known platform outage: the job stays visible and is easy to turn back on.