Search Overlay

Example of Webhooks for EFT

Payment Completed

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

Webhook Payload

{
"payload": {
"accountId": "1004876370",
"id": "aae755f6-988e-45a8-9629-97780372d3ee",
"merchantRefNum": "284254043",
"amount": 2600,
"currencyCode": "CAD",
"status": "COMPLETED",
"paymentType": "EFT",
"txnTime": "2021-11-18T16:17:49Z",
"processorCode": "BMO",
"dueDate": "2021-11-18T16:17:49Z",
"billingDetails": {
"zip": "M5H2N2",
"country": "CA",
"city": "Toronto",
"street1": "123 StreetCase1",
"state": "ON"
},
"profile": {
"firstName": "ObamaCaseAgain",
"lastName": "TrumpCaseAgain",
"email": "Joe.Smith@canada.com"
},
"customerIp": "204.91.0.11",
"settleWithAuth": true,
"eft": {
"institutionId": "544",
"transitNumber": "38716",
"lastDigits": "17",
"accountHolderName": "CaseAgain",
"paymentDescriptor": "payment desc"
},
"settlementId": "aae755f6-988e-45a8-9629-97780372d3ee",
"settlementAmount": 2600,
"settlementStatus": "PENDING"
},
"attemptNumber": "1",
"type": "PAYMENT",
"eventDate": "2021-11-18T16:17:49Z",
"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

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

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

Webhook Payload

{
"payload": {
"accountId": "1004876370",
"id": "0079d435-2dde-43a3-bb4b-16a2e6400e8c",
"merchantRefNum": "177054751",
"amount": 1400,
"currencyCode": "CAD",
"status": "CANCELLED",
"paymentType": "EFT",
"txnTime": "2021-11-23T09:26:31Z",
"processorCode": "BMO"
},
"attemptNumber": "1",
"type": "SETTLEMENT",
"eventDate": "2021-11-23T09:26:31Z",
"eventName": "SETTLEMENT_CANCELLED"
}

Payment Returned Completed

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

  1. Perform any transaction using the server to server method and save the transaction ID returned in the response.
  2. Login to the MTEST 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 Payment Returned.

Webhook Payload

{
"attemptNumber" : "1",
"eventDate" : "2024-08-07T09:41:40Z",
"payload" : {
"accountId" : "1001457200",
"amount" : 9002,
"bankResponse" : {
"message" : "Cannot trace",
"name" : "Bank of Montreal",
"reasonCode" : "902",
"scheme" : "EFT"
},
"currencyCode" : "CAD",
"gatewayReconciliationId" : "144646550",
"id" : "8b847f81-b541-4550-a879-26939ee27be8",
"merchantRefNum" : "34354654",
"paymentId" : "0e75bbf5-f9d9-42ca-b785-2aca3bb3473a",
"paymentType" : "EFT",
"processorCode" : "BMO",
"reason" : "Invalid Account",
"settlementId" : "0e75bbf5-f9d9-42ca-b785-2aca3bb3473a",
"status" : "COMPLETED",
"statusTime" : "2024-08-07T09:41:40Z",
"txnTime" : "2024-08-07T09:41:40Z"
},
"type" : "PAYMENT_RETURN",
"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 Request and Response, contact partnersupport@paysafe.com.

Webhook Payload

{
"payload": {
"accountId": "1004876370",
"id": "b2fd5afd-06f4-43ec-8f85-6c385a33f87b",
"merchantRefNum": "251534159",
"amount": 8000,
"currencyCode": "CAD",
"status": "FAILED",
"paymentType": "EFT",
"txnTime": "2021-11-18T14:25:24Z",
"processorCode": "BMO",
"dueDate": "2021-11-18T14:25:24Z",
"error": {
"code": "5040",
"message": "Your merchant account is not configured for the transaction you attempted"
},
"billingDetails": {
"zip": "M5H2N2",
"country": "CA",
"city": "Toronto",
"street1": "123 StreetCase1",
"state": "ON"
},
"profile": {
"firstName": "ObamaCaseFailed",
"lastName": "TrumpCaseFailed",
"email": "Joe.Smith@canada.com"
},
"customerIp": "204.91.0.11",
"settleWithAuth": true,
"eft": {
"institutionId": "544",
"transitNumber": "38716",
"lastDigits": "17",
"accountHolderName": "CaseFailed",
"paymentDescriptor": "payment desc"
}
},
"attemptNumber": "1",
"type": "PAYMENT",
"eventDate": "2021-11-18T14:25:24Z",
"eventName": "PAYMENT_FAILED"
}

StandAlone Credit Pending

For more information on StandAlone Credit Pending Request and Response, see StandAlone Credit Pending.

Webhook Payload

{
"payload": {
"accountId": "1004876370",
"id": "35aa3c97-76e7-48bf-9c2b-95f910d184c7",
"merchantRefNum": "430927275",
"amount": 9900,
"currencyCode": "CAD",
"status": "PENDING",
"paymentType": "EFT",
"txnTime": "2021-11-19T08:22:16Z",
"processorCode": "BMO",
"dueDate": "2021-11-19T08:22:16Z",
"eft": {
"institutionId": "544",
"transitNumber": "38716",
"lastDigits": "17",
"accountHolderName": "Account holder Name",
"paymentDescriptor": "payment desc"
},
"customerIp": "204.91.0.11",
"billingDetails": {
"zip": "M5H2N2",
"country": "CA",
"city": "Toronto",
"street1": "123 Street1",
"state": "ON"
},
"profile": {
"firstName": "Joe",
"lastName": "Smith",
"email": "Joe.Smith@canada.com"
}
},
"attemptNumber": "1",
"type": "SA_CREDIT",
"eventDate": "2021-11-19T08:22:16Z",
"eventName": "SA_CREDIT_PENDING"
}

StandAlone Credit Cancelled

For more information on StandAlone Credit Cancelled Request and Response, see StandAlone Credit Cancelled.

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

Webhook Payload

{
"payload": {
"accountId": "1004876370",
"id": "8cb5ed00-d2e5-4f4e-bb95-0dba434d5302",
"merchantRefNum": "477516508",
"amount": 8100,
"currencyCode": "CAD",
"status": "CANCELLED",
"paymentType": "EFT",
"txnTime": "2021-11-19T17:23:21Z",
"processorCode": "BMO",
"dueDate": "2021-11-19T17:23:21Z",
"customerIp": "204.91.0.11"
},
"attemptNumber": "1",
"type": "SA_CREDIT",
"eventDate": "2021-11-19T17:23:21Z",
"eventName": "SA_CREDIT_CANCELLED"
}

StandAlone Credit Return Completed

For more information on StandAlone Credit Return Completed Request and Response, see StandAlone Credit 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": "1004876370",
"id": "42d826f9-cad7-4b23-b2a1-22ccdc811fa5",
"merchantRefNum": "430927275",
"amount": 9900,
"currencyCode": "CAD",
"status": "COMPLETED",
"processorCode": "BMO",
"paymentType": "EFT",
"txnTime": "2021-11-19T16:21:24Z",
"bankResponse": {
"scheme": "EFT",
"name": "Bank of Montreal",
"reasonCode": "901",
"message": "Not sufficient funds (debits only)"
},
"reason": "No Funds",
"standaloneCreditId": "35aa3c97-76e7-48bf-9c2b-95f910d184c7"
},
"attemptNumber": "1",
"type": "SA_CREDIT_RETURN",
"eventDate": "2021-11-19T16:21:24Z",
"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": "1004876370",
"id": "35aa3c97-76e7-48bf-9c2b-95f910d184c7",
"merchantRefNum": "430927275",
"amount": 9900,
"currencyCode": "CAD",
"status": "COMPLETED",
"paymentType": "EFT",
"txnTime": "2021-11-19T03:22:16Z",
"processorCode": "BMO",
"eft": {
"institutionId": "544",
"payMethod": "WEB",
"transitNumber": "38716",
"accountType": "CHECKING",
"lastDigits": "17",
"accountHolderName": "Account holder Name",
"payMethodDescription": "Internet-Initiated Entry",
"paymentDescriptor": "payment desc"
},
"customerIp": "204.91.0.11",
"billingDetails": {
"zip": "M5H2N2",
"country": "CA",
"city": "Toronto",
"street1": "123 Street1",
"state": "ON"
},
"profile": {
"firstName": "Joe",
"lastName": "Smith",
"email": "Joe.Smith@canada.com"
}
},
"attemptNumber": "1",
"type": "SA_CREDIT",
"eventDate": "2021-11-19T03:22:16Z",
"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 Request and Response, see StandAlone Credit Failed.

Webhook Payload

{
"payload": {
"accountId": "1004876370",
"id": "08bf6431-53f8-49ac-82c7-ae1a9a907bcb",
"merchantRefNum": "133001205",
"amount": 9900,
"currencyCode": "CAD",
"status": "FAILED",
"paymentType": "EFT",
"txnTime": "2021-11-19T16:37:25Z",
"processorCode": "BMO",
"dueDate": "2021-11-19T16:37:25Z",
"eft": {
"institutionId": "544",
"transitNumber": "38716",
"lastDigits": "17",
"accountHolderName": "Account holder Name",
"paymentDescriptor": "payment desc"
},
"error": {
"code": "5040",
"message": "Your merchant account is not configured for the transaction you attempted"
},
"customerIp": "204.91.0.11",
"billingDetails": {
"zip": "M5H2N2",
"country": "CA",
"city": "Toronto",
"street1": "123 Street1",
"state": "ON"
},
"profile": {
"firstName": "Joe",
"lastName": "Smith",
"email": "Joe.Smith@canada.com"
}
},
"attemptNumber": "1",
"type": "SA_CREDIT",
"eventDate": "2021-11-19T16:37:25Z",
"eventName": "SA_CREDIT_FAILED"
}