Virtual store's page
The merchant's page must contain the e-SiTef's script. Below are the URL's for download:
URL for Production environment:
https://esitef-ec.softwareexpress.com.br/js/esitefstore-1.0.min.js
URL for Homologation environment:
https://esitef-homologacao.softwareexpress.com.br/js/esitefstore-1.0.min.js
Fields with card data
The card fields must contain the classes specified below:
Parameter | Description | Format | Mandatory |
---|---|---|---|
esitef-cardnumber | Customer's card number (PAN). | < 19 N | YES |
esitef-cardexpirydate | Card expiry date in MMYY format. | = 4 N | YES |
esitef-cardexpirymonth & esitef-cardexpiryyear | Card expiry month and year, in MM and YY format, respectively. These fields can be sent instead of esitef-cardexpirydate . If all these fields are sent at the same time, the split date (esitef-cardexpirymonth and esitef-cardexpiryyear ) will have priority. | = 2 N | YES |
Calling e-SiTef's script
When the customer fills the card data and submit, the merchant's page must call the "esitefStore" JavaScript function, passing as argument a request with the following fields:
Parameter | Description | Format | Mandatory |
---|---|---|---|
nita | Encrypted store transaction identifier number returned to the store by e-SiTef. | = 65 AN | YES |
store_token | Token related to the JavaScript store. | = 66 AN | YES |
merchantId | Merchant code on e-SiTef. The production and certification codes will be different. | < 15 AN | YES |
locale | Language of the messages returned in validation errors (onInvalid callback). It can receive the following values: pt - Portuguese en - English es - Spanish If the locale is not sent, pt will be used. | = 2 A | NO |
authorizer_id | Code of the authorizer on e-SiTef. Learn more. | < 3 N | YES |
onSuccess | Callback function the will be called after a successful payment on e-SiTef. This function receives as argument the payment response described in Success and failure callbacks response. | F | YES |
onFailure | Callback function the will be called after an unsuccessful payment on e-SiTef. This function receives as argument the payment response described in Success and failure callbacks response. | F | YES |
onInvalid | Callback function that will be called after a JavaScript validation error. This function receives as argument the error list described in Validation error callback response | F | YES |
Success and failure callbacks response
The onSuccess
and onFailure
callback functions receive as argument an object containing information related to the store. Below are the descriptions of these fields:
Parameter | Description | Format | |
---|---|---|---|
code | e-SiTef response code. Any code different from 0 (zero) means failure. For further information, refer to the Response codes. | < 4 N | |
message | e-SiTef response message. | < 500 AN | |
store | |||
status | Status of the payment transaction on e-SiTef. | = 3 AN | |
nita | Encrypted store transaction identifier number returned to the store by e-SiTef. | = 65 AN | |
merchant_usn | Unique sequential number generated by the merchant. | < 12 N |
Validation error callback response
The onInvalid
callback function receives as argument a list of error objects, containing the fields below:
Parameter | Description | Format |
---|---|---|
field | Name of the field in error. | < 30 AN |
cause | Error message. | < 100 AN |
Example
Below is an example of a page integrated with e-SiTef's JavaScript store:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<script type="text/javascript" src="https://esitef-homologacao.softwareexpress.com.br/js/esitefstore-1.0.min.js"></script>
<script>
function myStore() {
var request = {
onSuccess: function(response) {
console.log(response.code);
console.log(response.message);
console.log(response.store.status);
console.log(response.store.nita);
console.log(response.store.merchant_usn);
},
onFailure: function(response) {
console.log(response.code);
console.log(response.message);
console.log(response.store.status);
console.log(response.store.nita);
console.log(response.store.merchant_usn);
},
onInvalid: function(errors) {
for (var i = 0; i < errors.length; i++) {
console.log(errors[i].field);
console.log(errors[i].cause);
}
},
nita: 'Zdn2482f8924jh8fh842390hfef2fij20fj40jf024jf9j240hf4hjf0h243f84jf',
storeToken: '123456789012345678901234567890123456789012345678901234567890123456',
merchantId: 'xxxxxxxx',
locale: 'pt',
authorizerId: '2'
};
esitefStore(request);
}
</script>
</head>
<body>
<form method="POST">
<input type="text" class="esitef-cardnumber" />
<input type="text" class="esitef-cardexpirymonth" />
<input type="text" class="esitef-cardexpiryyear" />
<input type="button" onclick="myStore()" />
</form>
</body>
</html>