Quick start

This guide shows the process of performing a payment, using Carat Portal's HTML interface.

What you'll need#

  • Active account on Carat Portal's homologation environment (obtained with our support team)
  • A tool capable of performing HTTP calls, such as Postman, REST Client or cURL
  • An application capable of receiving POST HTTPS calls

Creating a recharge transaction#

HTTP method: POST

URL: https://esitef-homologacao.softwareexpress.com.br/e-sitef/init/json.se

Headers:

  • Content-Type: application/x-www-form-urlencoded

  • Key: request;

  • Value: JSON object;

  • [response_type]: json or xml;

Basic JSON request example:

{
"recharge_included": "true",
"merchant_id": "xxxxxxxxxx"
}

To use this example, don't forget to define the variable {{url}} with the value
esitef-homologacao.softwareexpress.com.br

curl
--request POST "https://esitef-homologacao.softwareexpress.com.br/e-sitef/init/json.se"
--header "Content-Type: application/x-www-form-urlencoded"
-d 'request=%7B%22merchant_id%22%3A%22xxxxxxxxxx%22%2C%22recharge_included%22%3A%22true%22%7D'
--verbose

Response:

{
"responseCode": 0,
"description": "OK. Transaction successful.",
"url": "https://esitef-homologacao.softwareexpress.com.br/e-sitef/do.se?input['nit']=12345678asdfghjk12345678asdfghjk12345678asdfghjk12345678asdfghjk",
"nsuesitef": "123451234512345",
"nit": "12345678asdfghjk12345678asdfghjk12345678asdfghjk12345678asdfghjk"
}

Learn more about this service.

Redirecting the user#

The store must then redirect the user to the URL returned by Carat Portal in the transaction creation step.

Receiving a status notification#

As soon as the transaction status changes, Carat Portal will notify the store with a POST in its registered status URL.

@RestController
public class MyStatusController {
@PostMapping(value = "/mystatus",
consumes = "application/x-www-form-urlencoded; charset=utf-8")
public ResponseEntity<String> myStatus(@RequestParam Map<String, String> request) {
Log.info("status = " + request.get("status"));
// ...
return new ResponseEntity<>("OK", HttpStatus.OK);
}
}

Learn more about this service.