In the following we will specify how to implement the payment service with the basic operation, there are customizations for the behavior of the payment service which are detailed in Additional customization features.

<aside> ⚠️ This is only available for the Person Payment flow.

</aside>

Process summary


When a customer decides to pay via ETpay, a flow is triggered which is summarized as follows:

  1. DISPLAY BUTTONS FOR EACH BANK ****Deploy a button for each bank you want to display, the API and credentials will be the same for each button, only the "user_bank_code" field that you will add in the initial session creation will change.
  2. CREATE SESSION ****From the merchant's website, a POST signal is generated to our API to obtain the session_token that allows the user to initiate his payment session.
  3. START FUNNEL ****From the merchant's web page, redirect to the user's session link with the token obtained in the previous step.
  4. CLIENT SESSION (FUNNEL) Process performed by the paying user selecting the bank, entering credentials and approving the transfer.

Definitions:

Pararameter Description
merchant_code Unique trade identification code, will vary between sandbox and pre-production/production environments. It is delivered at the beginning of the process after completing the ‣.
merchant_api_token Authentication token for api use, will vary between sandbox and pre-production/production environments. It is delivered at the beginning of the process after completing the ‣.
api_url Service api URL and session creation, will vary between sandbox and pre-production/production environments. It is delivered at the beginning of the process after completing the ‣.
pmt_url Payment funnel URL, used in conjunction with the session_token to initiate an end user's payment flow, will vary between sandbox and pre-production/production environments. It is delivered at the beginning of the process once the ‣.
merchant_order_id The merchant's own order identifier, used at the time of creating a payment session, is alphanumeric in format, with a maximum length of 64 bits. Usually the purchase order number is used.
order_amount Purchase amount, used in session creation.
session_token Unique session token, it is returned as an API response when creating a session. It is used in conjunction with pmt_url to initiate an end user's payment flow.
signature_token Tsignature token, is returned as an API response when a session is created. It is used to validate JWT information notifications.
JWT JWT's are a secure and easy way to transmit information over the web. They are encrypted and have a "signature" that guarantees that the content has not changed. In our case, the signature of the JWTs we send is the signature_token.
If the content of the JWT changes, we will be able to know that it is not true because when we try to validate the content using the signature_token we will get different values.
payment_token Payment attempt identifier, this identifier is returned once the payment session has occurred and allows us to identify within our system the steps and logs that occurred during the payment.

Development of each stage


Display buttons for each bank

The first step of the process begins on your side, deploying a button for each bank option you wish to enable. This can be done using HTML or programming languages, the important thing is that you have programmed how to differentiate each payment button when selected.

The banks and associated codes available to be pre-selected are:

bank user_bank_code
To initialize with Banco Estado cl_estado
To initialize with Banco Santander cl_santander
To initialize with Banco de Chile/Edwards cl_bch
To initialize with BCI cl_bci
To initialize with Banco Itaú cl_itau
To initialize with Banco Scotiabank cl_scotiabank
To initialize with Banco Falabella cl_falabella
To initialize with banco de pruebas (only in sandbox) cl_test