This payment method is currently in Beta. Please reach out to BlueSnap Merchant Support to enable it.
The Create BECS Direct Debit Transaction request performs a transaction (purchase) using the BECS Direct Debit payment method. For more information about this payment method, see the BECS Direct Debit guide.
Prerequisite: Enable the BECS Direct Debit payment method in your account
In the Merchant Portal, go to Checkout Page > Payment Methods and select Show in the menu next to the BECS Direct Debit payment method. Click Submit to save your changes.
Request Content
Send an altTransaction object with the following:
merchantTransactionId
string optional
softDescriptor
string optional
amount
decimal required
currency
string required
taxReference
string optional
vendorsInfo
object optional (see vendorsInfo)
payerInfo
object required if vaultedShopperId
is not sent (see payerInfo)
vaultedShopperId
integer required if payerInfo
is not sent
pfToken
string optional
becsDirectDebitTransaction
object required (see becsDirectDebitTransaction)
authorizedByShopper
boolean required, value must be true
transactionMetaData
object optional (see transactionMetaData)
transactionFraudInfo
object optional (see transactionFraudInfo)
Response Details
If successful, the response HTTP status code is 200 OK.
The response contains the request properties plus these additions:
transactionId
vaultedShopperId
processingInfo
(see processingInfo)
fraudResultInfo
(see fraudResultInfo)
Examples
Request Examples
Note
The
agreementId
in the examples below should be replaced with theagreementId
you obtain through the Create Debit Agreement mandate API request.
curl -v -X POST https://sandbox.bluesnap.com/services/2/alt-transactions/ \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Basic dXNlcm5hbWU6cGFzc3dvcmQ=' \
-d '
{
"becsDirectDebitTransaction": {
"bsbNumber": "980201",
"accountNumber": "9990000001",
"accountName": "Boris Britva",
"financialInstitution": "financialInstitution",
"branchName": "branchName",
"agreementId": 81
},
"amount": 77,
"payerInfo": {
"zip": "12345",
"firstName": "Boris",
"lastName": "Britva",
"country": "au"
},
"currency": "AUD",
"authorizedByShopper": true
}
curl -v -X POST https://sandbox.bluesnap.com/services/2/alt-transactions/ \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Basic dXNlcm5hbWU6cGFzc3dvcmQ=' \
-d '
{
"becsDirectDebitTransaction": {},
"amount": 11,
"currency": "AUD",
"vaultedShopperId":19610968,
"authorizedByShopper": true
}
curl -v -X POST https://sandbox.bluesnap.com/services/2/alt-transactions/ \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Basic dXNlcm5hbWU6cGFzc3dvcmQ=' \
-d '
{
"becsDirectDebitTransaction": {
"bsbNumber": "980201",
"publicAccountNumber": "5557",
"agreementId": 81
},
"amount": 11,
"currency": "AUD",
"vaultedShopperId":19602910,
"authorizedByShopper": true
}
curl -v -X POST https://sandbox.bluesnap.com/services/2/alt-transactions/ \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Basic dXNlcm5hbWU6cGFzc3dvcmQ=' \
-d '
{
"transactionOrderSource": "MOTO",
"becsDirectDebitTransaction": {
"bsbNumber": "980201",
"accountNumber": "9990000001",
"accountName": "Boris Britva",
"financialInstitution": "financialInstitution",
"branchName": "branchName",
"agreementId": 81
},
"amount": 77,
"payerInfo": {
"zip": "12345",
"firstName": "Boris",
"lastName": "Britva",
"country": "au"
},
"currency": "AUD",
"authorizedByShopper": true
}
Response Examples
{
"transactionId": "38701844",
"amount": 77,
"currency": "AUD",
"payerInfo": {
"firstName": "Boris",
"lastName": "Britva",
"country": "au",
"zip": "12345"
},
"vaultedShopperId": 19610968,
"becsDirectDebitTransaction": {
"bsbNumber": "980201",
"accountName": "Boris Britva",
"financialInstitution": "financialInstitution",
"branchName": "branchName",
"publicAccountNumber": "0002",
"agreementId": 81,
"preNotificationRef": "https://localhost:8444/services/2/agreements/prenotification/38701844"
},
"processingInfo": {
"processingStatus": "PENDING"
}
}
{
"transactionId": "38702772",
"amount": 11,
"currency": "AUD",
"vaultedShopperId": 19610968,
"becsDirectDebitTransaction": {
"bsbNumber": "980201",
"accountName": "Boris Britva",
"financialInstitution": "financialInstitution",
"branchName": "branchName",
"publicAccountNumber": "0002",
"agreementId": 81,
"preNotificationRef": "https://localhost:8444/services/2/agreements/prenotification/38702772"
},
"processingInfo": {
"processingStatus": "PENDING"
}
}
{
"transactionId": "38702776",
"amount": 11,
"currency": "AUD",
"vaultedShopperId": 19602910,
"becsDirectDebitTransaction": {
"bsbNumber": "980201",
"accountName": "Vasya Pupkin",
"financialInstitution": "financialInstitution",
"branchName": "branchName",
"publicAccountNumber": "5557",
"agreementId": 81,
"preNotificationRef": "https://localhost:8444/services/2/agreements/prenotification/38702776"
},
"processingInfo": {
"processingStatus": "PENDING"
}
}
{
"transactionId": "38701844",
"amount": 77,
"currency": "AUD",
"payerInfo": {
"firstName": "Boris",
"lastName": "Britva",
"country": "au",
"zip": "12345"
},
"vaultedShopperId": 19610968,
"becsDirectDebitTransaction": {
"bsbNumber": "980201",
"accountName": "Boris Britva",
"financialInstitution": "financialInstitution",
"branchName": "branchName",
"publicAccountNumber": "0002",
"agreementId": 81,
"preNotificationRef": "https://localhost:8444/services/2/agreements/prenotification/38701844"
},
"processingInfo": {
"processingStatus": "PENDING"
}
}
Example Descriptions
Create BECS Direct Debit transaction with guest shopper
This example shows a basic create BECS Direct Debit Transaction request, including the minimum required fields to process a BECS Direct Debit transaction with basic information about a guest shopper.
For all BECS Direct Debit transactions, you must obtain permission from the shopper to debit their account by having them authorize the mandate.
Include the authorizedByShopper element with the value set to true to indicate that you have obtained the shopper's permission.
Create BECS Direct Debit transaction with Vaulted Shopper
To perform a BECS Direct Debit Transaction with an existing vaulted shopper (with saved bank account details), you must include the vaultedShopperId property within the altTransaction resource in your request.
Above is an example of a Create BECS Direct Debit Transaction request with an existing vaulted shopper. When you use a vaulted shopper, the becsDirectDebitTransaction property can be left empty, as shown in the example.
Create BECS Direct Debit transaction with multiple vaulted Bank Accounts
This example shows a Create BECS Direct Debit Transaction request when the customer has more than one BECS Direct Debit account. When your vaulted shopper has multiple BECS Direct Debit accounts use becsDirectDebitInfo to identify which bank account to use for the transaction.
Create BECS Direct Debit transaction with MOTO
This example shows a Create BECS Direct Debit transaction request with MOTO. MOTO is passed as an indication that the transaction was done on behalf of the shopper, like with a phone order.
Back to Top
API Explorer
To test out a call, enter the request content below and then click Try it!
Tip: Use the JSON code below as a starting point. You can enter different parameters to see how your test scenario would work. The request headers, including authorization, are already built in for you in this test area, so you should not include them here.
{
"becsDirectDebitTransaction": {
"bsbNumber": "980201",
"accountNumber": "9990000001",
"accountName": "Boris Britva",
"financialInstitution": "financialInstitution",
"branchName": "branchName",
"agreementId": 81
},
"amount": 77,
"payerInfo": {
"zip": "12345",
"firstName": "Boris",
"lastName": "Britva",
"country": "au"
},
"currency": "AUD",
"authorizedByShopper": true
}