Credit Transfer Batch Reject Webhook event

Failed vs Rejected Batches

It is important to distinguish between FAILED and REJECTED states, which both indicate unsuccessful processing but have different implications:

  • A FAILED batch occurs when the entire batch fails validation checks before individual Credit Transfers (CTs) are created. This is a batch-level failure triggered by a common error affecting the whole batch. The batch is marked as FAILED, and no CTs are created.
  • REJECTED applies when individual CTs within a batch fail specific validations during processing. This is a transaction-level failure, and a batch can be marked as REJECTED even if only one CT fails. A REJECTED batch can also have a mix of rejected and failed CTs.

The following table summarises the key differences:

Feature FAILED REJECTED
Scope Batch-level Transaction-level (can include batch-level failures)
Trigger Failure of batch-level validations Failure of individual CT validations during processing
CT Creation No CTs are created CTs are created, but some/all may fail or be rejected
Error Reporting rejectDetails on the batch object rejectDetails on individual CT objects (and potentially the batch)
Example Reason Invalid originator account, incorrect total amount Insufficient funds for a specific CT

Webhook Message Details

This Webhook has the following event types:

Webhook Event Type Description
CreditTransferBatchRejected Triggered where a Credit Transfer batch transitions to status = REJECTED

Webhook Event Message Details

The following table describes the details of the Webhook notification:

Parent Parameter Type Mandatory/Optional Description
root eventTimestamp number Mandatory The Unix epoch timestamp
root eventType string Mandatory CreditTransferBatchRejected
root resourceReference string optional This can be the business reference of the resource, useful when filtering events via the Webhooks area of the Nuapay Console.
root resourceReferenceType string optional This can be a business reference of the resource, useful when filtering events via the Webhooks area of the Developer Dashboard.
root resourceUri string Mandatory This is the URI of the resource. Use the URI to retrieve more details - see Retrieve Credit Transfer Batch.
root resourceId string Mandatory The encoded technical ID of the resource being referenced in the event.
root resourceType string Mandatory This is the type of the resource to which the URI is related. In this case it is a Credit Transfer Batch resource.
root reasonCode string optional The SEPA Reason Code, the Bacs Reason Code (depending on the scheme) or the Application Reason Code (where a batch has been rejected prior be being passed to Clearing).
root resourceOwner string Mandatory This is the identifier of the merchant resource to which this notification is linked.
root resourceRemittanceInformation string optional Null.

JSON Sample

The following is an example of a Credit Transfer Batch Rejection event JSON:

Headers:

POST http://example.com/webhooks
Content-Type: application/json;charset=UTF-8
x-signature: 123ab01d030dee864fb44cc65a3be52ae591f46cde8d14d3e72fbc3790e4a304
Content-Length: 261
X-Request-Id: dc645679-71a5-498d-bb29-ec027948c7c1

JSON Request Body

{

 "eventTimestamp": 1501169079000,
 "eventType": "CreditTransferBatchRejected",    
 "resourceReference": "E2E123456",
 "resourceReferenceType": "Reference",   
 "resourceUri": "/credittransfers/batches/u34y5qfv2p",
 "resourceId": "u34y5qfv2p",
 "resourceType": "CreditTransferBatch",
 "reasonCode": null,
 "resourceOwner": "878UJK",
 "resourceRemittanceInformation": null


}