Search Overlay

Example of Webhooks for BACS

Payment Completed

For more information on Payment Completed Request and Response, see Payment Completed.

Webhook Payload

{
"payload": {
"accountId": "1002397300",
"id": "90500680",
"merchantRefNum": "MerchantRefSepaCharge",
"amount": 3740,
"currencyCode": "EUR",
"status": "COMPLETED",
"paymentType": "SEPA",
"txnTime": "2022-03-25T04:00:00Z",
"statusTime": "2022-03-23T10:24:31Z",
"processorCode": "JPMCS",
"dueDate": "2022-03-25T04:00:00Z",
"billingDetails": {
"zip": "90210",
"country": "FR",
"city": "San Jose",
"phone": "16137779100",
"street1": "5 main st",
"street2": "Crescent"
},
"profile": {
"firstName": "Jane",
"lastName": "Doe",
"phone": "16137779100",
"email": "support@firepay.com"
},
"customerIp": "127.0.0.1",
"settleWithAuth": true,
"sepa": {
"checkNumber": "164",
"mandateReference": "9DBDA361ECCD4F02AAF7410876F51AE0",
"bankReference": "9DBDA361ECCD4F02AAF7410876F51AE0",
"iban": "GB86RBOS60161331926819",
"lastDigits": "19",
"bic": "RBOSGB2L"
},
"settlementId": "90500680",
"settlementAmount": 3740,
"settlementStatus": "PENDING"
},
"attemptNumber": "1",
"type": "PAYMENT",
"eventDate": "2022-03-25T04:00:00Z",
"eventName": "PAYMENT_COMPLETED"
}

Settlement Cleared

The Settlement Cleared webhook will be triggered on the 6th business day after the settlement is completed, thus merchants need to wait till the clearing date.

  1. Initiate transaction with the request in Payment Completed event.
  2. Merchants to test in Netbanx and wait for a SQL block to execute and clear the transactions in few hours until they receive a webhook for Settlement Cleared.

For more information on Settlement Cleared Request and Response, see Settlement Cleared.

Settlement Cancelled

  1. Copy the id from Payment Completed response and send that as a path variable in the below request.

For more information on Settlement Cancelled Request and Response, see Settlement Cancelled.

Webhook Payload

{
"payload": {
"accountId": "1002397280",
"id": "90503000",
"merchantRefNum": "Bacs charge test",
"amount": 3179,
"currencyCode": "GBP",
"status": "CANCELLED",
"statusTime": "2022-03-23T11:13:06Z",
"paymentType": "BACS",
"txnTime": "2022-03-23T07:07:38Z",
"processorCode": "BACS"
},
"attemptNumber": "1",
"type": "SETTLEMENT",
"eventDate": "2022-03-23T07:07:38Z",
"eventName": "SETTLEMENT_CANCELLED"

Payment Returned Completed

  1. Perform any transaction using the server to server method and save the transaction ID returned in the response.
  2. Login to the TEST netbanx portal and click Reports.
  3. Select Payment Method as DirectDebit and search with Transaction Id and click Go to open transaction details.
  4. Click Update Status in the History Section.
  5. Select Rejected with valid descriptions and Submit. (Transaction will change to Returned status)

Once the Publish event job runs as scheduled, we will get the webhook for Payment Returned.

Webhook Payload

{
"payload": {
"accountId": "1002397280",
"id": "701e60de-597a-4d06-9d14-a0c6fb289bf2",
"merchantRefNum": "Bacs charge test",
"amount": 1359,
"currencyCode": "GBP",
"status": "COMPLETED",
"paymentType": "BACS",
"txnTime": "2022-03-23T12:18:50Z",
"statusTime": "2022-03-23T12:18:50Z",
"processorCode": "BACS",
"paymentId": "90505460",
"settlementId": "90505460",
"bankResponse": {
"scheme": "BACS",
"name": "Bacs",
"reasonCode": "L"
},
"reason": "Invalid Account"
},
"attemptNumber": "1",
"type": "PAYMENT_RETURN",
"eventDate": "2022-03-23T12:18:50Z",
"eventName": "PAYMENT_RETURN_COMPLETED"
}

Settlement Completed

This event will trigger when you move the transaction status to Payment Returned in the netbanx portal. The steps are the same as for Payment Return Completed.

Payment Failed

For further assistance with your test account configuration, contact partnersupport@paysafe.com.

For more information on Payment Failed Request and Response, see Payment Failed.

Webhook Payload

{
"payload": {
"accountId": "1002397300",
"id": "90546810",
"merchantRefNum": "MerchantRefSepaCharge",
"amount": 3607,
"currencyCode": "EUR",
"status": "FAILED",
"paymentType": "SEPA",
"txnTime": "2022-03-25T04:00:00Z",
"statusTime": "2022-03-23T16:09:44Z",
"processorCode": "JPMCS",
"dueDate": "2022-03-25T04:00:00Z",
"error": {
"code": "1004",
"message": "Operation not enabled"
},
"billingDetails": {
"zip": "90210",
"country": "FR",
"city": "San Jose",
"phone": "16137779100",
"street1": "5 main st",
"street2": "Crescent"
},
"profile": {
"firstName": "Jane",
"lastName": "Doe",
"phone": "16137779100",
"email": "support@firepay.com"
},
"customerIp": "127.0.0.1",
"settleWithAuth": true,
"sepa": {
"checkNumber": "164",
"mandateReference": "9DBDA361ECCD4F02AAF7410876F51AE0",
"bankReference": "9DBDA361ECCD4F02AAF7410876F51AE0",
"iban": "GB86RBOS60161331926819",
"lastDigits": "19",
"bic": "RBOSGB2L"
}
},
"attemptNumber": "1",
"type": "PAYMENT",
"eventDate": "2022-03-25T04:00:00Z",
"eventName": "PAYMENT_FAILED"
}

StandAlone Credit Pending

For more information on StandAlone Credit Pending, see StandAlone Credit Pending.

Webhook Payload

{
"payload": {
"accountId": "1002397280",
"id": "90657510",
"merchantRefNum": "Bacs credit test",
"amount": 3908,
"currencyCode": "GBP",
"status": "PENDING",
"paymentType": "BACS",
"txnTime": "2020-12-10T09:01:15Z",
"statusTime": "2020-12-10T09:01:15Z",
"processorCode": "BACS",
"dueDate": "2020-12-10T09:01:15Z",
"bacs": {
"checkNumber": "602",
"mandateReference": "ZFWZYF5316",
"bankReference": "ZFWZYF531690657510",
"lastDigits": "76",
"sortCode": "207405"
},
"customerIp": "127.0.0.1",
"billingDetails": {
"zip": "90210",
"country": "GB",
"city": "San Jose",
"phone": "16137779100",
"street1": "5 main st",
"street2": "Crescent"
},
"profile": {
"firstName": "Jane",
"lastName": "Doe",
"phone": "16137779100",
"email": "support@firepay.com"
}
},
"attemptNumber": "1",
"type": "SA_CREDIT",
"eventDate": "2020-12-10T09:01:15Z",
"eventName": "SA_CREDIT_PENDING"
}

For more information on StandAlone Credit Pending, see StandAlone Credit Pending.

StandAlone Credit Cancelled

For more information on StandAlone Credit Cancelled, see StandAlone Credit Cancelled.

For more information on StandAlone Credit Cancelled, see StandAlone Credit Cancelled.

  1. Initiate transaction with below API
  2. Copy the id from Payment Completed response and send that as a path variable in the below request

Webhook Payload

{
"payload": {
"accountId": "1002397280",
"id": "233e2b18-10af-4c7d-8613-db02c38cf3ba",
"merchantRefNum": "284785554",
"amount": 2599,
"currencyCode": "GBP",
"status": "CANCELLED",
"paymentType": "BACS",
"txnTime": "2022-03-31T11:14:27Z",
"statusTime": "2022-03-31T11:15:53Z",
"processorCode": "BACS",
"dueDate": "2022-03-31T11:14:27Z",
"customerIp": "192.0.126.111"
},
"attemptNumber": "1",
"type": "SA_CREDIT",
"eventDate": "2022-03-31T11:14:27Z",
"eventName": "SA_CREDIT_CANCELLED"
}

StandAlone Return Completed

For more information on StandAlone Return Completed, see StandAlone Return Completed.

  1. Initiate transaction with below API and copy the Transaction Id from the response.
  2. Login to the TEST netbanx portal and click Reports.
  3. Select Payment Method as DirectDebit and search with Transaction Id and click Go to open transaction details.
  4. Click Update Status in the History Section.
  5. Select Rejected with valid descriptions and Submit. (Transaction will change to Returned status)

Once the scheduled Publish event job runs, we will receive the webhook for SA_Credit_Returned.

Webhook Payload

{
"payload": {
"accountId": "1002397280",
"id": "4c8c71d5-9684-48cf-a085-a01ae2635fce",
"merchantRefNum": "Bacs credit test",
"amount": 2214,
"currencyCode": "GBP",
"status": "COMPLETED",
"processorCode": "BACS",
"paymentType": "BACS",
"txnTime": "2022-03-24T13:58:58Z",
"statusTime": "2022-03-24T13:58:58Z",
"bankResponse": {
"scheme": "BACS",
"name": "Bacs",
"reasonCode": "KE",
"message": "test"
},
"reason": "Invalid Account",
"standaloneCreditId": "90676670"
},
"attemptNumber": "1",
"type": "SA_CREDIT_RETURN",
"eventDate": "2022-03-24T13:58:58Z",
"eventName": "SA_CREDIT_RETURN_COMPLETED"
}

StandAlone Credit Completed

This event will trigger when you move the transaction status to payment_returned in the netbanx portal. Steps are same for SA_Credit_Return_Completed

Webhook Payload

{
"payload": {
"accountId": "1002397280",
"id": "90676670",
"merchantRefNum": "Bacs credit test",
"amount": 2214,
"currencyCode": "GBP",
"status": "COMPLETED",
"paymentType": "BACS",
"txnTime": "2022-03-24T08:41:48Z",
"statusTime": "2022-03-24T13:17:04Z",
"processorCode": "BACS"
},
"attemptNumber": "1",
"type": "SA_CREDIT",
"eventDate": "2022-03-24T08:41:48Z",
"eventName": "SA_CREDIT_COMPLETED"
}

StandAlone Credit Failed

For further assistance with your test account configuration, contact partnersupport@paysafe.com.

For more information on StandAlone Credit Failed, see StandAlone Credit Failed.

Webhook Payload

{
"payload": {
"accountId": "1002397280",
"id": "90675640",
"merchantRefNum": "Bacs credit test",
"amount": 4516,
"currencyCode": "GBP",
"status": "FAILED",
"paymentType": "BACS",
"txnTime": "2020-12-10T09:01:15Z",
"statusTime": "2020-12-10T09:01:15Z",
"processorCode": "BACS",
"dueDate": "2020-12-10T09:01:15Z",
"bacs": {
"checkNumber": "602",
"mandateReference": "ZFWZYF5316",
"bankReference": "ZFWZYF531690675640",
"lastDigits": "76",
"sortCode": "207405"
},
"error": {
"code": "1004",
"message": "Your account is not enabled for this transaction type."
},
"customerIp": "127.0.0.1",
"billingDetails": {
"zip": "90210",
"country": "GB",
"city": "San Jose",
"phone": "16137779100",
"street1": "5 main st",
"street2": "Crescent"
},
"profile": {
"firstName": "Jane",
"lastName": "Doe",
"phone": "16137779100",
"email": "support@firepay.com"
}
},
"attemptNumber": "1",
"type": "SA_CREDIT",
"eventDate": "2020-12-10T09:01:15Z",
"eventName": "SA_CREDIT_FAILED"
}