eNETS
eNETS is an e-commerce payment system used in Singapore that allows payers to purchase using direct online transfers from their bank account. Payers are redirected to their bank's online banking website where they can initiate an instant bank transfer.
eNETS is a supported browser payment method in the Mastercard Gateway . This page describes integration details specific to eNETS. It's recommended that you read the integration guidelines for browser payments, before building an eNETS integration.
eNETS browser payments are only supported for transactions in the SGD currency. eNETS browser payments are supported for you if you are outside Singapore and for payers who are from within Singapore.
Prerequisites
To offer eNETS as a payment method via the Mastercard Gateway:
- You must be registered with your browser payments service provider.
- Your merchant profile on the gateway must be configured using the details of your account with the browser payments service provider.
- You must have a bank account in one of the supported currencies registered against your merchant account at your browser payments service provider.
eNETS Integration
With Hosted Checkout integrations version 51 and later, eNETS is automatically available to your payers when you are enabled and configured for it by your payment service provider.
For details, see Browser Payments via Hosted Checkout Integration.
Direct Payment integration allows you to offer eNETS payment method on your own checkout page.
In addition to the standard fields required in a browser payment request, provide the following fields in the Initiate Browser Payment
request:
sourceOfFunds.type
=ENETS
browserPayment.operation
=PAY
(the Authorize operation is not supported by ENETS)customer.email
: The email address of the payer.customer.phone
: The payer's phone number in ITU-T E123 format, for example +1 607 1234 456sourceOfFunds.provided.enets.bankAccountHolder
: The name of the bank account holder for the payer's bank account.
Preferred Language
You can set the language that you prefer eNETS to use for pages displayed to the payer by providing the browserPayment.preferredLanguage
field in the Initiate Browser Payment request. However, the language will be used only if eNETS supports it.
{ "apiOperation":"INITIATE_BROWSER_PAYMENT", "browserPayment":{ "operation":"PAY", "returnUrl":"https://<return_url>" }, "customer": { "email": "john.smith@example.com", "phone": "01234567890" }, "order": { "amount": "10.00", "currency": "SGD" }, "sourceOfFunds": { "type": "ENETS", "provided": { "enets": { "bankAccountHolder": "John Smith" } } } }
How to Interpret the Transaction Result
The table below shows the transaction response codes for the possible scenarios you may encounter after initiating an eNETS payment.
Initiate Browser Payment Response |
What This Means... |
---|---|
response.gatewayCode=SUBMITTED result=SUCCESS |
Redirect the payer using the URL provided in the response. |
Retrieve Transaction/Retrieve Order Response |
What This Means... |
response.gatewayCode=APPROVED result=SUCCESS sourceOfFunds.provided.enets.bankAccountHolder
|
The payment is successful. |
response.gatewayCode= PENDING result=PENDING |
The Mastercard Gateway is waiting for a notification from the acquirer about the payment result. Try RETRIEVE_TRANSACTION again later or listen to notifications from the Mastercard Gateway. |
response.gatewayCode= CANCELLED result=FAILURE |
The payer has cancelled the interaction for this payment. Offer the payer the option to try another payment method. |
response.gatewayCode= DECLINED or ACQUIRER_SYSTEM_ERROR result=FAILURE |
The payment was declined. Offer the payer the option to try another payment method. In the case of an ACQUIRER_SYSTEM_ERROR you may want to inquire with the acquirer the reason for payment failure, or you can try RETRIEVE_TRANSACTION again. |
response.gatewayCode=TIMED_OUT result=FAILURE |
Treat this as a declined payment. The Mastercard Gateway will make an attempt to ensure the transaction is not successful or will revert the transaction. |
Testing Your Integration
The Mastercard Gateway provides a browser payments emulator that allows you to test your eNETS integration.