Skip to main content
GET
/
v2
/
payout
/
notifications
/
resend
/
{jobId}
Resend Job Status
curl --request GET \
  --url https://api.sandbox.wepayout.com.br/v2/payout/notifications/resend/{jobId} \
  --header 'Authorization: Bearer <token>'
{
  "status": "processing",
  "merchant_id": 303,
  "start_time": "2026-03-24 08:00:00",
  "end_time": "2026-03-24 11:00:00",
  "total": 87,
  "queued": 60,
  "failed": 0,
  "started_at": "2026-03-24T08:05:00+00:00",
  "updated_at": "2026-03-24T08:07:32+00:00"
}

Overview

After dispatching a bulk resend job via Resend Payout Webhooks (Bulk), use this endpoint to monitor its progress. Job state is available for 24 hours after completion.

Path Parameters

jobId
string
required
The job ID returned by the bulk resend endpoint.Example: "a3f1bc2e4d8f0a1b2c3d4e5f6a7b8c9d"

Response

status
string
Current status of the job.
ValueDescription
processingJob is running — transactions are being queued
completedJob finished successfully
failedJob encountered a fatal error and was aborted
merchant_id
integer
ID of the merchant for which the resend was triggered.Example: 303
start_time
string
Start of the time range used in the original request.Example: "2026-03-24 08:00:00"
end_time
string
End of the time range used in the original request.Example: "2026-03-24 11:00:00"
total
integer
Total number of payout transactions matched at the time of dispatch.Example: 87
queued
integer
Number of webhook notifications successfully enqueued so far.Example: 60
failed
integer
Number of webhook notifications that failed to be enqueued.Example: 1
started_at
string
ISO 8601 timestamp of when the job started.Example: "2026-03-24T08:05:00+00:00"
updated_at
string
ISO 8601 timestamp of the last state update.Example: "2026-03-24T08:07:32+00:00"
reason
string
Present only when status is failed. Describes the fatal error that caused the job to abort.Example: "Connection refused"
{
  "status": "processing",
  "merchant_id": 303,
  "start_time": "2026-03-24 08:00:00",
  "end_time": "2026-03-24 11:00:00",
  "total": 87,
  "queued": 60,
  "failed": 0,
  "started_at": "2026-03-24T08:05:00+00:00",
  "updated_at": "2026-03-24T08:07:32+00:00"
}

Code Examples

curl -X GET "https://api.wepayments.com/v2/payout/notifications/resend/a3f1bc2e4d8f0a1b2c3d4e5f6a7b8c9d" \
  -H "Authorization: Bearer YOUR_API_KEY"

Polling the Job

Job state is updated in real-time as the job processes each chunk of 200 transactions. A simple polling pattern:
async function waitForJob(jobId, intervalMs = 3000) {
  while (true) {
    const res = await fetch(
      `https://api.wepayments.com/v2/payout/notifications/resend/${jobId}`,
      { headers: { 'Authorization': 'Bearer YOUR_API_KEY' } }
    );
    const job = await res.json();

    console.log(`[${job.status}] queued: ${job.queued}/${job.total}, failed: ${job.failed}`);

    if (job.status === 'completed' || job.status === 'failed') {
      return job;
    }

    await new Promise(resolve => setTimeout(resolve, intervalMs));
  }
}
Job state is stored for 24 hours. After that, the endpoint will return 404.

Resend Webhooks (Bulk)

Dispatch a new bulk resend job

Payout Webhook

Understand the webhook payload structure