Technical specification
Technical Specification |
---|
CliSiTefI and CliSiTef Libraries |
Version 248 |
#
Summary5 API - Routines available on CliSiTef [9]
5.1 Library configuration [11]
5.1.1 General special settings [12]
5.1.2 Additional Automation/Establishment information [13]
5.2 Start of Payment or Management transaction [17]
5.2.2 Function code table [21]
5.2.3 Additional Parameters [25]
5.3 Continuation of the iterative collection process [25]
5.3.2 Table of values for FieldType [32]
5.3.3 Event Table, also returned in FieldType [49]
5.4 Payment confirmation or not [51]
5.4.1 Completion of individual payments in the same tax coupon [52]
5.4.2 Completion of payments for a given network in the same tax coupon [52]
5.4.3 Attach data relating to payment methods for a transaction (NFPAG) [52]
5.5 Query transactions pending confirmation on the terminal [56]
5.5.1 Number of transactions pending confirmation on the terminal [56]
5.5.2 Query pending transactions on the terminal [58]
5.5.3 Query pending transactions in a specific tax document [58]
5.6.1 Set permanent message for the PinPad [59]
5.6.2 Reading track 3 of the card [59]
5.6.4 Card reading - secure capture routines [61]
5.6.6 Reading Confirmation by Customer on PinPad [66]
5.6.7 Sets a momentary message for the PinPad[67]
5.6.8 Reading special PinPad keys [68]
5.7 Banking Correspondent (Bill Payment) [69]
5.8 Checking the integrity of a barcode [70]
5.10 Sending pending messages [73]
5.12 Loading Tables on PinPad [75]
5.12.1 With changes in Automation [75]
5.12.2 No change to Automation[76]
6 CliSiTef.ini or CLSIT settings file [77]
6.1.2 Configuration when Automation does not use a pinpad [78]
6.1.3 Setting up a second pinpad [79]
6.1.4 Setting the default message [80]
6.1.5 Enabling value confirmation on the pinpad [80]
6.2 Connection configuration with the SiTef server [80]
6.2.1 Configuring additional IP addresses [80]
6.2.2 SiTef server port configuration [80]
6.2.3 Connection required [81]
6.2.4 Keeping connection active [81]
6.2.5 Communication display configuration [81]
6.2.6 Changing timing parameters (timeout) [81]
6.3 How to pass a new transaction purchase value on CliSiTef [82]
6.4 Enabling/disabling payment methods [84]
6.4.1 Restricting payment methods at runtime [84]
6.4.2 Setting default values for payment methods [84]
6.4.3 Enabling additional transactions [85]
6.4.4 Disabling transactions [86]
6.5 Enabling transactions from specific networks [86]
6.6 Table of payment method codes, settings and menus[88]
6.7 Enabling special settings per transaction [99]
6.8 Credit/debit transactions with card without BIN [102]
6.9 Enabling credit in installments when in a linked payment [105]
8.2 Directory configuration [108]
8.3 Trace files per terminal [109]
8.4.1 Enabling the rotating trace [110]
8.4.2 Limiting file sizes [111]
8.4.3 Sending trace files to the SiTef server [111]
9 Development/approval process [112]
9.1 Additional trace file during development phase [112]
11.1 Authorizing Network Code [114]
13 Discontinued routines [121]
#
IntroductionThe CliSiTefI and CliSiTef libraries provide developers with of commercial automation a set of routines (APIs) for integration with the SiTef server.
The SiTef server, in turn, offers a wide range of payments with the most diverse authorizers.
The CliSiTefI and CliSiTef libraries are available for a series of platforms, typically in the form of dynamic libraries.
It has entry points through which commercial automation configures, requests a payment, requests a management role or the payment of a bill.
The entry points are in CliSiTefI and this is what should be loaded by the user application.
CliSiTef is for the exclusive use of CliSiTefI and cannot be charged or called directly at risk of eventually destabilize the environment. In this document, any reference to CliSiTef should be understood as the set of these two libraries.
#
Target AudienceCommercial automation developers with CliSiTef.
#
GoalsPresent a description of the library that interfaces with the payment method services available on SiTef.
#
PresentationCliSiTef provides a quick and simple way to make available SiTef functionalities for applications in general. Its main features are:
Non-intrusive as it is the automation itself that manages your screens. There is no overlapping of screens on the interface itself, which, if existed, most of the time it would not be compatible with the visual layout of the client's main application;
Allows the automation application to restrict transactions available for a given payment since, in practical life, negotiation takes place with the client and once the means of payment, number of installments, etc., must not be modified by mistake when executing the TEF;
Allows total freedom in the inclusion of new products and means of payment, following the evolution of SiTef, without the need make any changes to the automation or, if it is essential (for example through the inclusion of new access peripherals such as bar code reader), it should be kept to a minimum.
Note: CliSiTef has, for each functionality, two points of input (routines). The choice of which of the interfaces will be used by the application depends on the programmer's personal taste and whether the environment used by it for development imposes some type of restriction in the call to CliSiTef. In particular, we are referring to the type of data manipulated by the programming environment. If he only accepts data in ASCII, the interface called hereinafter referred to as "A" in this document.
#
Basic operationInitial step
Initially, Commercial Automation must execute the command ConfiguraIntSiTefInterativo, passing the necessary information to so that the Sales Terminal can communicate with SiTef, such as Address SiTef IP, Company Code (in SiTef Demo this code is 00000000) and the terminal identification.
This function should only be called when CliSiTef is
loaded i.e. it is not necessary to call it with each new transaction (unless there is a specific need to change
company parameters, terminal or SiTef server IP).
The routine returns a value indicating whether the configuration occurred with success or not. If 0 (zero) returns, the process occurred in a correct.
Transaction itself
The next step is then to call the IniciaFuncaoSiTefInterativo function, passing the described parameters to it.
Upon return, it returns the value 10000 to continue the transaction or other value to close.
If the return is 10000, you must call the function ContinuaFuncaoSiTefInterativo, with the parameters also described for her we next topics.
While CliSiTef returns the value when calling this function 10000, the automation must keep repeating the call to this function as many times as necessary until the return value of the function be 0 (zero), indicating that everything went well, or different from 0 and 10000 indicating that an abnormal interruption occurred.
Confirmation (or non-confirmation) of the transaction
If the return was 0 (zero), the automation closes the loop and if there was TEF coupon printing, the automation must print them and call another function, the FinalizaFuncaoSiTefInterativo, confirming or not the transaction depending, respectively, on whether the coupon was printed correctly or not.
If the return was different from 10000 and 0 then the automation simply exits the loop and, at the programmer's option, may or may not display a message according to the return of the called function. For example, if returned -2, it means that the transaction was canceled by the operator. These negative returns are described in this document.
Graphically exemplifying the flow described in this topic, we would have the Following:
#
API - Routines available on CliSiTefIn this chapter, we will present the functions available in clisitef. For Therefore, the following conventions will be adopted:
Empty field or not provided -- in the standard version it is a field containing just the delimiter (binary zero). In the ASCII version, if it is a field fixed it contains spaces. If it is a variable field it only contains the start and end field delimiter.
Field size -- in the case of a fixed size field, when this value is provided, indicates the minimum size to be reserved by the application to receive a response from SiTef.
Type of function parameters -- we will divide into two groups:
1. Regarding the flow of information: the parameter can be input or output.
two. When passing: the parameter can be passed by value or by reference.
Each routine described in this chapter typically has two versions/interfaces:
Standard interface -- traditional, allows parameters with data binaries
ASCII Interface -- for interfacing with programming languages, whose parameters work only in ASCII.
What differentiates the ASCII version from the standard version is the addition of the suffix A in the name of the functions, and the way/type of passing the parameters.
Standard interface
This interface can be used by applications written in most variable programming languages that accept binary fields. Among We mention: Delphi, Visual Basic, Visual C.
In the case of receipts, the character 0x0a (\n in C language) indicates the end of a line.
All routines called by the automation application must be of type stdcall, i.e., the parameters are stacked from right to left left and the called routine is responsible for removing them from the stack. A Parameter convention is as follows:
Table 1: Parameter types and convention
Type | Description |
---|---|
char * | ASCII text buffer terminated by binary zero. |
short int (short), unsigned short int (ushort) | Variables that occupy 2 bytes in memory, with and without sign, respectively. |
int, unsigned int (uint) | Variables that occupy 4 bytes in memory, with and without sign, respectively. |
void | Indicates the absence of parameters or return. |
<variable type> * (example: short int * or int *) | Indicates that the "variable type" variable is being passed as an address, that is, CliSiTef will use the automation application area to work, and may return some results there. |
ASCII interface
This interface can be used by applications written in any programming language, including those that do not accept fields binaries, such as Oracle's Forms environment.
In it all parameters are passed in ASCII and can be of size fixed and variable.
Numeric fields are always passed with a fixed size and aligned to right, with zeros on the left. In particular, the field whose content is a negative value, has a "-" sign in the leftmost position of the number (e.g.: -0001 for a 5-position field whose content is the value --1).
Variable length ones are constructed so that the first character indicate which value was chosen to be the delimiter of that field or That is, the field is delimited by the chosen character or its complementary in the case of the pairs "( )", "[ ]", "{ }" and "< >".
Examples of valid constructions are: (1234), [1234], {1234}, <1234>, \$1234\$, %1234%, |1234|, etc.
NOT VALID examples are as follows: $12$34$, .1,234.56., etc.
The criterion for choosing the delimiter must be that it does not exist as a valid character in the field in question. In data passes from application for CliSiTef, as they are always known, the application can define a default character and always use it in all data passes. In the return, as any character is valid (for example on a receipt), the above rule must be used in interpretation of the result returned by CliSiTef since this will choose the character that best adapts to the answer that is being generated.
Finally, there is a special character that is used in texts directed to a printer. The "\" (backslash) indicates the end of one line and must be used by the application to instruct the printer to close the current line and position yourself in the next one.
#
Library configurationThis must be the first call to the CliSiTef library. She has The objective is to configure the connection parameters with the server SiTef, and with Commercial Automation itself.
int ConfiguraIntSiTefInterativo (IPSiTef, IdStore, IdTerminal, Reserved)
int ConfiguraIntSiTefInterativoEx (IPSiTef, IdStore, IdTerminal, Reserved, AdditionalParameters)
ASCII Interface
ConfiguraIntSiTefInterativoA (Result, IPSiTef, IdStore, IdTerminal, Reserved)
ConfiguraIntSiTefInterativoExA (Result, IPSiTef, IdStore, IdTerminal, Reserved, AdditionalParameters)
Parameter | Type | Standard Interface | ASCII Interface | Description |
---|---|---|---|---|
Result | Output, by value | Not used | Fixed 6 | Contains the result of the response to the routine call. |
IPSiTef | Entry, by value | char * | Variable | Configures the name or IP address (in "." notation) of the SiTef server. |
IDStore | Entry, by value | char * | Fixed 8 | Identifies the store number within the network of commercial establishments. |
IdTerminal | Entry, by value | char * | Fixed 8 | Identifies the POS in front of the store. It has the format XXnnnnnn where XX corresponds to 2 alphabetic characters and nnnnnn to any 6 digits as long as the resulting number does not overlap the range 000900 to 000999 which is reserved for use by SiTef. |
Reserved | Entry, by value | char * | Fixed 6 | Must be passed with 0 |
AdditionalParameters | Entry, by value | char * | Variable | Additional CliSiTef configuration parameters in the following format: [<Parameter_Name_1>=<Parameter_Value_1>;<Parameter_Name_2>=<Parameter_Value_2>] |
Important!
Each terminal must have a unique and fixed code per SiTef store. In this way, the commercial establishment must manage the codes used in such a way that there is never a repetition of terminals for a same store.
The SiTef server does not allow two or more simultaneous connections using the same pair (store, terminal), dropping the connections previous ones, keeping only the last connection made; if perhaps the transaction that was in progress when the POS connection dropped duplicate was already in pending status (a sale for example), the SiTef immediately places it in Canc.POS status (Cancelled by the POS), or In other words, this will be cancelled; the terminal that is disconnected will receive the message "No SiTef connection" with error code -5.
When the commercial establishment uses Pinpad to read cards and password entry and if the pair (store, terminal) is changed, this will result in new tables being loaded onto the pinpad every change. This is yet another reason for the terminal code to be fixed.
The configuration routines return one of the following values:
Table 2 - Return codes from configuration functions
Value | Description |
---|---|
0 | No error occurred |
1 | Invalid or unresolved IP address |
2 | Invalid store code |
3 | Invalid terminal code |
6 | Tcp/Ip initialization error |
7 | Lack of memory |
8 | Didn't find CliSiTef or it has problems |
9 | SiTef server configuration has been exceeded. |
10 | Access error in the CliSiTef folder (possible lack of writing permission) |
11 | Invalid data passed through automation. |
12 | Safe mode not active (possible lack of configuration on the SiTef server of the .cha file). |
13 | Invalid DLL path (the full library path is too long). |
Note: during the automation lifecycle, if there is no change in the function's input parameters, then there is no need to call her again.
#
General special settingsCertain general settings (valid for all transactions) of the CliSiTef can be passed through the parameter "ParametrosAdicionais" from the routine ConfiguraIntSiTefInterativoEx. O Format of this field is as follows:
[<Functionality>;<Functionality>;...]
Next, we describe the functionalities provided in this field.
Note: in this item only the settings will be highlighted main. For a detailed description of all available options, see the document "CliSiTef -- Lista de Parâmetros Adicionais".
Functionality | Description |
---|---|
MultipleCoupons=1 | Indicates that the POS is able to receive more than one receipt per transaction. In the case of transactions with more than one receipt, such as cell phone recharge transactions or bill payments with credit or debit cards, the cell phone recharge or bill payment receipt will be delivered separately from the credit or debit EFT receipt. |
PinPad Port=<PinPad Port> | Defines the port to which the shared pinpad is connected. Example: |
Windows: [PortaPinPad=1] | |
Linux: [PortaPinPad=/dev/ttyS0] | |
LojaECF=<Num Loja> | Tax store number (Maximum size: 20) |
CaixaECF=<Num Caixa> | Tax box number (Maximum size: 20) |
NumberSeriesECF=<Series ECF> | ECF Serial Number (Max Size: 20) |
#
Additional Automation/Establishment informationThe ParmsClient configuration allows commercial automation to configure information common to all transactions exchanged with the SiTef server.
Format:
[ParmsClient=Id1=Value1;Id2=Value2;Id3=Value3;...;IdN=ValueN]
where:
<ParmsClient=> = Data identifier prefix.
<IdN> = Field identifier, as defined in the table below.
<ValueN> = Field value.
Id Format Meaning
1 CNPJ number of the establishment/store.
2 CNPJ number of the company that developed the automation commercial.
3 CPF number of the establishment/store
4 Numeric CNPJ Facilitator (Van)
Table 3 Field codes available for ParmsClient.
Example of how to send data to CliSiTef:
[ParmsClient=1=31406434895111;2=12523654185985]
Where:
- 1 (CNPJ of the Establishment) with the value 31406434895111.
- 2 (CNPJ of the commercial automation company) with the value 12523654185985.
Note: This parameter should not be used for sub-acquiring (soft descriptor). For this purpose, please refer to the document "CliSiTef - Sub-Acquiring Information (Soft Descriptor)"
#
Floating pointHow automation tells CliSiTef that it knows how to handle fields with dots floating
Treating fields with Floating Point requires a procedure executed in conjunction with automation.
For Clisitef to carry out this procedure, which will be described below, it is necessary for the automation to inform Clisitef that it is capable of treat it. To do this, the automation must pass the string below into the "ParametrosAdicionais" parameter when executing the function ConfiguraIntSiTefInterativoEx.
[TrataPontoFlutuante=1]
If this parameter is omitted and SiTef requests field collection with Floating Point, CliSiTef will ask the automation to display the message: "Ponto Flutuante nao Suportado pelo PDV".
Procedure in "married operation" with automation
If informed in the Configuration, support the Floating Point feature, as described above, CliSiTef through Command 0 in conjunction with o Field Type 2470, informs Automation of the number of decimal places in the Buffer parameter, so that it can format its screens before display them to the operator (See Screen Examples on the next page). Only after this "pact" with Automation, CliSiTef will send the command field collection with floating point (through commands 34 or 30) as per examples below.
Parameters ContinueFunctionSiTefInteractive CliSiTef =========> POS
Command | FieldType |
---|---|
0 | 2470 |
Examples of number of decimal places | Buffer |
---|---|
Lunch weight in grams with 2 boxes | 2 |
Total Fuel Pump in reais with 3 houses | 3 |
• In the example where the number of decimal places reported was 2, then Afterwards, CliSitef will request command 30:
• In the example where the number of decimal places reported was 3, then Afterwards, CliSitef will request command 34:
#
Start of Payment or Management transactionThe following routines are recommended for starting a transaction in CliSiTef.
What differentiates the transaction to be executed is the Function code passed by parameter. (See Table 5.2.2)
The various transactions initiated by commercial automation are grouped by fiscal data, which is the pair (TaxCoupon, TaxDate) and With this data, controls on pending transactions are carried out. confirmations from CliSiTef.
HoraFiscal is important for security validations of some pinpad manufacturers (in order to prevent attacks and fraud).
int IniciaFuncaoSiTefInterativo (Function, Value, TaxCoupon, TaxDate, TaxTime, Operator, ParamAdic)
ASCII Interface
IniciaFuncaoSiTefInterativoA (Result, Function, Value, TaxCoupon, TaxDate, TaxTime, Operator, ParamAdic)
The functions below were used for Self-Service terminals, and are considered obsolete.
int IniciaFuncaoAASiTefInterativo (Function, Value, TaxCoupon, TaxDate, TaxTime, Operator, ParamAdic, Products)
ASCII Interface
IniciaFuncaoAASiTefInterativoA (Result, Function, Value, CouponTax, TaxDate, TaxTime, Operator, ParamAdic, Products)
Parameter | Type | Standard interface | ASCII Interface | Description |
---|---|---|---|---|
Result | Output, by value | Not used | Fixed 6 | Contains the result of the response to the routine call. |
Function | Entry, by value | int | Fixed 6 | Select the payment method, according to the “Function Codes” table below. |
Value | Entry, by value | char * | Variable | Contains the amount to be paid containing the decimal separator (“,”). It must always be passed with two decimal places after the comma (“,”). If the operation does not have a value defined a priori (e.g. prepaid recharge), this field must be empty. |
TaxCoupon | Entry, by value | char * | Max 20 | Tax Coupon Number corresponding to the sale It is important that the tax coupon number is always increasing (increased with each transaction), as the entire process of controlling pending transactions and CliSiTef confirmations is based on the CouponFiscal + DataFiscal set. |
TaxDate | Entry, by value | char * | Fixed 8 | Tax Date in YYYYMMDD format |
TaxTime | Entry, by value | char * | Fixed 6 | Fiscal Schedule in HHMMSS format |
Operator | Entry, by value | char * | Max 20 | Identification of the cashier |
ParamAdic | Entry, by value | char * | Variable | Additional parameters. Allows the application to limit the type of payment method. It is optional and can be passed empty. When this field is used, CliSiTef will limit the navigation menus only to codes not present in the list. See item 5 for the description of the internal format of this field |
Products | Entry, by value | char * | Variable | Contains the list of products that the customer is purchasing at the Self-Service terminal. It is mandatory as these products will form an integral part of the Tef operation receipt to be printed. The basic format of this field is: [<Description1>;<Code1>;<Quantity1>;<TotalValue1>]; [<Description2>;<Code2>;<Quantity2>;<Total Value2>];... It must be repeated as many times as the number of different products purchased by the customer. |
IMPORTANT: This routine only starts the payment process. If the return is 10000 the payment process must be continued through the routine ContinuaFuncaoSiTefInterativo or ContinuaFuncaoSiTefInterativoA until the latter returns a final result (see item that describes this function).
IMPORTANT: up to version 6.1.114.39 (inclusive) of clisitef, whenever a payment is initiated on a new tax document (a pair <TaxCoupon, TaxDate> different from the previous one), the transaction data previous will be replaced by those of the newly started one, making it impossible that some treatments, such as pending issues, are carried out successfully.
Therefore, all necessary treatments must be resolved before starting a new transaction.
From version 6.1.114.40 (inclusive), CliSiTef allows you to start a new payment, without deleting any outstanding issues from the tax document previous.
#
Return code tableValue | Description |
---|---|
0 | Successful execution of the function. |
10000 | The process continuity routine must be called. |
other positive value | Denied by authorizer. |
-1 | Module not initialized. The POS tried to call some routine without first executing the configure function. |
-2 | Operation canceled by operator. |
-3 | The function / modality parameter is non-existent/invalid. |
-4 | Lack of memory in the POS. |
-5 | No communication with SiTef. |
-6 | Operation canceled by user (on pinpad). |
-7 | Reserved |
-8 | CliSiTef does not have the necessary function implementation, it is probably outdated (CliSiTefI is more recent). |
-9 | The automation called the routine ContinuaFuncaoSiTefInterativo without first starting an iterative function. |
-10 | Some mandatory parameter was not passed by commercial automation. |
-12 | Error executing the iterative routine. Probably the previous iterative process was not executed until the end (while the return is equal to 10000). |
-13 | Tax document not found in CliSiTef records. Returned in query functions such as ObtemQuantidadeTransaçõesPendentes. |
-15 | Operation canceled by commercial automation. |
-20 | Invalid parameter passed to the function. |
-21 | Used a prohibited word, for example PASSWORD, to collect open data on the pinpad. For example in the ObtemDadoPinpadDiretoEx function. |
-25 | Banking Correspondent Error: Bloodletting must be carried out. |
-30 | File access error. Make sure that the user running the application has read/write rights. |
-40 | Transaction denied by SiTef server. |
-41 | Invalid data. |
-42 | Reserved |
-43 | Problem executing any of the routines on the pinpad. |
-50 | Unsecured transaction. |
-100 | Internal module error. |
other negative value | Errors detected internally by the routine. |
#
Function code table*The following codes are available to be used in the parameter Function described above1.
Function | Description |
---|---|
0 | Generic payment. CliSiTef allows the operator to choose the payment method through menus. |
1 | Check |
2 | Debt |
3 | Credit |
4 | Fininvest |
5 | Benefit Card |
6 | Centralized Credit |
7 | Fuel Card |
8 | Pay More Redecard |
10 | Wappa Meal Benefit |
11 | Wappa Food Benefit |
12 | Infocard Card |
13 | Pay Pass |
15 | Sale with Gift Card |
16 | Debit for payment of booklet |
17 | Credit for payment of booklet |
28 | Sale with Quality Card (ICI Card) |
100 | Telemarketing: Initiates collection of transaction data at the point needed to handle an entered credit card transaction |
101 | Cancellation of sales with a Quality card (ICI Card) |
110 | Open the Management transactions menu |
111 | Communication test with SiTef |
112 | Reprint Menu |
113 | Re-print specific voucher |
114 | Reprint last receipt |
115 | Pre-authorization |
116 | Pre-authorization capture |
117 | Pre-authorization adjustment |
118 | Pre-authorization consultation |
130 | Querying pending transactions on the terminal |
131 | Querying pending transactions in a specific tax document |
150 | Bonus Consultation |
151 | Gift Card Balance Inquiry |
152 | Gift Card Balance Inquiry |
160 | EMS Card Inquiries |
161 | EMS Card Sales |
200 | Normal Cancellation: Starts data collection at the point necessary to cancel a debit or credit transaction, without having to first go through the administrative transactions menu |
201 | Telemarketing Cancellation: Similar to modality 200 but for the function of canceling entered credit transactions |
202 | Pre-authorization Cancellation |
203 | Cancellation of Pre-Authorization Capture |
210 | Cancellation of sales with Credit Card |
211 | Cancellation of sales with Debit card |
212 | Cancellation of sales with Fuel card |
213 | Cancellation of Sale with Gift Card |
250 | Bonus Consultation Cancellation |
251 | Gift Card Recharge Cancellation |
253 | Cancellation Accumulation of Bonus Card Points |
254 | Redeem Bonus Card Points |
255 | Cancellation of Bonus Card Points Redemption |
256 | Accumulation of Bonus Card Points |
257 | Gift Card Recharge Cancellation |
264 | Gift Card Recharge |
265 | Activation Linked Payment Gift Card |
266 | Gift Card Consultation |
267 | Gift Card Activation Without Payment |
268 | Gift Card Activation With Payment |
269 | Gift Card Unlinked Activation |
310 | Bank Correspondence (Bill Payment) |
311 | Payment of Bills with Withdrawal |
312 | Consultation for Unlinked Payment (Generic) |
313 | Unlinked Payment (Generic) |
314 | Corban SE Prepaid Recharge with Withdrawal |
315 | Withdrawal for Payment |
316 | Unlinked payment cancellation (generic) |
317 | Consult Banking Correspondent Limits |
318 | Bradesco Prepaid Recharge |
319 | Bradesco Prepaid Recharge disconnected from payment |
320 | Corban SE Prepaid Recharge |
321 | Corban SE Prepaid Recharge disconnected from payment |
322 | Identified Deposit |
323 | Transfer between Accounts |
324 | Pay Easy |
325 | INSS Password Revalidation |
350 | Sell Product (No Value) |
351 | Cancellation of Product Sale (No Value) |
400 | Vale-Gas |
401 | Vale-Gás Validation |
410 | Surprise Change |
422 | Insurance Membership |
430 | Le Cartão Seguro (LeCartaoSeguro) |
431 | Le Trilha Chip (LeTrilhaChipInterativoEx) |
500 | ACSP Detailed Query |
501 | Serasa Detailed Consultation |
600 | Balance Inquiry |
601 | Debit Card Balance Inquiry |
602 | Credit Card Balance Inquiry |
657 | Withdraw Credit Transfer |
658 | Withdraw Credit |
660 | IBI Withdrawal Menu |
661 | IBI Bank Withdrawal Consultation |
662 | IBI Bank Withdrawal |
663 | GetNet Withdrawal |
664 | GetNet Withdrawal Cancellation |
665 | Points Redemption |
667 | Points Issuance |
668 | Cancellation of Point Issuance |
669 | Prepaid Load |
670 | Prepaid Load Cancellation |
671 | Withdrawal Consultation with IBI Banco Withdrawal |
672 | IBI Bank Withdrawal Cancellation |
680 | Prepaid Balance Inquiry |
698 | Debit Withdrawal |
700 | Sale Hi Paggo |
701 | Hi Paggo Cancellation |
702 | Bill payment |
703 | Benefit Card Payment Cancellation |
705 | Invoice Payment |
740 | Adm Credit Installments Consultation |
770 | Loading tables on pinpad 2 |
771 | Forced loading of tables on pinpad (Local) |
772 | Forced loading of tables on the pinpad (SiTef) |
775 | Getting Pinpad Information 3 |
899 | Credit card recharge |
900 | Credit card top-up cancellation |
913 | Change of Pre-Authorization |
928 | Debit Cancellation for Payment Carnet Forced Network |
943 | Invoice payment without linked invoice |
944 | Invoice payment without unlinked invoice |
999 | Closure |
1000 | Paper Voucher |
#
Additional ParametersAdditional parameters, valid for the current transaction, can be passed to CliSiTef through the ParamAdic parameter of the routine IniciaFuncaoSiTefInterativo and its variants.
To meet the need for some "Authorizing" networks, which require information about the Electronic Tax Document issued by "Commercial Automations", 2 "functionalities" were defined to pass the necessary data in the ParamAdic parameter (see details in item Enabling special settings per transaction).
#
Continuation of the iterative collection processThis function must be called continuously until there are no more information to be exchanged between the application and CliSiTef (this is, as long as its return is equal to 10000), as described in results returned by it. The activation format is as follows:
int ContinuaFuncaoSiTefInterativo (Command, FieldType, MinimumSize, MaximumSize, Buffer, TamBuffer, Continues)
ASCII Interface
ContinueFunctionSiTefInterativoA (Result, Command, FieldType, MinimumSize, MaximumSize, Buffer, TamBuffer, Continues)
Parameter | Type | Standard interface | ASCII Interface | Description |
---|---|---|---|---|
Result | Output, by value | Not used | Fixed 6 | Contains the result of the response to the routine call. |
Command | Output, by reference | int * | Fixed 12 | Contains in the return: 0 → if CliSiTef is returning any data relating to the transaction in the Buffer field <> 0 → indicates the Next Command to be executed by the application. Valid commands are described in Command Code Table |
FieldType | Output, by reference | long * | Fixed 12 | Contains the code for the type of field that the automation should handle. The existing types are described in Table of values for FieldType |
MinimumSize | Output, by reference | short * | Fixed 6 | When the Command is a data collection, it contains the Minimum size of the field to be read |
MaximumSize | Output, by reference | short * | Fixed 6 | When the Command is a data collection, it contains the Maximum size of the field to be read |
Buffer | Entry and Exit, by value | char * | Variable | Data transfer area between the application and CliSiTef. It must be at least 20,000 bytes. If automation is not sending data to CliSiTef, this field must be passed empty |
TamBuffer | Entry, by value | int | Fixed 6 | Size of the area reserved by automation for the Buffer field |
Continued | Entry, by value | int | Fixed 6 | Contains instructions for CliSiTef regarding the Command executed according to the following coding: |
0 → Continue transaction | ||||
1 → Returns, when possible, the collection to the previous field | ||||
2 → Cancels the current bill payment, keeping previous ones in memory, if any, allowing such payments to be sent to SiTef and even allowing new payments to be included. Return valid only on collections of amounts and due date of a bill payment. | ||||
10000 → Transaction continues, see note below | ||||
-1 → Closes the transaction |
Note: As the field requested by the routine does not always need to be read in the At the time of the request, the routine accepts the value 10000 to indicate that the field was not collected at that time but previously, in the moment of closing the sale.
A typical example of this situation occurs when the automation has already closed with the customer a form of payment in installments using a credit card. In this If automation can, at the moment field collection is requested to read the number of installments, then return the previously agreed number without capture this user data.
Note that in this form of use it is essential that the data is presented to the operator who must confirm its veracity before It is routine to return it to CliSiTef.
Also note that this form of use is not mandatory, and the Automation always capture screen data. Use of this feature may change the collection flow or any rule defined by the flags, so before using them, consult the Software Express Support department who will verify the need prior authorization by the flags.
Upon return, the routine returns the same values as the Payment routine. In addition to these values, the function returns the value 0 (Zero) to indicate that the requested function was completed successfully (e.g. if is a payment, it was approved by the administrator).
It is important to point out that the call that starts the iterative process (the one that is made after the value 10000 has been received in the call of a Payment, Management function, etc...) must be done with Command, FieldType, MinimumSize, MaximumSize and Continues containing the value 0 (zero).
Also note that commercial automation must be in a loop calling the routine described here until she receives a result different from 10000 or the automation itself stops continuing the process, as shown below:
If the automation wants to close the collection process, it must, necessarily call the routine ContinuaFuncaoSiTefInterativo passing --1 (minus one) in the Continue field. If the process of collection should continue, it should not modify any of the fields filled by CliSiTef except for the Buffer which, in the new call, must contain the collection result (if Command different from 0) or the original data if Command came with 0. Note also that even if the Buffer contains a field collected by automation, its size must be recommended by this document as it will contain, upon return, new data provided by the routine.
Note that the Buffer field may have been filled in by the routine with some data to be memorized, displayed on the display or for another reason, according to what is specified in the description of each command that the automation application must handle.
IMPORTANT: It is mandatory that the automation ALWAYS collect fields not treatable by her, that is, if she receives some code in pinpad error
that she is unaware of or does not wish to treat, that the information is captured by the operator typing the requested information.
#
Command code tableBelow we present the possible values for the parameter Command and the action that the application should perform upon receiving it. It is important that the commercial automation handles all commands in this table.
Command | Description |
---|---|
0 | It is returning a value to, if desired, be stored by the automation |
1 | Message for operator display |
2 | Message for the customer display |
3 | Message for both displays |
4 | Text that should be used as title in the menu presentation (see command 21) |
11 | You must remove the message displayed on the operator display (command 1) |
12 | You must remove the message displayed on the customer's display (command 2) |
13 | Must remove message displayed on operator and customer displays (command 3) |
14 | You must clear the text used as title in the menu presentation (command 4) |
15 | Header to be displayed by the application. Refers to the display of additional information that some transactions need to show on the screen. |
An example is the Bank Correspondent Loan transaction, which at a certain point requires information to be shown to the customer detailing the loan being contracted (such as Installment amount, due date, etc.). | |
16 | You must remove the header presented by command 15. |
20 | You must present the text in Buffer, and obtain a YES/NO answer. |
In the return, the first character present in Buffer must contain 0 if confirmed and 1 if cancelled. | |
21 | It should present a menu of options and allow the user to select one of them. |
In the call, the Buffer parameter contains options in the format 1:text;2:text;...i:Text;... | |
The application routine must present the options in the way it wishes (it is not necessary to include the indices 1,2, ...). | |
After the selection made by the user, return the index i chosen by the operator in Buffer (in ASCII) | |
22 | You must display the message in Buffer, and wait for a key from the operator. It is used when you want the operator to be notified of a message displayed on the screen. |
23 | This command indicates that the routine is asking the application whether it wants to interrupt the data collection process or not. This code occurs when CliSiTef is accessing some peripheral and allows the automation to interrupt this access (for example: waiting for a card to be passed through the reader or for the customer to enter a password) |
Note: It is important that the “Commercial Automation Application” does not place “delays” when handling this command. At this point, some device (pinpad, barcode reader...) is carrying out some processing (reading card/barcode, collecting password) and a “delay” causes delays in accessing data from the device, which may not be more available, resulting in data loss and communication errors. | |
29 | Analogous to command 30, however, a field must be collected that does not require intervention from the cashier, that is, it does not need to be typed/shown on the screen, but rather passed directly to the library by automation. |
An example is the payment methods that some transactions require to identify which type of payment is being used. | |
The value to be collected refers to the field indicated in FieldType, whose size is between Minimum Size and Maximum Size. The field must be returned in Buffer. | |
30 | A field whose size is between Minimum Size and Maximum Size must be read. The read field must be returned in Buffer. |
31 | The number of a check must be read. Collection can be done by reading the CMC-7, typing the CMC-7 or typing the first line of the check. |
On return, it must be returned in Buffer: | |
“0:”(typing the first line of the check), | |
“1:”(CMC-7 reading) or | |
“2:”(CMC-7 Typing), | |
followed by the number collected manually or by reading/typing the CMC-7, respectively. | |
When the first line of the check is collected manually, the format is as follows: Clearing (3), Bank (3), Agency (4), C1 (1), Current Account (10), C2 (1), Account Number Check (6) and C3 (1), in that order. Note that these fields are those at the top of a check and in the order presented. | |
We suggest that an interface be presented during the collection that allows the operator to identify and properly enter this information so that the query is not made with incorrect data, returning a check with problems as good. | |
34 | A monetary field must be read, that is, it accepts the cent delimiter and returned in the Buffer parameter. |
35 | A bar code must be read or collected manually. |
The Buffer return must contain “0:” or “1:” followed by the barcode collected manually or by the reader, respectively. | |
It is up to the application to decide whether the collection will be manual or through a reader. If manual collection is required, it is recommended to follow the procedure described in the ValidaCampoCodigoEmBarras[1] routine in order to treat a bar code in the most generic way possible, leaving the automation application independent of future changes that may arise in the bar formats. | |
When returning from Buffer, “2:” can also be passed, indicating that the collection was canceled, but the flow will not be interrupted, so in the case of multiple payments, all documents previously collected will be maintained and the flow will be resumed, allowing making such payments. | |
41 | Analogous to Command 30, but the field must be collected in a masked way. |
42 | Menu identified. It should present a menu of options and allow the user to select one of them. |
In the call, the Buffer parameter contains options in the format class | |
The application routine must present the options in the way it wishes (it is not necessary to include the indexes 1,2, ..., nor field codes, type and class) and after the selection made by the user, return in Buffer the index i chosen by the operator (in ASCII). | |
The option code is the identification (Table of payment method codes, settings and menus) of the option field, it can be used to identify the chosen option. | |
Within each “class” there is coding of “types”, and each pair (class, type) indicates the nature of the option. Initially, only identification for payment methods was implemented. The idea is to add codes that identify menu options to enable the POS to identify these options without the operator's assistance. | |
· Classes: | |
o 0: Class not defined | |
o 1: Payment method, types below: | |
§ 1: Money | |
§ 2: Check | |
§ 3: Debit | |
§ 4: Credit | |
§ 5: Loot | |
§ 6: Another way | |
The other menus are not identified. Unidentified menus receive a zero value in these fields, indicating that there has not yet been a need to classify them. | |
Option classes are intended to define a context for which the code that identifies the type of option is determined. Thus, an option in the menu is always identified based on the option type and option class pair. | |
This command is used when the additional parameter ItemMenuIdentificado is used (Enabling special configurations). In this case, command 21 (menu collection) will be replaced in most cases, and the application must be prepared to handle both commands when this parameter is enabled. |
#
Table of values for FieldTypeBelow we present the possible values for the field TipoCampo and respective meanings5:
Fields marked with * indicate that they are used in one or more products.
Note that not all fields are returned in all transactions. In addition Furthermore, there are fields that are only returned if the transaction was approved.
The automation application must ignore those fields that do not wish/do not know how to treat since, in future versions of CliSiTef, new fields may be made available. Note that the correct way to ignoring these fields is executing the function defined in NextCommand or simply ignore the data returned to the application when NextCommand is 0.
Commercial automation is responsible for storing receipts for printing at the appropriate time, in accordance with current Tax legislation.
In the case of Banking Correspondent or Functions Administrative, any receipt must be printed at the moment they are made available for automation and information whether they were printed correctly or not is passed through the function ContinuaFuncaoSiTefInterativo through the value 0 or -1, respectively, placed in Continue.
FieldType | Description |
---|---|
-1 | There is no information that can/should be handled by automation |
0 | The routine is being called to indicate that it has just collected the transaction data and will start interacting with SiTef to obtain authorization |
1 | Transaction confirmation data. For environments with multiple servers, it will be returned in the following format: |
<Data_Confirmation>;<Index_SiTef>;<Address_SiTef> | |
2 | Informs the SiTef function code used in the message sent to the server. |
10 to 99 | Informs which option is selected in the transaction navigation menu, following the same coding used to define payment restrictions described in the item Restricting or enabling payment methods. |
and | |
3000 to 3999 | |
100 | Payment method in xxnn format. |
xx corresponds to the modality group and nn to the subgroup. | |
Group: | |
· 00: Check | |
· 01: Debit Card | |
· 02: Credit Card | |
· 03: Voucher card | |
· 05: Loyalty Card | |
· 98: Money | |
· 99: Another type of card | |
Subgroup: | |
· 00: In sight | |
· 01: Pre-dated | |
· 02: Installments with financing by the establishment | |
· 03: Installments with financing by the administrator | |
· 04: Cash with interest | |
· 05: Credit | |
· 99: Other type of payment | |
101 | Contains the actual text of the payment method that can be memorized by the application if necessary. Describe in full the xxnn pair given in 100 |
102 | Contains the descriptive text of the payment method that must be printed on the tax coupon (e.g.: T.E.F., Check, etc...) |
105 | Contains the date and time of the transaction in the format AAAAMMDDHHMMSS |
110 | Returns when a transaction is cancelled. Contains the cancellation modality in the xxnn format, following the same xxnn format as TipoCampo 100. The nn sub-group, however, contains the default value 00 as it is not collected. |
111 | Contains the actual text of the cancellation method that can be memorized by the application if necessary. Describes in full the xxnn pair given in 110. |
112 | Contains the descriptive text of the cancellation method that must be printed on the tax coupon (e.g.: T.E.F., Check, etc...). |
115 | Adjustment mode |
120 | Buffer contains the check authentication line to be printed on the back of the check |
121 | Buffer contains the first copy of the payment receipt (customer copy) to be printed on the fiscal printer. This copy, when possible, is reduced so that it takes up few lines on the printer. It can be a sales or administrative receipt |
122 | Buffer contains the second copy of the payment receipt (cash copy) to be printed on the fiscal printer. It can be a sales or administrative receipt |
123 | Indicates that the receipts that will be delivered next are of a certain type: |
· PROOF_PURCHASES = "00" | |
· VOUCHER_VOUCHER = "01" | |
· PROOF_CHEQUE = "02" | |
· PROOF_PAYMENT = "03" | |
· PROOF_MANAGERIAL = "04" | |
· PROOF_CB = "05" | |
· RECEIPT_RECHARGE_CELL PHONE = "06" | |
· RECEIPT_RECHARGE_BONUS = "07" | |
· RECEIPT_RECHARGE_GIFT = "08" | |
· PROOF_RECHARGE_SP_TRANS = "09" | |
· PROOF_MEDICATIONS = "10" | |
125 | Voucher Code |
130 | Indicates, upon collection, that the field in question is the value of the cash change to be returned to the customer. When returning the result (Command = 0) it contains the value actually approved for the change |
131 | Contains an index that indicates which institution will process the transaction according to the table at the end of the document (up to 5 significant digits) |
132 | Contains an index that indicates the type of card when that type is identifiable, according to a table to be provided (5 positions) |
133 | Contains the SiTef NSU (6 positions) |
134 | Contains the NSU of the authorizing Host (20 positions maximum) |
135 | Contains the Authorization Code for credit transactions (15 positions maximum) |
136 | Contains the first 6 positions on the card (bin) |
137 | Balance payable |
138 | Total Amount Received |
139 | Entry Value |
140 | Date of first installment in ddmmyyy format |
143 | Tip amount |
144 | Refund value |
145 | Payment amount |
146 | The routine is being called to read the Value to be canceled. If the automation application has this value, it can present it to the operator and allow him to confirm the value before passing it back to the routine. If it does not have this value, you must read it. |
147 | Amount to be canceled |
150 | Contains Track 1, when available, obtained from the LeCartaoInterativo function |
151 | Contains Track 2, when available, obtained from the LeCartaoInterativo function |
153 | Contains the customer's password captured through the LeSenhaInterativo routine and the customized Software Express security lib must be passed to the commercial establishment in order to obtain the open password |
154 | Contains the new payment amount |
155 | Bonus card type |
156 | Name of institution |
157 | Establishment Code |
158 | Authorizing Network Code |
160 | Original coupon number |
161 | Payment Coupon Identification Number |
This is a counter (starting with value 0) of payments that occurred on the coupon. | |
Example: If there were 6 payments in the Coupon, the values returned will be from [0] to [5]. | |
170 | Installation Sale of Qualified Establishment |
171 | Minimum Number of Installments – Establishment Installments |
172 | Maximum Number of Installments – Establishment Installments |
173 | Minimum Value Per Installment – Establishment Installments |
174 | Sell in Installments Qualified Administrator |
175 | Minimum Number of Installments – Administrative Installments |
176 | Maximum Number of Installments – Administrative Installments |
177 | Indicates that the field is numeric (PBM) |
178 | Indicates that the field is alphanumeric (PBM) |
200 | Available balance*, balance of the specific product (school, transport voucher) |
201 | Blocked Balance |
500 | Indicates that the field in question is the supervisor's code. Automation can, if desired, validate the collected data, allowing the transaction flow to continue normally if an acceptable supervisor is present. |
501 | Type of Document to be consulted (0 – CPF, 1 – CGC) |
502 | Document number (CPF or CGC) |
504 | Service Fee |
505 | Number of Installments |
506 | Pre-dated date in ddmmyyy format |
507 | Captures whether the first installment is in cash or not (0 – First in cash, 1 – otherwise) |
508 | Interval in days between installments |
509 | Captures whether it is a closed month (0) or not (1) |
510 | Capture whether it is with (0) or without (1) post-dated guarantee with debit card |
511 | Number of CDC Installments |
512 | Credit Card Number Entered |
513 | Card expiration date |
514 | Card security code |
515 | Transaction date to be canceled (DDMMYYY) or to be reprinted |
516 | Document number to be canceled or reprinted |
517 | The routine is being called to read the Check Number as described in the type of command corresponding to value 31 |
518 | Item Code |
519 | Payment Plan Code |
520 | NSU from SiTef Original (Cisa) |
521 | Identification document number (RG) |
522 | The routine is being called to read the Phone Number |
523 | The routine is being called to read the area code of a telephone with up to 4 digits |
524 | Value of the first installment |
525 | Value of other installments |
526 | Number of checks |
527 | Check due date |
529 | The routine is being called to read the Account Opening Date in the format (MMAAAA) |
530 | Supervisor authorization entered |
531 | Special supervisor authorization |
532 | The routine is being called to read the number of installments or checks |
533 | Additional sales data |
534 | Check issuer |
535 | The document paid for the transaction |
536 | CDL-Poa check consultation return records |
537 | Area code of the city of the check |
550 | Address |
551 | Address number |
552 | Floor of address |
553 | Address set |
554 | Address block |
555 | Address zip code |
556 | Address neighborhood |
557 | CPF for AVS consultation |
558 | AVS query result |
559 | Number of days of pre-dating |
560 | Number of Cycles |
561 | Occurrence Code |
562 | Store Code (EMS) |
563 | POS Code (EMS) |
564 | Data Returned (EMS) |
565 | Telephone Extension |
566 | RG Issuing Body |
567 | State where the ID was issued |
568 | RG dispatch date |
569 | Operator Registration |
570 | Operator Name |
571 | Lecturer's Registration |
572 | Name of Lecturer |
573 | Percentage of Interest Applied |
574 | Authorizer Registration |
575 | Original Transaction Tax Coupon Date |
576 | Original Transaction Tax Coupon Time |
577 | Carnet details or EMS summary code |
578 | Differentiated mile code 1 |
579 | Value of differentiated miles 1 |
580 | Differentiated mile code 2 |
581 | Value of differentiated miles 2 |
582 | EMS external code type |
583 | EMS external code |
587 | Code name of the cell phone authorizing institution |
588 | Cell phone authorization establishment code |
593 | Check digit(s) |
594 | Zip code of the location where the terminal in which the operation is being carried out is located |
595 | Obsolete. SiTef NSU corresponding to the Recharge payment transaction with card |
596 | Obsolete. Nsu of the Authorizing Host corresponding to the Recharge payment transaction by card |
597 | Code of the Branch that responded to the cell phone recharge request |
599 | Cell phone recharge authorizing network code |
600 | Title/agreement expiration date in DDMMAAAA format |
601 | Amount Paid* |
602 | Original Value |
603 | Additional Value |
604 | Rebate Value |
605 | Payment Accounting Date |
606 | Name of the Assignor of the Title. It must be printed on the check when payment is made via this method |
607 | Document index, in the case of batch payment, of fields 600 to 604 that will follow |
608 | Payment method used in the banking correspondent role. Follows the same formatting rule as the number 100 field |
609 | Total value of titles actually paid in case of batch payment |
610 | Total value of unpaid titles in case of batch payment |
611 | NSU Banking Correspondent |
612 | Document type: 0 - Collection, 1 - Title (Compensation form), 2 - Tax |
613 | Contains the details of the check used to pay bills in the following format: Clearing (3), Bank (3), Agency (4), Current Account (10), and Check Number (6), in that order. Note that the order is the same as that on the top line of the check without the check digits |
614 | NSU SiTef payment transaction |
620 | NSU SiTef of original transaction (cancellation transaction) |
621 | NSU Bank Correspondent of the original transaction (cancellation transaction) |
622 | Benefit Value |
623 | Code printed at the bottom of the CB receipt and used for re-printing/cancellation |
624 | Paid barcode. Appears once for each document index (field 607). The format is the same as that used to enter the field, that is, 0:number or 1:number |
625 | Withdrawal receipt |
626 | Bank number |
627 | Agency |
628 | Agency digit |
629 | Account |
630 | Account digit |
631 | Money value |
632 | Amount by check |
633 | Name of depositor |
634 | Original Banking Correspondent Document |
635 | User key used to communicate with the Bank |
636 | Unique sequence of the user's key in the Bank |
637 | Code of the correspondent's store relationship agency |
638 | CB Check Number |
639 | Invoice Number |
640 | Agreement Number |
641 | Statement Start Date (DDMMAAAA) |
642 | Statement End Date (DDMMAAAA) |
643 | Calculation Period |
644 | Federal Revenue Code |
645 | Value of Gross Revenue |
646 | Applied Percentage |
647 | Main Value |
648 | Fine Value |
649 | Interest Value |
670 | PinPad Data |
700 | ValeGás Operator |
701 | ValeGás Product |
702 | ValeGás number |
703 | Reference Number |
704 | GPS code |
705 | GPS Competence |
706 | Contributor Identifier |
707 | INSS Value |
708 | Value Other Entities |
709 | Allows Payment of Bills With Cash (0 – Does not allow; 1 – Allows) |
710 | Allows Payment of Bills by Check (0 – Does not allow; 1 – Allows) |
711 | Allows Payment of Bills with TEF Debit (0 – Does not allow; 1 – Allows) |
712 | Allows Bill Payment With TEF Credit (0 – Does not allow; 1 – Allows) |
713 | Payment Methods used in the Generic Payment transaction |
714 | Withdrawal Value |
715 | Order Number |
716 | CB Deposit Limit Value |
717 | CB Withdrawal Limit Value |
718 | Withdrawal Limit Value for CB Payment |
719 | Value of the ValeGás product |
722 | Minimum payment amount |
723 | Customer Identification, for Carrefour receipt only |
724 | Sell Credit in Installments with Plan Enabled |
725 | Sell Credit with Qualified Cash Authorization |
726 | Sell Credit with Installment Authorization with Enabled Plan |
727 | Bill Sale Enabled |
729 | Maximum payment amount |
730 | Maximum number of payment methods, 0 for no limit |
731 | Payment Type Enabled, repeats “n” times, where “n” is the number of payment methods enabled: |
· 00 Money | |
· 01 Check | |
· 02 TEF Debit | |
· 03 TEF Credit | |
· 04 Carrefour Gift Card (Prepaid) | |
· 05 Carrefour Bonus Card | |
· 06 Carrefour Card | |
· 07 Withdrawal for payment | |
· 08 Withdrawal | |
· 09 DCC Carrefour | |
· 50 TEF Card | |
· 77 Reserved Field | |
732 | Data to be sent for the Payment Type (Field 730) previously returned, repeats “n” times, where “n” is the number of data to be sent for the respective Payment Type: |
· 00 Reserved Field | |
· 01 Check Entry Type | |
· 02 Check Details | |
· 03 Destination Network | |
· 04 SiTef NSU of the TEF transaction | |
· 05 SiTef date of the TEF transaction (unused, future use) | |
· 06 Company (Store) Code of the EFT transaction | |
· 07 TEF Transaction Host NSU | |
· 08 TEF transaction Host Date (Field 105 CliSiTef) | |
· 09 Origin Code (Establishment) of the TEF transaction | |
· 10 Service Z of the EFT transaction | |
· 11 EFT Transaction Authorization Code | |
· 12 Check Amount | |
734 | Minimum sales limit for flexible promotions, with 12 digits with the last 2 digits referring to decimal places |
738 | Suggested value for the selected product. |
739 | Preferred Customer |
750 | Pay Easy Value CB |
751 | Pague Fácil CB Fare Value |
from 800 to 849 | The entire range from 800 to 849 is reserved for the return of GerPdv |
950 | CNPJ NFCE Accreditor |
951 | NFCE Flag |
952 | NFCE authorization number |
953 | SAT Accreditation Code |
1002 | Card Expiration Date |
1003 | Cardholder Name |
1010 | Quantity of medicines - PBM |
1011 | Drug index – PBM |
1012 | Medication code – PBM |
1013 | Authorized quantity – PBM |
1014 | Maximum consumer price – PBM |
1015 | Recommended consumer price – PBM |
1016 | Pharmacy sales price – PBM |
1017 | Refund value at the pharmacy – PBM |
1018 | Replacement value at the pharmacy – PBM |
1019 | Subsidy value of the agreement – PBM |
1020 | CNPJ agreement – PBM |
1021 | Discount plan code – PBM |
1022 | Does have a prescription – PBM |
1023 | CRM – PBM |
1024 | UF – PBM |
1025 | Product description* - PBM |
1026 | Product code – PBM |
1027 | Product quantity – PBM |
1028 | Product value – PBM |
1029 | Date of medical prescription - PBM |
1030 | PBM authorization code |
1031 | Quantity reversed – PBM |
1032 | PBM chargeback code |
1033 | Recommended cash consumer price – PBM |
1034 | Recommended price consumed for payroll deduction – PBM |
1035 | Pharmacy replenishment percentage – PBM |
1036 | Replacement commission – PBM |
1037 | Authorization Type – PBM |
1038 | Partner code – PBM |
1039 | Name of partner – PBM |
1040 | Type of PBM Medicine (01–Medicine, 02-Handling, 03-Special Handling, 04-Perfumery) |
1041 | Medicine Description – PBM |
1042 | Condition for sale: If 0 mandatory, use Functional Card (PF) price |
If 1 can sell for a price lower than the PF price | |
1043 | Functional price card |
1044 | Price charged – PBM |
1045 | Drug status – PBM |
1046 | Amount prescribed – PBM |
1047 | Reference – PBM |
1048 | PBM sales indicator (0-Product sold by card 1-Product sold in cash) |
1051 | Date of birth |
1052 | Mother's name |
1058 | Additional data – ACSP |
1100 | Analytical record CHECKCHECK |
1101 | ACSP analytical record |
1102 | SERASA analytical record |
1103 | ACSP analytical screen image |
1104 | SERASA analytical screen image |
1105 | Reason for cancellation – ACSP |
1106 | Query type – ACSP |
1107 | CNPJ Affiliated Company |
1108 | Administrator code |
1109 | Telecheque table data - ACSP |
1110 | Driver registration – Fuel Card |
1111 | Vehicle plate – Fuel Card |
1112 | Mileage – Fuel Card |
1113 | Quantity of liters – Fuel Card |
1114 | Main fuel – Fuel Card |
1115 | Fuel products – Fuel Card |
1116 | Host Product Code – Fuel Card |
1117 | Hour Meter – Fuel Card |
1118 | Credit Line – Fuel Card |
1119 | Type of Goods – Fuel Card |
1120 | Branch – Fuel Card |
1121 | Decimal places of unit prices – Fuel Card |
1122 | Maximum quantity of products for sale |
1123 | Product code size – Fuel Card |
1124 | Vehicle code – Fuel Card |
1125 | Company Name – Fuel Card |
1126 | Decimal places of quantity – Fuel Card |
1128 | List of Questions – Fuel Card |
1129 | Allows Product Collection – Fuel Card |
1131 | Limit Code |
1132 | Number of Holders |
1133 | Company Opening Date (DDMMAAAA) |
1134 | Name of Holder |
1135 | Address Complement |
1136 | City |
1137 | State |
1152 | Value Menu - SPTrans |
1160 | Product with Face Value – Gift |
1190 | Issue (last 4 digits) of the Card |
1200 | Total previous consultations |
1201 | Accumulated value from previous queries, containing 2 decimal digits but without the decimal character. |
1202 | Total number of consultations carried out on the day. |
1203 | Accumulated value of consultations on the day, containing 2 decimal digits but without the decimal character. |
1204 | Total number of post-dated check consultations carried out in the period. |
1205 | Accumulated value of post-dated checks, containing 2 decimal digits but without the decimal character. |
1206 | Seller (User) - PBM |
1207 | Password – PBM |
1208 | Return Code – PBM |
1209 | Origin – PBM |
1321 | NSU of Canceled Transaction Authorizing Host |
2006 | Type of encryption |
2007 | MasterKey Index |
2008 | Encryption key |
2009 | Card password |
2010 | Authorizer response code |
2011 | Network bin |
2012 | CHIP serial number |
2013 | CHIP control record |
2014 | Common balance, common pass balance |
2015 | Gift card PAN |
2017 | First due date |
2018 | Total value |
2019 | Amount financed |
2020 | Percentage fine |
2047 | Default interest |
2048 | TAC (Administration fee) |
2053 | Menu (product) selected Visanet |
2054 | CDC Credit Type (1 – CDC Product; 2 – CDC Service) |
2055 | Date/Time Sitef (Location) |
2056 | Day of the week Sitef (Local) |
2057 | Sitef Date/Time (GMT) |
2058 | Sitef Day of the Week (GMT) |
2059 | Payment Method Data - SPTrans |
2064 | Cash payment amount |
2065 | Check query code (Generic EMS) |
2067 | Authorizer message to be displayed along with the values menu (If the terminal allows it) |
2078 | Service code |
2079 | Service value |
2081 | Product Menu |
2082 | Our number |
2083 | Total value of the product containing the decimal separator (“,”) and two decimal places after the comma. |
2086 | Product Code - ValeGas |
2087 | Deadline statement: 0: No; 1: Yes |
2088 | Total/Partial Cancellation: 0: Partial; 1: Total |
2089 | Invoice identification number. |
2090 | Card type Read: |
· 00 – Magnetic (Traditional magnetic cards and Samsung Pay in “MST – Magnetic Secure Transmission” mode) | |
· 01 - VISA Cash currency exchanger on TIBC v1 | |
· 02 - VISA Cash currency exchanger on TIBC v3 | |
· 03 - EMV with contact | |
· 04 - Easy-Entry on TIBC v1 | |
· 05 - Contactless chip simulating stripe | |
· 06 - Contactless EMV (Traditional cards, contactless stickers and bracelets, in addition to mobile solutions such as Apple Pay, Google Pay, Samsung Pay in “NFC – Near Field Communication” mode, among others) | |
· 99 – Typed | |
2091 | Status of last card reading |
· 0 - Success. | |
· 1 - Error subject to fallback. | |
· 2 - Application required not supported. | |
2093 | Attendant code |
2103 | Indicates whether it was an offline transaction: 1: Yes |
2109 | Temporary password |
2124 | Cellphone Recharge fee value (via Banking Correspondent. Example: CB Bradesco) |
2125 | Plot number (2 characters) (Hotcard) |
2126 | Transaction sequence (6 characters) (Hotcard) |
2301 | Footer of proof of establishment copy |
2320 | Depositor Code – CB |
2321 | Customer Code |
2322 | Card Sequence – CB |
2323 | Via Card - CB |
2324 | Extract Type – CB |
2325 | Transfer limit value - CB |
2326 | Limit value for collecting CPF/CNPJ – CB |
2327 | Owner’s CPF/CNPJ – CB |
2328 | CPF/CNPJ of the Bearer – CB |
2329 | Type of Owner's document - CB |
2330 | Type of Bearer document - CB |
2331 | Indicates whether payment by CB card is allowed |
2332 | Transfer Value |
2333 | Transaction identification |
2334 | Pin Code |
2355 | When returned, it acts as a “hint” for the format of the next field that will be collected. It is normally accompanied by the zero command (0 – return value for use by automation). |
Assumes the following values: | |
· The Alphabetical | |
· AN Alphanumeric (ans) | |
· LN Unaccented letters and numbers | |
· N Numeric | |
· Vx Value with x decimal places | |
· Y Yes/No | |
· M Menu | |
· Mc Menu with confirmation | |
It is not a field that is returned in all field collections, only in situations that must be addressed in the specific document for each network. | |
2361 | Indicates that a debit transaction was carried out to pay the carnet |
2362 | Returned right after the bin query transaction. The value 1 indicates that the authorizer is able to treat conventional debit transactions differently from debit transactions for bill payments. |
2363 | Indicates that a credit transaction was carried out to pay the carnet |
2364 | Returned right after the bin query transaction. The value 1 indicates that the authorizer is capable of treating conventional credit transactions differently from credit for bill payment. |
2369 | Points to be redeemed (numeric without decimal place). |
2421 | Informs whether the additional customer data collection function is enabled (0 or 1) |
2467 | Date in DDMMAA Format Positive Confirmation |
2468 | Date in DDMM Format Positive Confirmation |
2469 | Date in MMAA Format Positive Confirmation |
2470 | Floating Point Field |
2601 | Message for pinpad |
2602 | Hash Seed |
2603 | Mode for card reading using function 431. |
2699 | Sends additional GIFT Activation/Recharge information, returned by the SQCF host, to Automation |
2925 | Credit Card Recharge Amount |
2965 | Debit Card Recharge Amount |
2974 | Sell in Installments via Qualified Credit |
2975 | Minimum number of installments for credit |
2976 | Maximum number of installments for credit |
3481 | Menu (managerial) AVS Query |
3988 | Credit Menu |
3989 | Credit Simulation Menu |
4000 | Pre-Authorization Status – PBM |
4001 | CRF – PBM |
4002 | UF of CRF – PBM |
4003 | Type of sale – PBM |
4004 | Total PBM value |
4005 | PBM cash value |
4006 | PBM card value |
4007 | Our PBM numbers |
4008 | Percentage of discount granted by the administrator (2 decimal places) |
4016 | Gross price – PBM |
4017 | Net price – PBM |
4018 | Amount receivable from the Store, in cents – PBM |
4019 | Batch number generated by Central – PBM |
4020 | Total amount receivable from the store – PBM |
4021 | Total amount receivable from the store – PBM |
4022 | Sum of Operation values – PBM |
4023 | Operator name – PBM |
4024 | Name of partner company – PBM |
4025 | Number of dependents – PBM |
4026 | Dependent code – PBM |
4027 | Dependent’s name – PBM |
4028 | Amount receivable from the partner – PBM |
4029 | Total discount value, in cents |
4030 | Total net value, in cents - PBM |
4031 | PBM Selected Operator Code (must be recorded for later sending in other transactions) |
4032 | Free data return field relating to PBM transactions. |
4033 | PBM document type (0 = CRM, 1 = CRO) |
4034 | Redemption Data - Bonus |
4039 | PBM Response Code (0 = Ok, <>0 = error) |
4040 | PBM Fractional Product (0 = no, 1 = yes) |
4041 | Patient ID PBM (-1 = others, 00 = holder, 01 = dependent) |
4043 | PBM ID Revenue (revenue registered by the company) |
4044 | Revenue item ID PBM (revenue item registered by the company) |
4045 | Recipe for continuous use (0 = no, 1 = yes) |
4046 | PBM Manipulated Product (active ingredients) |
4047 | PBM Manipulated Product Original Value |
4058 | Approved Product Value with Discount |
4076 | Store Identification |
4077 | Contains the FEPAS NSU (20 positions maximum) |
4095 | CPF/CNPJ of the Beneficiary |
4096 | CPF/CNPJ of the Sacador |
4097 | Payer's CPF/CNPJ |
4100 | Communication error (for example: timeout) The Buffer contains the Error code. |
Examples: | |
[TCP:R:10054] An existing connection was forced to be canceled by the remote host. | |
[TCP:C:10060:TO] A connection attempt failed because the connected component did not respond correctly after a period of time | |
or the established connection failed because the connected host did not respond. | |
4125 | Customer Coupon available, for reprinting or consultation, in the SiTef database |
4126 | Establishment Coupon available, for reprinting or consultation, in the SiTef database |
4127 | Number of days that coupons will be available in the SiTef database |
#
Event Table, also returned in TypeFieldDuring the transaction, CliSiTef may report the occurrence of certain events. These events are returned in the FieldType parameter of the ContinuaFuncaoSiTefInterativo or ContinuaFuncaoSiTefInterativoA routine, as shown in the table below.
FieldType | Description |
---|---|
5000 | Indicates that the library is waiting to read a card |
5001 | Indicates that the library is waiting for the user to enter the password |
5002 | Indicates that the library is waiting for the user to enter positive confirmation data |
5003 | Indicates that the library is waiting to read the single ticket |
5004 | Indicates that the library is waiting for the single ticket to be removed |
5005 | Indicates that the transaction has been completed |
5006 | Confirm Payee Data |
5007 | SiTef Connected |
5008 | SiTef Connecting |
5009 | Query OK |
5010 | Signature Harvest |
5011 | New Product Collection |
5012 | Confirm Operation |
5013 | Confirm Cancellation |
5014 | Confirm Total Value |
5015 | Single Ticket Recharge Completion |
5016 | Reserved |
5017 | Waiting for card reading |
5018 | Waiting to enter password on PinPad |
5019 | Waiting for chip processing |
5020 | Waiting for card removal |
5021 | Waiting for confirmation of operation |
5027 | Canceling card reading |
5028 | Canceling password entry on PinPad |
5029 | Cancelation of card processing with CHIP |
5030 | Card removal cancellation |
5031 | Operation confirmation cancellation |
5036 | Before reading the magnetic card |
5037 | Before reading the CHIP card |
5038 | Before removing the CHIP card |
5039 | Before collecting the password on the pinpad |
5040 | Before opening communication with the PinPad |
5041 | Before closing communication with the PinPad |
5042 | Should block resources for PinPad |
5043 | Must release resources for PinPad |
5044 | After opening communication with PinPad |
5049 | Timeout with SiTef |
5050 | Update of tables for offline transactions. |
The content of this field varies depending on the transaction being carried out. | |
5051 | Indicates that you have collected a password on the pinpad. |
5052 | Indicates that it processed a chip card (GoOnChip) |
5053 | Indicates that you removed the chip card from the pinpad reader |
5054 | Indicates that sensitive data has been delivered (Specific for POS PAX) |
5055 | Indicates that tables are being updated in pinpad (Event returned for each record sent to pinpad) |
5056 | Indicates that you are sending files to Sitef |
5057 | Indicates the start of sending fields with sensitive data. |
5058 | Indicates end of sending fields with sensitive data |
5059 | Indicates that it is waiting for card reading (Mode 29) |
5060 | Reserved |
5061 | Reserved |
5062 | Indicates start of sending fields related to products (fuels, medicines, etc.) |
5063 | Indicates end of sending fields related to products (fuels, medicines, etc.) |
5074 | Indicates that a paper signature must be obtained when paying with a chip card |
5501 | Start of a Banking Correspondent type transaction. |
#
Payment confirmation or notRoutine called by the application to close the transactional cycle. She must be activated at the moment the tax receipt is closed and receives as parameters an indicator of whether the transaction was completed or whether it should be reversed. It also receives the fields that allow identify the transaction being finalized.
This function should also be used to undo a transaction interrupted by a power outage or any other problem in the application.
This routine confirms or cancels ALL payments linked to the same Tax Coupon Number and same Tax Date passed as parameter.
void FinalizaFuncaoSiTefInterativo (Confirma, TaxCoupon, TaxDate, TaxTime, ParamAdic);
ASCII Interface
void FinalizaFuncaoSiTefInterativoA (Confirma, TaxCoupon, TaxDate, TaxTime, ParamAdic);
Parameter | Type | Standard interface | ASCII interface | Description |
---|---|---|---|---|
Result | Output, by value | Not used | Fixed 6 | Contains the result of the response to the routine call. |
Confirm | Entry, by value | short | Fixed 1 | Indicates whether the transaction should be confirmed (1) or reversed (0) |
TaxCoupon | Input, by value | char * | Max. 20 | Tax Coupon number corresponding to the sale |
TaxDate | Input, by value | char * | Fixed 8 | Fiscal Date in AAAAMMDD format |
TaxTime | Input, by value | char * | Fixed 6 | Fiscal Time in format HHMMSS[1] |
ParamAdic | Input, by value | char * | Variable | Additional parameters, described below. If not used, automation must pass empty/NULL. |
[1] The HoraFiscal parameter is not used as a “key” for a tax document.
Example: A sale made by the function IniciaFuncaoSiTefInterativo, passing as parameters Function 0, Value 10.00, Coupon Tax 12345, Tax Date 20150101, Tax Time 121500. When confirming the transaction, the function FinalizaFuncaoSiTefInterativo must be called using the following parameters: Confirm 1, Tax Coupon 12345, Tax Date 20150101, Tax Time 121500, ParamAdic as empty/NULL as there is no additional data.
The ParamAdic parameter can be used in the following situations:
#
Completion of individual payments in the same tax couponFor each payment, CliSiTef returns in FieldType 161 (Number of payment on the coupon) an index/counter corresponding to the payment.
To (non-)confirm a specific payment within a tax coupon, the automation must inform this value to the routine FinalizaFuncaoSiTefInterativo as an additional parameter:
{NumeroPagamentoCupom=XXX}
where XXX is the payment number, returned previously in the FieldType 161.
#
Completion of payments for a given network in the same tax couponTo (non) confirm payments relating to a certain authorizing network, you must go through the routine FinalizaFuncaoSiTefInterativo the following additional parameter:
{RedeConfirmacao=XXX}
where XXX is the authorizing network number.
#
Attach data relating to payment methods for a transaction (NFPAG)To attach data relating to payment methods for a transaction, the fields must be captured: 161 (Payment number on the coupon), 730 (Maximum number of payment methods), 731 (Types of payment enabled) and 732 (Data to be collected for the type of payment), returned in the transaction flow, and pass it to the routine FinalizeFuncaoSiTefInterativo through additional parameters NumeroPagamentoNFPAG and NFPAG.
{NumeroPagamentoNFPAG=X}{NFPAG=Y}
Where:
X = Payment number in the coupon (Field 161)
Y = Data relating to payment methods (See description below)
Note: In this case, all payments in the same tax coupon will all be confirmed or unconfirmed.
NFPAG parameter description:
{NFPAG=FPAG1;FPAG2; FPAG3;...;FPAGn;}
Where FPAGn has the following content:
If there is data to be collected
TypeN:ValueN:CollectionIDN1:CollectionDataN1-CollectionIDN2:CollectionDataN2-...-CollectionIDNn:CollectionDataNn
If there is no data to be collected
TypeN:ValueN
=> TypeN: indicates the payment method used (Field 731, as per table below)
=> ValorN: indicates the value used with this payment method, with two decimal places, without the comma
=> IDCollectionNn: indicates the ID of the field that was collected by the POS (Field 732, as shown in the table below)
=> DataCollectionNn: indicates the content collected by the POS for this field
Note: The consistency of the values (sum of the various forms of payment used, totaling the value of the transaction carried out) must be made by the POS.
Example:
At the end of a transaction worth R\$ 50.00, returning the field 730 equals 2 and the fields 731 and 732 indicating that you accept the following payment methods: Cash (no data to be collected); TEF Debit (needs to send the Destination Network, the Host NSU, the Host Date and Origin Code of the TEF) and TEF Credit transaction. O field 730 equal to 2, indicates that in the NFPAG parameter, sent a maximum of 2 payment methods.
The POS, in turn, upon confirmation of the transaction, will send the payment forms payment that were actually used: R\$ 30.00 was paid in cash and R\$ 20.00 were paid with a Redecard debit card (Rede Destination = 5; Host NSU = 123456789; Host Date = 12/15/2008; Code Source = 000000000000001).
{NFPAG=00:3000;02:2000:03:5-07:123456789-08:15122008-09:000000000000001;}
Note: All payment methods must be separated by ; (semicolon), including the last one must be ended by ;
FieldType | Description |
---|---|
730 | Maximum number of payment methods to be sent using the NFPAG parameter. 0 for no limit. |
731 | Payment Type Enabled, repeats “n” times, where “n” is the number of payment methods enabled: |
· 00: Money | |
· 01: Check | |
· 02: TEF Debit | |
· 03: TEF Credit | |
· 04: Carrefour Gift Card (Prepaid) | |
· 05: Carrefour Bonus Card | |
· 06: Carrefour Card | |
· 07: Withdrawal for payment | |
· 08: Loot | |
· 09: DCC Carrefour | |
· 10: Electronic Ticket | |
· 11: Paper Ticket | |
· 12: Digital Wallet | |
· 13: Pix | |
· 50: TEF Card | |
· 77: Reserved Field | |
· 98: No Payment | |
· 99: Other Forms | |
732 | Data to be sent for the Payment Type (Field 731) previously returned, repeats “n” times, where “n” is the number of data to be sent for the respective Payment Type: |
· 00: Reserved Field | |
· 01: Check Entry Type | |
· o ‘0’: CMC-7 reading | |
· o ‘1’: typing the first line of the check | |
· o ‘2’: CMC-7 typing | |
· 02: Check Data | |
· the CMC-7 read or typed, or | |
· o Typing the first line of the check, with the following format: | |
· o Clearing (3), Bank (3), Agency (4), C1 (1), Current Account (10), C2 (1), Check Number (6) and C3 (1), in that order. | |
· 03: Destination Network (Field 131) | |
Identification of the authorizer of the TEF transaction. | |
· 04: SiTef NSU of the TEF transaction (Field 133) | |
Identification of the TEF transaction in SiTef. | |
· 05: SiTef date of the TEF transaction | |
Not used (Future use). | |
· 06: Company Code of the TEF transaction | |
SiTef code for the Company used in the TEF transaction. | |
· 07: TEF transaction Host NSU (Field 134) | |
Identification of the TEF transaction on the Host. | |
· 08: Host Date of the EFT transaction (Field 105) | |
Date of the EFT transaction on the Host, in DDMYYY format. | |
· 09: Origin Code of the TEF transaction (Field 157) | |
Establishment Code of the TEF transaction. | |
· 10: Service Z of the TEF transaction (Field 1) | |
Value of service Z returned by the Sit module responsible for the TEF transaction. | |
o Pass only the confirmation data, removing the data from the SiTef index and SiTef address if any, follow the format of this field: | |
DataConfirmation;SiTefIndex;SiTefAddress | |
Another option would be to use the following configuration in the CliSiTef.ini file: | |
[General] | |
DevolveConfirmacaoExtendida=0 | |
Using this configuration, even in the case of multiple SiTef, only Service Z will be returned in field 1 of the CliSiTef, this way it is also not necessary to change the value of the field when placing the NFPAG prefix. | |
· 11: Authorization Code for the TEF transaction (Field 135) | |
Host Authorization Code for the EFT transaction. | |
· 12: Check Amount | |
Total Check Amount. The same check can be used to pay more than one bill | |
· 13: Destination Network – Complement | |
ID 03 complement (see description below) | |
· 14: Card Flag | |
Flag of the Card used in the TEF transaction | |
· 15: Payment Type | |
‘00’ – the view | |
‘01’ – Pre-dated | |
‘02’ – Paid in installments by the establishment | |
‘03’ - Paid in installments by the administrator | |
· 16: Digital Wallet Id | |
(returns in field 106 of Sale with Digital Wallet) |
The ID 13 field, unlike the others, does not indicate a field that must be collected, it works only as a complement to the ID field 03, sending the list of permitted Destination Networks, in the following format:
IDColetaNn(Network1,Network2,...,NetworkN)
In other words, if only the ID 03 field is present, it must be collected the Destination Network, without any restrictions regarding the Networks that can pay the Recharge. However, if ID fields 03 and 13 are present, the The first indicates that the Destination Network must be collected, while the second indicates which Destination Networks are allowed for payment of the Recharge.
Furthermore, as the collection was indicated by ID 03, the POS must send the Destination Network to the Sit also through this ID (and not through ID 13).
#
Query transactions pending confirmation on the terminalIn the event of a power outage, situations may occur in which the automation need to query transactions that are pending confirmation. This that is, transactions that need to be confirmed (or not) via FinalizaFuncaoSiTefInterativo.
#
Number of transactions pending confirmation on the terminalThis function is used by the terminal to know how many transactions were carried out in the event of a power outage and are pending an automation action, via function call FinalizaFuncaoSiTefInterativo.
int ObtemQuantidadeTransacoesPendentes (TaxDate, TaxCoupon)
ASCII Interface
ObtemQuantidadeTransacoesPendentesA (Result, TaxDate, TaxCoupon)
Parameter | Type | Standard interface | ASCII interface | Description |
---|---|---|---|---|
Result | Output, by value | Not used | Fixed 6 | Contains the result of the response to the routine call. |
TaxDate | Input, by value | char * | Fixed 8 | Fiscal Date in YYYYMMDD format |
TaxCoupon | Input, by value | char * | Max. 20 | Tax Coupon number corresponding to the sale |
The routine returns the number of pending transactions for the document informed tax, or -13 if the document was not found Supervisor.
#
Query pending transactions on the terminalIt is possible to consult all pending confirmation information from the terminal.
This functionality is initiated through the function IniciaFuncaoSiTefInterativo with the Function parameter (first parameter routine input) assuming the value 130 and the other parameters with their usual values.
In particular, this function will disregard parameters relating to the fiscal document.
IMPORTANT: This routine only starts the request process. If the return is 10000, the process must continue through the routine ContinuaFuncaoSiTefInterativo until it returns a final result other than 10000.
The following fields will be returned for automation.
FieldType | Description |
---|---|
210 | Total number of pending issues, listed in the data blocks below |
160 | Tax Coupon |
161 | Payment Coupon Identification Number |
163 | Tax Date |
164 | Tax Time |
211 | Original “Function” Code |
1319 | Original transaction value |
#
Query pending transactions in a specific tax documentIn a similar way to the previous item, it is possible to consult the data referring to a single tax document.
To do so, use the function IniciaFuncaoSiTefInterativo by passing the Function parameter the value 131 and the other parameters with their values usual. In this case, the parameters relating to the fiscal document.
The fields returned are identical to the previous item.
#
PinPad Functions#
PinPad presence testYou can check the presence of the PinPad device and whether it is operational. To this end, logical opening and opening commands are sent closure of the communication channel.
There are two functions for this purpose.
The original function has the following format:
int VerificaPresencaPinPad (void)
Starting with version 4.0.114.4, a second function was created, where sent fewer commands to the pinpad, and without the pinpad display on/off.
int KeepAlivePinPad (void)
Both routines have no input parameters, and can return the following values:
1 - There is an operational PinPad connected to the computer;
0 - There is no PinPad connected to the computer;
-1 - PinPad access library not found;
another number - errors detected internally by the routine or by the PinPad access library
#
Set permanent message for the PinPadAllows you to define a permanent message to be displayed on the PinPad during the time it is not in use. The activation format routine is as follows:
int EscreveMensagemPermanentePinPad (Message)
Interface ASCII
EscreveMensagemPermanentePinPadA (Resultado, Message)
Parameter | Type | Standard interface | ASCII interface | Description |
---|---|---|---|---|
Result | Output, by value | Not used | Fixed 6 | Contains the result of the response to the routine call. |
Message | Input, by value | char * | Variable | Message to be displayed on the PinPad display. It is recommended that it has a maximum of 32 characters in order to be compatible with the PinPads currently in the field. |
To erase the message and leave the display blank, simply call this function passing the empty Message field.
The application, if desired, can include the character '|' (Vertical bar) to indicate a line change.
#
Reading track 3 of the cardThis function allows the app to capture a magnetic 3 track generic.
Note that the PinPad must support reading track 3.
It should not be used to process payment transactions but only for reading internal cards of the commercial establishment (e.g. supervisor card). The activation format is as follows:
int LeTrilha3 (Message)
Parameter | Type | Standard interface | ASCII interface | Description |
---|---|---|---|---|
Result | Output, by value | Not used | Fixed 6 | Contains the result of the response to the routine call. |
Message | Input, by value | char * | Variable | Message to be displayed on the PinPad display. |
Upon return, the routine returns the same values as the payment. The application obtains the tracks by calling the continuation of the iterative process.
IMPORTANT: This function NOT can be used during execution of the ContinuaFuncaoSiTefInterativo loop.
#
Card reading - secure capture routinesThe following routines have their operation conditioned by two prerequisites:
1) Configuration of the .cha key file on the SiTef server. If the configuration is not done, these functions return the error 12 (SAFE MODE NOT ACTIVE).
2) After installing the .cha key file on the server SiTef, Automation must, at least once, communicate with the SiTef server. This is necessary for the POS station to make the download of data that allows the execution of the Reading routines of the secure card). To do this, perform a Communication Test or a financial transaction.
int LeCartaoSeguro (Message)
ASCII Interface
LeCartaoSeguroA (Result, Message)
Parameter | Type | Standard interface | ASCII interface | Description |
---|---|---|---|---|
Result | Output, by value | Not used | Fixed 6 | Contains the result of the response to the routine call. |
Message | Input, by value | char * | Variable | Message to be displayed on the PinPad display. |
Upon return, the routine returns the same values as the payment routine. The application obtains the tracks by calling the continuation function of the iterative process.
The fields returned in the iterative process are those referring to the fields sensitive (2021 to 2046).
Observation:
These functions are not available for Mobile environments. Because difficulties in using function entrypoints, and aiming to facilitate its implementation, "Function" 430 was made available, which is an alternative to using the "LeCartaoSeguro" function.
This "Function" follows the flow of a "Managerial" transaction and is accessed through IniciaFuncaoSiTefInterativo (See item "5.2 - Start of Payment or Management transaction").
• To use "Function" 430, the "Message" parameter to be displayed on the pinpad display, Commercial Automation will be requested in the flow of transaction through command 29 (See item "5.3.1 - Table of transaction codes Command"). If not provided by Automation, the default message "SPIN THE CARD".
• To read the card using function 430, the parameter was included additional "SementeHash" (not used when the LeCartaoSeguro function is call directly) which is optional and will be requested in the call flow. transaction. If the "SementeHash" parameter is used, optionally can be provided through the "ParamAdic" parameter in the call function IniciaFuncaoSiTefInterativo, in this case, it will not be requested in the transaction flow.
If requested in the transaction flow through command 29 and the parameter is not used, return the empty field.
If this parameter is used, the data returned to Automation Commercial will be hash generated from the informed seed (Type field 203x. See "Fields that can be returned" table below).
Parameter format in "ParamAdic":
{SementeHash=XX...XX}
Where: XX...XX: Maximum 64 characters.
IMPORTANT: These functions cannot be used during execution of the ContinuaFuncaoSiTefInterativo loop. For this type of In this situation, there are versions that provide direct access to the reader card described below.
int LeCartaoDiretoSeguro (Message, TypeCampoTrilha1, Trail1, TypeCampoTrilha2, Trail2, Timeout, TestCancellation)
ASCII Interface
LeCartaoDiretoSeguroA (Result, Message, TypeCampoTrilha1, Track1, TypeCampoTrilha2, Track2, Timeout)
Parameter | Type | Standard interface | ASCII interface | Description |
---|---|---|---|---|
Result | Output, by value | Not used | Fixed 6 | Contains the result of the response to the routine call. |
Message | Input, by value | char * | Variable | Message to be displayed on the PinPad display. |
TypeFieldTrack1 | Output, by value | char * | Fixed 12 | Indicates the type of field that was returned in track 1, whether it is masked, encrypted or Hashed. |
Track1 | Output, by value | char * | Max. 128 | The return contains, if any, Track 1 read |
TypeFieldTrack2 | Output, by value | char * | Fixed 12 | Indicates the type of field that was returned in track 2, whether it is masked, encrypted or Hashed. |
Track2 | Output, by value | char * | Max. 80 | The return contains, if any, Track 2 read |
Timeout | Input, by value | short | Fixed 6 | Defines the maximum waiting time for the card to be swiped in seconds. If zero, wait until the card is swiped |
TestCancellation | Entry, by value | Routine | Not used | Automation application routine that returns 0 if it is to continue waiting for the card and 1 if it must interrupt the process of waiting for the card to be swiped |
Upon return, the routine returns the value 0 (zero) if it was executed correctly and a non-zero value in case of error or interruption.
For this specific routine, the error codes returned are:
Value | Description |
---|---|
0 | No error occurred |
1 | Insufficient output field |
2 | BIN NOT ENABLED |
3 | Invalid CNPJ |
4 | Expired access key |
5 | Invalid version |
6 | Invalid encryption key |
7 | Unencrypted data with the key provided as a parameter: decryption resulted in a card number that is not made up of just digits. |
8 | Invalid input data |
The fields TipoCampoTrilha1 and TipoCampoTrilha2 indicate the type of field returned, respecting the value established for sensitive fields, with 202x for masked open fields, 203x for the hash of the fields, 204x for encrypted fields and 205x.
Fields that can be returned:
FieldType | Description |
---|---|
202x | Open fields, masked. |
203x | Dynamic hash of fields |
204x | Encrypted fields |
205x | Fixed hash of fields * |
Where x is represented by the table below:
x | Field |
---|---|
1 | Card PAN |
2 | Card expiration date (AAMM) |
3 | Name of customer/carrier |
4 | Track 1 |
5 | Track 2 |
6 | Track 3 |
* New implementations must use the 203x field, as the field 205x returns an encrypted hash using the encryption key inserted by the customer in the .cha file. This form of use (205x) exists just for compatibility, as the ideal is to use Hash with Salt (Seed - 203x) since the information used to generate the hash is hidden only within the applications that use it, making the process of reversing the hash until obtaining the original data practically impossible to execute by brute force.
IMPORTANT: These functions cannot be used during execution of the ContinuaFuncaoSiTefInterativo loop. For this type of In this situation, there are versions that provide direct access to the reader card described below.
int LeCartaoDiretoSeguroEx (Message, DataOut, TamDadosOut, Timeout, TestCancellation)
ASCII Interface
LeCartaoDiretoSeguroExA (Result, Message, DataOut, TamDadosOut, Timeout)
Parameter | Type | Standard interface | ASCII interface | Description |
---|---|---|---|---|
Result | Output, by value | Not used | Fixed 6 | Contains the result of the response to the routine call. |
Message | Input, by value | char * | Variable | Message to be displayed on the PinPad display. |
Output Data | Output, by value | char * | Variable | Returns the same data from the LeCartaoDiretoSeguro routine, concatenated in TLV format, where T corresponds to the field type (size 5), L is the field size (size 3) and V is the field (field size). |
OutDataTam | Input, by value | char * | Fixed 6 | OutData buffer size. |
Timeout | Input, by value | short | Fixed 6 | Defines the maximum waiting time for the card to be swiped in seconds. If zero, wait until the card is swiped |
TestCancellation | Entry, by value | Routine | Not used | Automation application routine that returns 0 if it is to continue waiting for the card and 1 if it must interrupt the process of waiting for the card to be swiped |
int LeTrilhaChipInterativo (Modality)
LeTrilhaChipInterativoEx (Modality, ParamAdic)
ASCII Interface
LeTrilhaChipInterativoA (Result, Modality)
Parameter | Type | Standard Interface | ASCII Interface | Description |
---|---|---|---|---|
Result | Output, by value | Not used | Fixed 6 | Contains the result of the response to the routine call. |
Modality | Input, by value | Int | Fixed | Selects the type of payment: |
2: Debit | ||||
3: Credit | ||||
ParamAdic | Input, by value | char * | Variable | Additional parameters, such as {SementeHash=XXX..}. It is optional and can be empty |
These functions work in the same way as LeCartaoSeguro/LeCartaoSeguroA, with the difference that they accept chip cards.
Observation:
These functions, "LeTrilhaChipInterativo", "LeTrilhaChipInterativoEx" and "LeTrilhaChipInterativoA" are not exported to the Mobile environment. Due to difficulties in using function entrypoints, in this environment, and aiming to facilitate its implementation, the "Function" 431 for access to the "LeTrilhaChipInterativoEx" function. It is "Function" follows the flow of a "Managerial" transaction and is accessed through of IniciaFuncaoSiTefInterativo (See item "3.2 Start of transaction Payment or Management").
• To use "Function" 431, the "Modality" parameter (Type of payment) and "ParamAdic"(SementeHash), will be requested to Automation Commercial in the transaction flow through command 29 (See item 3.3.1 Command code table).
• If the "SementeHash" parameter is used, it can optionally be provided through the "ParamAdic" parameter in the function call IniciaFuncaoSiTefInterativo, in this case, you will not be requested in the flow of transaction. If requested in the transaction flow through command 29 and the parameter is not used, return empty field.
If this parameter is used, the data returned to Automation Commercial will be hash generated from the informed seed (Type field 203x. See "Fields that can be returned" table above).
#
Password readingThis function allows the application to capture a password from a PinPad card customer of the commercial establishment itself (card owner). It must not, under any circumstances, be used to capture traditional card passwords. For more details, see the document "Access to Customer Password for Proprietary Card CliSiTef.doc".
int LeSenhaInterativo (SecurityKey)
ASCII Interface
LeSenhaInterativoA (Result, SecurityKey)
Parameter | Type | Standard Interface | ASCII Interface | Description |
---|---|---|---|---|
Result | Output, by value | Not used | Fixed 6 | Contains the result of the response to the routine call. |
SecurityKey | Input, by value | char * | Fixed 64 | Data generated by a security library provided by Software Express to enable the capture of the customer's password. In this case, CliSiTef may interact with SiTef to obtain or validate the security data necessary for the capture |
Upon return, the routine returns the same values as the payment routine. The application obtains the password by calling the continuation function of the iterative process.
IMPORTANT: These functions cannot be used during execution of the ContinuaFuncaoSiTefInterativo loop. For this type of In this situation, there are versions that provide direct access to the reader passwords described below.
int LeSenhaDireto (SecurityKey, CustomerPassword)
ASCII Interface
LeSenhaDiretoA (Result, SecurityKey, CustomerPassword)
Parameter | Type | Standard Interface | ASCII Interface | Description |
---|---|---|---|---|
Result | Output, by value | Not used | Fixed 6 | Contains the result of the response to the routine call. |
SecurityKey | Input, by value | char * | Fixed 64 | Data generated by a security library provided by Software Express to enable the capture of the customer's password. In this case, CliSiTef may interact with SiTef to obtain or validate the security data necessary for the capture |
Password | Output, by value | char * | Fixed 20 | Client password, in encrypted format, which must be passed to a custom routine per client for decryption |
Upon return, the routine returns the value 0 (zero) if it was executed correctly and a non-zero value in case of error or cancellation by the user.
#
Reading Confirmation by Customer on PinPadThese functions allow the application to request confirmation on the PinPad. The activation format is as follows:
int LeSimNaoPinPad (Message)
ASCII Interface
LeSimNaoPinPadA (Result, Message)
Parameter | Type | Standard Interface | ASCII Interface | Description |
---|---|---|---|---|
Result | Output, by value | Not used | Fixed 6 | Contains the result of the response to the routine call. |
Message | Input, by value | char * | Variable | Message to be displayed on the PinPad display. |
Upon return, the routine returns 0 if the client pressed the key Cancellation, 1 if he pressed the Confirm key and another value in case of error when accessing the PinPad.
Note that this function is not iterative, i.e., execution control only returns to the application after pressing the key.
#
Sets a momentary message for the PinPadAllows you to define a momentary message to be displayed on the PinPad display. The routine activation format is:
int EscreveMensagemPinPad (Message)
Parameter | Type | Default Interface | Description |
---|---|---|---|
Message | Input, by value | char * | Message to be displayed on the PinPad display. It is recommended that it has a maximum of 32 characters in order to be compatible with PinPads currently in the field. |
To erase the message and leave the display blank, simply call this function passing the empty Message field.
The application, if desired, can include the character '\r' (carriage return) to indicate a newline.
#
Reading special PinPad keysThis function is used to wait for a key to be pressed on the pinpad, returning its corresponding code. The activation format of the routine is:
int LeTeclaPinPad (void)
Upon return, the routine returns:
Value | Key | Description |
---|---|---|
0 | [OK] or [ENTER] | Press the OK or ENTER key |
4 | [F1] | Pressed the F1 key |
5 | [F2] | Pressed the F2 key |
6 | [F3] | Pressed the F3 key |
7 | [F4] | Pressed the F4 key |
8 | [CLEAR] | CLEAN key pressed |
13 | [CANCEL] | CANCEL key pressed |
-43 | Any other key or an error occurred in the process. | Problem executing one of the routines on the pinpad. |
For security reasons, this command does not return numeric keys, and pressing these keys is simply ignored by the pinpad during command execution.
Note that this function is not iterative, i.e., execution control only returns to the application after pressing a key.
Note about using this function to obtain the F1, F2, F3 and F4: there are some pinpads on the market that do not have the F1, F2, F3 keys and F4. Therefore, when using this function, you must leave a plan B for these cases.
#
Banking Correspondent (Bill Payment)This function allows the automation application to accept payment for miscellaneous accounts in accordance with the contract signed between it and a Bank Corresponding. The activation format for this functionality is as follows:
int CorrespondenteBancarioSiTefInterativo (TaxCoupon, TaxDate, Time, Operator, ParamAdic)
Interface ASCII
CorrespondenteBancarioSiTefInterativoA (Result, TaxCoupon, TaxDate, Time, Operator, ParamAdic)
Where the parameters have the same function already described for Payment.
The operating logic of this function is the same as when paying a purchase made by the customer, that is, you must call the function ContinuaFuncaoSiTefInterativo until the result is different from 10000.
This function, given the diversity of products offered by Banks Correspondents can even execute a TEF operation to complete the payment of a bill.
Note that the return fields 600 to 604 return several times, once for each title or agreement paid, in the case of payment in batch. Field 607 indicates which payment index (sequence) to which refer to the fields 600 to 604 that will follow.
As previously described, for the Banking Correspondent the vouchers returned in fields type 121 and 122 must be printed at the time they are made available for automation and continuation of the iterative process should proceed normally if not printing error occurs or interrupted with -1 otherwise.
In ParamAdic you can pass: {PortaPinPadCB=<port>}, where <port> indicates the port to which the specific pinpad is connected to Banking Correspondent transactions: balance consultation, withdrawal and recharge Bradesco cell phone.
It is worth remembering that the pinpad configured {PortaPinPadCB=<port>} meets only for Banking Correspondents, not for TEFs.
To meet the need for some "Authorizing" networks, which require information about the Electronic Tax Document issued by "Commercial Automations", 02 "functionalities" were defined to pass the necessary data in the "ParamAdic" parameter (see details in item 5.7).
#
Checking the integrity of a barcodeAllows, in the manual collection of fields present in a bar code, for the application to validate as the fields are being entered, in order to alert the operator in advance and allow it corrects the error. The routine activation format is as follows:
int ValidaCamPoCodigoEmBarras (Data, Type)
ASCII Interface
ValidaCampoCodigoEmBarrasA (Result, Data, Type)
Parameter | Type | Standard interface | ASCII interface | Description |
---|---|---|---|---|
Result | Output, by value | Not used | Fixed 6 | Contains the result of the response to the routine call. |
Data | Input, by value | char * | Variable | Message to be displayed on the PinPad display. |
Type | Output, by reference | short * | Fixed 6 | Informs the type of document collected according to the following encoding: |
-1 → Unable to set type yet | ||||
0 → Collection | ||||
1 → Title |
Recommendation:
It is recommended that the terminal application, once identified that the document will be typed, open simulated collection fields for those present in the documents to be paid. To do this, it will need to identify whether it is a Compensation Sheet/Title/Block or Collection/Taxes. This identification can be done through a ask the operator or through the routine described here.
If the user opts for automatic recognition he must open a field as if it were a Collection field and, with each digit provided by the operator, pass the digits already supplied to the routine. That procedure must be done until the routine returns if the document in question is a Title or Collection. At that moment the application no longer needs to call the routine for each digit provided and If necessary, modify the formatting of the capture fields.
In addition to identifying the type of document, the routine ensures consistency of check digits, returning to the application if there is an error and where it is located. The application can call the routine by passing the fields as they are being collected or at the end of collection, where a global analysis of the entered content will be carried out. If the call is during typing, the correct points are:
- Collection: each of the 4 typing blocks
- Titles: each group of two typing blocks
Upon return, the routine returns 0 if everything is correct so far, -1 if it is an unrecognized barcode or a number from 1 to 4 indicating which field is incorrect or even the value 5 to indicate that the number as a whole is not correct.
Below we exemplify how the terminal application should proceed, in the most generic way possible nowadays, to collect a document. In the example we will use a title and let the automation be informed which is this type of document. The document that will be used is the Following:
23790.09505.91211.369656.04025.039209.1.17690000005625
Field opened by automation
2
After typing the first number, call the routine passing "2" as parameter. Upon return, the routine returned the result 0 and Type = 0 (fictitious because at this moment, for the current configuration of codes in bar, she would have already made the identification)
23
After typing the first number, call the routine passing "23" as parameter. Upon return, the routine returned the result 0 and Type = 1
23790 09505
The automation re-presents the fields already knowing that it is a title. Only After typing the first group of numbers, it calls the routine passing "2379009505" as a parameter. Upon return, the routine continues return Type = 1. The result may be 0, indicating that the block is correct or 1 indicating that it is wrong.
23790 09505 91211 369656
The automation continues to collect the digits and only after typing the second group of numbers she calls the routine passing "237900950591211369656" as parameter. Upon return, the routine continues to return Type = 1. The result may be 0, indicating that the blocks are correct or 1 or 2 indicating that the first or second block is wrong.
23790 09505 91211 369656 04025 039209 1 17690000005625
The automation continues to collect the digits by calling the routine at the end of the third block with the data 237900950591211369656 and at the end of the fourth block with all the entered data. Upon return, the routine continues to return Type = 1 and the result will reflect the error situation or not of the blocks passed as a parameter. In particular, if you return the code 5 is because there is one of the blocks (it is not possible to identify which them) with error.
Finally, automation can also, for the purpose of consistency, bar code choose to check them only at the end of typing all fields. In this case, the routine will return 1, 2, 3 or 4 in that order priority if it finds one or more blocks with an error and 5 in the situation of the internal blocks are right, but the number as a whole has some error.
#
Getting VersionThis function is used by the terminal to obtain the CliSiTef versions and CliSiTefI.
int ObtemVersao (VersaoCliSiTef,VersaoCliSiTefI)
ASCII Interface
ObtemVersaoA (Result, VersionCliSiTef, VersionCliSiTefI)
Parameter | Type | Standard interface | ASCII interface | Description |
---|---|---|---|---|
Result | Output, by value | Not used | Fixed 6 | Contains the result of the response to the routine call. |
VersionCliSiTef | Output, by value | char * | Max. 64 | The return contains the CliSiTef version |
VersionCliSiTefI | Output, by value | char * | Max. 64 | The return contains, if any, the version of CliSiTefI |
Upon return, the routine returns 0 when it was executed successfully and different in case of error.
#
Sending pending messagesIn situations of communication failure with the SiTef server, the CliSiTef will automatically send any remaining data (e.g. example, commit, uncommit and undo data) only in the next POS transaction.
However, it may take some time for the next transaction to start at the station.
At times when the POS is in the rest or "idle" state, the Automation can use the following routine to force the library to download confirmation, unconfirmation and undo messages to the SiTef server.
int DescarregaMensagens (void)
Upon return, the routine returns 0 if it managed to download all messages and non-zero if an error occurs making it impossible to sending them.
#
PinPad InformationThere are two ways to obtain basic information from the connected PinPad in the POS, such as serial number, model, etc.
ObtemInformacoesPinPad -- direct function.
Through function code passed to IniciaFuncaoSiTefInterativo, and consequent iterative process.
The first way is using the function below.
int ObtemInformacoesPinPad (InfoPinPad)
Parameter | Type | Default Interface | Description |
---|---|---|---|
InfoPinPad | Output, by value | char * | In return it contains the PinPad information |
If successful, data will be returned in the following format:
2 numeric characters that indicate the information obtained:
01 for Manufacturer Name,
02 for Hardware Model/Version,
03 for Basic Software/Firmware Version,
04 Shared specification version
05 for Basic Application Version,
06 for Serial Number.
3 numeric characters that indicate the size in characters of the information.
N (according to size above) alphanumeric characters with information.
Example:
01006GERTEC02010PPC900;3MB030190077_0071_0080_0106040041.0605013001.23 100820060160450805232030714
Manufacturer name: GERTEC
Hardware model/version: PPC900;3MB
Basic software/firmware version: 0077_0071_0080_0106
Specification version: 1.06
Basic application version: 001.23 100820
Serial number: 0450805232030714
Note: the Buffer that will receive the PinPad information must have minimum size of 256 characters, already providing for the possibility of being new pinpad information included.
In the second way, the automation must pass the function code 775 to IniciaFuncaoSiTefInterativo, and continue in the collection flow as if it were a transaction.
During the collection flow, the following fields will be returned to the automation, normally by command 0 (zero).
FieldType | Description |
---|---|
2450 | Manufacturer name |
2451 | Hardware model/version |
2452 | Basic software/firmware version |
2453 | Specification version |
2454 | Basic application version |
2455 | PinPad serial number |
#
Loading Tables on PinPadTable loading in pinpad is called the process where the loading is done of application information and chip parameters on the pinpad.
This process makes it possible to read a chip card during transactions.
Normally CliSiTef does this operation automatically, under demand, upon realizing that a new load of parameters is necessary. There are several reasons for this, for example changing the pinpad at the POS, or a change in the parameters of the establishment on the authorizer.
Automation can command a new load of tables on the pinpad. Per For example, to reduce the chance of a load on the first sale of the day, the Automation can start a charge when in idle state (idle) and, in this way, reduce the time for the first service.
Note that, if there is a change of parameters by the authorizer, this change will reflect a new load of tables during the day.
#
With changes in AutomationFor the automation to control the loading of tables on the pinpad, three function codes are offered that must be used in the StartSiTefInteractive Function.
Function Code | Description |
---|---|
770 | Loading tables on the pinpad |
771 | Forced loading of tables on pinpad (Local) |
772 | Forced loading of tables on the pinpad (SiTef) |
Function 770 loads tables onto the pinpad if it is necessary. That is, if the SiTef server data is already loaded on the pinpad, no loading will be done.
Function 771 forces tables to be loaded onto the pinpad according to the tables previously downloaded from the SiTef server and stored locally at the POS.
Function 772 causes clisitef to delete local data from the POS, downloading a new photograph of these parameters from SiTef, and then loads tables on the pinpad.
#
No change to AutomationFor automation to benefit from table loading without having to program IniciaFuncaoSiTefInterativo calls with the three Function codes 770, 771 and 772 have been included in the menu CliSiTef Administrative, three equivalent transactions.
In the example above,
• option 11 is equivalent to Function 770;
• option 12 is equivalent to Function 771;
• option 13 is equivalent to Function 772.
To enable the Table Load transaction on the pinpad, you must include in the [General] section the key TransacoesAdicionaisHabilitadas o value 3624.
To enable the Forced table load transaction on the pinpad (Local), it is necessary to include the key in the [General] section TransacoesAdicionaisHabilitadas the value 3625.
The Forced table load transaction on the pinpad (SiTef) is enabled by default, with the value 3626.
[General]
TransacoesAdicionaisHabilitadas=3624;3625
#
CliSiTef.ini or CLSIT settings fileCliSiTef uses a file in .ini format, in order to define previously determined settings on the station.
This file is called CliSiTef.ini, and must be placed in the same CliSiTef library folder.
On POS equipment and mobile platforms (Android and IOS), the configuration used is CLSIT. Throughout this document, all mentions to CliSiTef.ini should be understood as CLSIT when dealing with these environments.
Below we will describe some macro functionalities present in this file.
#
PinPad Configuration#
Port configurationThe PinPad serial/usb port is configured in the PinPadShared section, Port field.
[PinPadShared]
Porta=<PORT>
In Windows, you must use the serial/usb port number. Per example: 12
In Linux, you must indicate the full path of the device. For example: /dev/ttyS1 or /dev/ttyACM0
As of CliSiTef version 4.0.111.3 for Windows and 4.0.111.18 for Linux, you can use the 'AUTO_USB' value to identify automatically port a USB pinpad.
[PinPadShared]
Porta=AUTO_USB
Note: the above configuration is only valid for the Windows platform 32 and Linux 32 (starting with kernel 2.6), in the versions mentioned above.
Pinpads that support the AUTO_USB configuration in a WINDOWS environment:
Manufacturer/Model | CliSiTef Minimum Version |
---|---|
Gertec PPC900, PPC910, PPC920 e PPC930 | 4.0.111.3 |
Ingenico iCT2xx | 4.0.111.3 |
Ingenico iHT1, iHT2, iHT3, iHT4 e iHT5 | 4.0.111.3 |
Ingenico IPPxxx | 4.0.111.3 |
Ingenico iSC2xx | 4.0.111.3 |
Ingenico iSC350 | 4.0.111.3 |
Ingenico iST1xx | 4.0.111.3 |
Ingenico iUC1xx | 4.0.111.3 |
Ingenico iUP250 | 4.0.111.3 |
Ingenico Lane3000 | 6.2.115.17 r1 |
PAX D200 | 4.0.111.3 |
Verifone Vx810 e Vx820 | 4.0.111.3 |
Verifone P200 | 6.2.115.28 r2 |
Pinpads that support the AUTO_USB configuration in a LINUX environment:
Manufacturer/Model | CliSiTef Minimum Version |
---|---|
Gertec PPC900, PPC910 e PPC920 | 4.0.111.18 |
Ingenico iCT2xx | 4.0.111.18 |
Ingenico iHT1, iHT2, iHT3, iHT4 e iHT5 | 4.0.111.18 |
Ingenico IPPxxx | 4.0.111.18 |
Ingenico iSC2xx | 4.0.111.18 |
Ingenico iSC350 | 4.0.111.18 |
Ingenico iST1xx | 4.0.111.18 |
Ingenico iUC1xx | 4.0.111.18 |
Ingenico iUP250 | 4.0.111.18 |
Verifone Vx810 e Vx820 | 4.0.111.18 |
Note: Pinpads from new manufacturers or new models may be included in the lists above in the future.
#
Configuration when Automation does not use a pinpadCliSiTef, by default, assumes that the automation has a PinPad, and try up to 3 times to open the door.
In cases where the automation does not have/use a PinPad (e.g. only typed transactions), you must configure the Port item, in the section PinPadShared, with value NONE.
[PinPadShared]
Porta=NONE
#
Setting up a second pinpadAs mentioned in Banking Correspondent (Bill Payment), Bill Payment transactions require a bank-specific pinpad. Generally, there is a sector of the commercial establishment just for this type of service.
If Automation needs to service EFT transactions in the same checkout that handles Bill Payment transactions, it is possible to configure a second pinpad specific to the Bank, so that the main pinpad will be used exclusively in TEF transactions.
#
Setting the default messageYou can initialize the PinPad with a message of up to 16 characters.
This message is configured in the PinPad section, MensagemPadrao field.
[PinPad]
MensagemPadrao=<MESSAGE>
It is possible to break into two lines using the '|' separator.
#
Enabling value confirmation on the pinpadThis setting enables confirmation of the transaction amount on the pinpad in the case of transactions without password collection via the pinpad, since in password collection the value is already presented. So far it is only valid for prepaid recharge and bonus transactions.
To enable this configuration simply add the following settings to the "CliSiTef.ini" file:
[General]
ConfirmarValorPinPad=1
#
Connection configuration with the SiTef server#
Configuring additional IP addressesIn the configuration file it is possible to add alternative addresses to the SiTef server. These addresses are complementary to those provided in the configuration function. A maximum of 4 addresses are allowed from of CliSiTef 6.1.114.59 r3 and previously 3, considering the sum of sent in the configuration function and CliSiTef.ini file.
[SiTef]
IPAddress=IP1;IP2;IP3;IP4
It is also possible to enter the server port, in the IP:Port format.
For example:
IPAddress=127.0.0.1:4096;192.168.0.1:5096
#
SiTef server port configurationIn rare situations, it may be necessary to change the communication port with the SiTef server. For example, some security restriction on the customer network.
The default port of the SiTef server is 4096. To specify a new port, the PortaSiTef field must be included in the SiTef section.
[SiTef]
PortaSiTef=<port>
#
Connection requiredBy default, transactions in CliSiTef try to advance as much as possible, even without connecting to SiTef.
To remove this behavior, and require mandatory connection, include in the SiTef section the parameter ConexaoObrigatoria with value one (1). In this case, if there is no connection with SiTef, the transaction will be closed with error -5.
[SiTef]
ConexaoObrigatoria=1
#
Keeping connection activeBy default, the CliSiTef feature when making a transaction with the SiTef server is: making the connection, exchanging messages and disconnect at the end of the transaction.
If there is a need to keep the connection with SiTef always active, the parameter MantemConexaoAtiva must be included in the SiTef section with value 1 (one).
[SiTef]
MantemConexaoAtiva=1
#
Communication display configurationBy default, CliSiTef sends command 3 to the automation with a message like "Please wait, processing...".
To disable the communication display, simply include it in the section General the field DisplayComunicacaoHabilitado with a value of zero.
[General]
DisplayComunicacaoHabilitado=0
Attention: unlike the previous items, you must use the section General.
#
Changing timing parameters (timeout)Connection timeout time with the SiTef server
The default waiting time for CliSiTef to be able to connect with the SiTef server is 6 seconds. To increase or decrease this time waiting time, configure the field TempoEsperaConexao in the SiTef section with the new value, in seconds.
[SiTef]
TempoEsperaConexao=<timeout time, in seconds>
Additional time for transaction timeout
Normally, CliSiTef receives timeout parameters from the server SiTef. CliSiTef takes these values into account, adding still a safety margin regarding any time spent in streaming.
In situations where the authorizer is unavailable, and depending on the communication between the SiTef server and CliSiTef, this margin can be insufficient, and errors such as "No connection to server" may occur. SiTef", when the correct option would be "Authorizer service unavailable".
To add additional time in seconds, simply add the item TempoAdicionalEspera in the SiTef section.
[SiTef]
TempoAdicionalEspera=<additional time for timeout, in seconds>
Undo waiting time
The standard waiting time (timeout) for CliSiTef to be able to receive the response to an undo message sent to the SiTef server is 6 seconds. To change this value, configure the field in the SiTef section TempoEsperaDesfazimento the new value, in seconds.
[SiTef]
TempoEsperaDesfazimento=<time for timeout, in seconds>
Confirmation waiting time
The standard waiting time (timeout) for CliSiTef to be able to receive the response to a confirmation/non-confirmation message sent to the SiTef server is 6 seconds. To change this value, configure in the section SiTef the field TempoEsperaConfirmacao the new value, in seconds.
[SiTef]
TempoEsperaConfirmacao=<timeout time, in seconds>
#
How to pass a new transaction purchase value on CliSiTefIn the [General] section, add the key PermiteAlterarValorPagamento=1, as below:
[General]
PermiteAlterarValorPagamento=1
During the transaction flow, CliSiTef will ask "Please provide new payment amount\", through field 154.
#
Enabling/disabling payment methodsCliSiTef allows two ways to configure the payment.
One of them occurs at transaction execution time, that is, automation commercial defines the payment methods that will be applied to the current transaction.
If the automation does not define these values, the standard parameterizations, which can be defined in the station's CliSiTef.ini settings.
Important: Settings defined at run time are not affected by any local configurations of the station.
#
Restricting payment methods at runtimeCliSiTef allows the automation application to restrict payment methods available to the cashier/customer for a particular sale. This is done through the "ParamAdic" parameter present in the functions that initiate the payment process or Banking Correspondent (IniciaFuncaoSiTefInterativo and CorrespondenteBancarioSiTefInterativo). The format of this field is Following:
[<Type of payment method>;<Type of payment method>;...];
where each of the sub-fields contains a numeric code that identifies the menu item that does not apply to the sale in question. For example, if during the sales process has already been negotiated with the customer, which is a sale for payment solely and exclusively with a cash card, the amount of the parameter must be:
[10;17;18;19;27;28;34;35;];
Consult the Table of payment method codes, configurations and menus for the code list in this configuration.
Note: the values in the configuration file, detailed in next items, has no effect when commercial automation uses the runtime restriction described in this item.
#
Setting default values for payment methodsIn this case, the customer's sales environment does not support a certain type of payment method because it does not apply to your line of business. One An example of this is a commercial establishment where all sales can only be done in plain sight. For this type of application it is possible define this configuration in the CliSiTef parameter file so that, if the retailer chooses in the future to accept other forms of payment, simply change the CliSiTef configuration, without the need change the automation application. This configuration is done through the TransacoesHabilitadas parameter to be placed in the [General] section of the CliSiTef.ini file.
The format of this parameter is as follows:
[General]
TransacoesHabilitadas=<Type of payment method>;<Type of payment method payment>;...
where each of the sub-fields has the same description as the previous item.
Using the same example as the previous item, to limit transactions only those for payment in cash and without a check, the definition will be:
[General]
TransacoesAbilitadas=16;26
#
Enabling additional transactionsFor reasons of compatibility with previous versions of the library and also due to the fact that some of its functionalities are not usable In general, there are some payment methods that are not enabled by standard, requiring the customer to explicitly inform that they wish to use them. This is done through the configuration file CliSiTef.ini by the parameter TransacoesAdicionaisHabilitadas to be included in the [General] section. The format of this parameter is as follows:
[Geral]
TransacoesAdicionaisHabilitadas=<Tipo do meio de pagamento>;...
Where each of the sub-fields has the same description as the items previous ones.
Consult the Table of payment method codes, configurations and menus for the code list in this configuration.
The menus that are not currently enabled by default are the following:
Electronic Meal Card
Cell phone recharge with debit or credit cards
Payment of Benefits and respective refund
SmartNet reader for SmartVR and Sodexho cards with chip
Correspondent banking
Paggo
Typed Debit
CB Extract
CB Balance Inquiry
CB withdrawal and withdrawal reversal
CB deposit and refund
Bradesco cell phone top-up
Corban SE Cell Phone Recharge
CB Extract
Payment and Reversal of DARF
GPS Payment and Refund
Pre-Approved Loan
Account opening
Prize Change (Surprise)
Vale Gas
Redecard Administrative Option
Fuel Card
Gift Card
For example, to enable the meal card payment menu Electronic the following configuration must be included in CliSiTef.ini:
[General]
TransacoesAdicionaisHabilitadas=20
#
Disabling transactionsIn a similar way to the additional transactions enabled in the previous item, It is possible to disable some transactions without the need for specify the entire range of operations as in the constraints.
To do so, include the TransacoesDesabilitadas field in the General section, indicating the transactions that will be disabled throughout the flow transactional.
[General]
TransacoesDesabilitadas=<Type of payment method>;...
Consult the Table of payment method codes, configurations and menus for the code list in this configuration.
#
Enabling transactions from specific networksThere are some networks that, as they are not in widespread use, are not automatically enabled in CliSiTef. In this case, to enable them, there is a [Networks] section in the CliSiTef.ini configuration file and that must contain the name of the variable corresponding to the network to be enabled with the value 1.
If the establishment works with more than one network as described below, Next, a line must be included for each network.
[Networks]
HabilitaRedexxxx=1
Where xxxx may be, in the current version of CliSiTef, one of the following values below7.
Note that it is possible to enable as many networks as necessary, as long as they are enabled in SiTef in a compatible way.
Network
ACSP
Algorix
Avista
BancoIbi
BancoMercantil
BancoPanamericano
BancoProvincial
BOD
BODDebito
BrazilianCard
CdlPoa
CentralCard
CheckCheck
Cisa
Citibank
ClubCard
CompreMax
Condor
ConsorcioVenezuela
ConsultaValePapel
CooperCred
CredMais
CTF
DDTotal
Dotz
Edenred
Ediguay
Eletrozema
EMS
Fidelize
Formosa
FoxWinCards
Givex
Hiperlife
HotCard
ICards
InfoCard
InComm
JGV
MAR
Mettacard (antigo Consignum)
Neus
Oboe
Omnion
Orbitall
Parati
Platco
PortalCard
Qualicard
Repom
SigaCred
SisCred
Softway
SpcBrasil
SQCF
Starfiche
Sysdata
Telecheque
Teledata
TopCard
Total
Tricard
UpSight
UseCred
Validata
Wappa
Below is the table that lists the types of payment method, settings and menus, with their respective codes, to be used in the previous items8.
Type of payment method | Code |
---|---|
Check consultation or guarantee (all types) | 10 |
Consultation Check Serasa/Commercial Association | 11 |
Tecban Check Consultation | 12 |
Tecban Guaranteed Telecheck | 13 |
Tecban Paper Check Guarantee | 14 |
Debit card (all combinations) (Discontinued, do not use) | 15 |
Cash debit card | 16 |
Post-dated debit card | 17 |
Debit card in installments | 18 |
CDC debit card | 19 |
Electronic Meal Card (Except Visanet, in this case use 3014) | 20 |
Paper Voucher | 21 |
Benefit Card | 22 |
SmartVR/Sodexho card with SmartNet reader | 23 |
Interest-bearing cash credit card | 24 |
Credit card (all combinations) (Discontinued, do not use) | 25 |
Cash credit card | 26 |
Credit card in installments with establishment financing | 27 |
Credit card in installments with financing from the administrator | 28 |
Credit card entered | 29 |
Magnetic credit card | 30 |
Pre-authorization | 31 |
Fininvest Card | 32 |
Withdraw with Fininvest card | 33 |
Pro-rata credit card upfront | 34 |
Pro-rata Credit Card in installments | 35 |
Check installments on Credit Card | 36 |
Cisa Credit | 37 |
Cisa Balance/Statement | 38 |
Infocard Credit Card | 39 |
Canceling a credit or debit card transaction | 40 |
AVS Consultation | 41 |
Typed Debit | 42 |
Magnetic Debit | 43 |
Installment Credit | 44 |
Private Label Pre-Dated | 45 |
Payment Money | 46 |
Private Label Payment by Check | 47 |
Paggo | 48 |
Guarantee Check CDL Rio | 49 |
Bill Payment | 50 |
Bill payment reversal | 51 |
Bill Payment Reprint | 52 |
Benefit Payment | 53 |
Reversal of Benefit Payment | 54 |
Treatment of change when paying bills with cash | 55 |
Reprint | 56 |
Reprint of the Last Receipt | 57 |
Specific Reprint | 58 |
Cell phone recharge with Money | 60 |
Cell phone recharge with Check | 61 |
Recharge your cell phone with a debit card in cash | 62 |
Recharge your cell phone with a credit card in cash | 63 |
Indicates the Menu for selecting the recharge operator | 64 |
Reprint from the shopkeeper | 70 |
Cardholder Reprint | 71 |
All reprints | 72 |
Centralized Credit | 73 |
Balance Inquiry - Bank Correspondence | 74 |
Withdrawal - Bank Correspondence | 75 |
Withdrawal Reversal - Bank Correspondence | 76 |
Deposit - Bank Correspondence | 77 |
Deposit Reversal - Bank Correspondence | 78 |
Current Account | 79 |
Savings Account | 80 |
Benefit Account | 81 |
Salary Account | 82 |
Company Account | 83 |
Investment Account | 84 |
Traveling Employee Account | 85 |
Balance Check with Magnetic Card - Corresponde Bancário | 86 |
Balance Inquiry with Account Data Entry - CB | 87 |
INSS Benefit Withdrawal - Bank Correspondence | 88 |
Withdrawal with Magnetic Card - Corresponde Bancário | 89 |
Withdrawal by Check - Bank Correspondence | 90 |
Withdrawal with Withdrawal Receipt - Corresponde Bancário | 91 |
Reversal of INSS Benefit Withdrawal - Corresponde Bancário | 92 |
Reversal of Withdrawal by Check - Corresponde Bancário | 93 |
Withdrawal Reversal with Withdrawal Receipt - Corresponde Bancário | 94 |
Cash Deposit Reversal - Corresponde Bancário | 95 |
Reversal of Deposit with Check - Corresponde Bancário | 96 |
Reversal of Deposit with Cash + Check – CB | 97 |
SPC Brazil Check Consultation | 98 |
SPC Brazil Check Guarantee | 99 |
Account Type: FAL | 3000 |
Account Type: Points | 3001 |
SCCard | 3002 |
Debit Balance Inquiry | 3003 |
Credit Balance Inquiry | 3004 |
Bradesco Cell Phone Recharge | 3005 |
Specific Reprint Redecard | 3006 |
Visanet Specific Reprint | 3007 |
Surprise Change (Awarded) | 3008 |
Cash payment | 3009 |
CB payment by check | 3010 |
Payment with TEF Debit | 3011 |
Payment with TEF Credit | 3012 |
Payment in another form | 3013 |
Cielo Voucher Products | 3014 |
ValeGás | 3015 |
ValeGás Ultragaz | 3016 |
ValeGás GetNet | 3017 |
Orbitall Account Payment | 3018 |
Orbitall Account Payment Reversal | 3019 |
Fuel Card | 3020 |
Entered Fuel Card | 3021 |
Magnetic Fuel Card | 3022 |
Prepaid Debit Card | 3023 |
Prepaid Debit Card Balance Inquiry | 3024 |
Credit Card Bar Code | 3025 |
Gift Card | 3026 |
Redecard Administrative Option | 3027 |
Magnetic Gift Card | 3028 |
Digitized Gift Card | 3029 |
Barcode Gift Card | 3030 |
Redecard Purchase and Withdrawal Option | 3031 |
Invoice Payment | 3032 |
Agreement Payment | 3033 |
IBI Bank Withdrawal | 3034 |
IBI Bank Withdrawal Reversal | 3035 |
IBI Bank Invoice Payment | 3036 |
IBI Bank Invoice Payment Reversal | 3037 |
Balance SPTrans | 3038 |
SPTrans | 3039 Recharge |
Infocard Check Guarantee | 3040 |
Reversal Warranty Check Infocard | 3041 |
Guarantee Check CDL-Poa | 3042 |
Extract | 3043 |
Magnetic Extract | 3044 |
Typed Statement | 3045 |
Corban SE Refill | 3046 |
Credit Withdrawal | 3047 |
Credit Withdrawal Reversal | 3048 |
Credit Card Inquiries | 3049 |
Credit Card Statement | 3050 |
Credit Agreement Balance | 3051 |
Credit Card Release Consultation | 3052 |
Consult Last Credit Card Invoice | 3053 |
Change Credit Card Password | 3054 |
Release Credit Card | 3055 |
SPTrans | 3056 Products |
DARF | 3057 |
GPS | 3058 |
Simple DARF | 3059 |
DARF Black | 3060 |
DARF Reversal | 3061 |
GPS Reversal | 3062 |
Pre-Approved Loan | 3063 |
Magnetic Pre-Approved Loan | 3064 |
Typed Pre-Approved Loan | 3065 |
Account Opening | 3066 |
Individual Account | 3067 |
Joint Account AND/OR | 3068 |
Joint Account E (Solidarity) | 3069 |
Infocard Account Payment | 3070 |
Infocard Account Payment Reversal | 3071 |
Banrisul Account Payment | 3072 |
Central Card Account Payment | 3073 |
Portal Card Account Payment | 3074 |
Softway Account Payment | 3075 |
Parati Account Payment | 3076 |
Ediguay Account Payment | 3077 |
CooperCred Account Payment | 3078 |
Validata Account Payment | 3079 |
Panamericano Bill Payment | 3080 |
SigaCred Account Payment | 3081 |
UseCred Account Payment | 3082 |
SisCred Account Payment | 3083 |
Fininvest Account Payment (Main Menu) | 3084 |
Banrisul Account Payment Reversal | 3085 |
Fininvest Account Payment Reversal | 3086 |
Central Card Account Payment Reversal | 3087 |
Portal Card Account Payment Reversal | 3088 |
Softway Account Payment Reversal | 3089 |
Ediguay Account Payment Reversal | 3090 |
CooperCred Account Payment Reversal | 3091 |
Panamericano Account Payment Reversal | 3092 |
SigaCred Account Payment Reversal | 3093 |
UseCred Account Payment Reversal | 3094 |
SisCred Account Payment Reversal | 3095 |
Transfer CB | 3096 |
Administrative CB | 3097 |
Administrative CB Banrisul | 3098 |
EMS Card Bill Payment | 3099 |
EMS Card Account Payment Reversal | 3100 |
EMS Summary Code | 3101 |
Card Bar Code | 3102 |
Entering Carnet Data | 3103 |
EMS Consultation Menu | 3104 |
Quick Consultation EMS | 3105 |
EMS Extract Consultation | 3106 |
EMS Miles Consultation | 3107 |
EMS Mini-Statement Consultation | 3108 |
EMS Occurrence Record | 3109 |
EMS Occurrence Cancellation Record | 3110 |
EMS | 3111 Customer Inclusion |
Changing EMS | 3112 Customer Registration Data |
Query EMS Customer Registration Data | 3113 |
EMS Transaction by Magnetic Card | 3114 |
EMS Transaction by Card Typing | 3115 |
EMS Transaction by Entering CPF | 3116 |
Partial EMS Statement | 3117 |
EMS Statement Total | 3118 |
Male Sex | 3119 |
Female | 3120 |
EMS | 3121 Sales Menus |
EMS Card Sale | 3122 |
Sell EMS Other Payment Methods | 3123 |
Sell EMS for Cash | 3124 |
EMS Sale in Interest-Free Installments | 3125 |
EMS Sale in Installments With Interest | 3126 |
Normal Sale EMS | 3127 |
Forced Sale EMS | 3128 |
EMS Purchase Linked to Gift List | 3129 |
Purchase EMS Other Links | 3130 |
EMS Sale - Cash | 3131 |
EMS Sale - Cash Check | 3132 |
EMS Sale - Pre Check | 3133 |
EMS Sale – Debit Card | 3134 |
EMS Sale – Credit Card | 3135 |
EMS Sale – Ticket | 3136 |
EMS Sale – Administrative Check | 3137 |
EMS Sale – Traveler Check | 3138 |
EMS Sale – Sheet Discount | 3139 |
EMS Sale – Vale | 3140 |
EMS Sale - Miles | 3141 |
EMS Sale - Payroll debit | 3142 |
EMS Sale – Voucher | 3143 |
EMS Sale – Gift Card | 3144 |
EMS Sale – Private Label | 3145 |
Rotary Sale A Vista Fininvest | 3160 |
Pre-Dated Revolving Sale Fininvest | 3161 |
Sale in installments Fininvest | 3162 |
Sale in pre-dated installments Fininvest | 3163 |
Fininvest Revolving Withdrawal | 3164 |
Fininvest Installment Withdrawal | 3165 |
Fininvest Withdrawal Consultation | 3166 |
Fininvest withdrawal | 3167 |
Bank Slip | 3168 |
Contract | 3169 |
Fininvest Account Payment | 3170 |
Fininvest Invoice Payment | 3171 |
Provincial Document | 3172 |
Non-Provincial Document | 3173 |
With Provimillhas | 3174 |
Without Provimilhas | 3175 |
Debit Equal Installments | 3176 |
Provincial Bank Check Consultation | 3177 |
BOD Check Consultation | 3178 |
Banco Mercantil Check Guarantee | 3179 |
Check Consultation Consorcio Venezuela | 3180 |
Closing of Current Lot Banco Mercantil | 3181 |
Closing of Specific Lot Banco Mercantil | 3182 |
Purchase Adjustment | 3183 |
Purchase Adjustment Debit | 3184 |
Purchase Adjustment Credit | 3185 |
Query Purchase Totals Provincial Bank | 3186 |
Query Totals Payable Provincial Bank | 3187 |
Consultation State Lot Provincial Bank | 3188 |
Provincial Bank Lot Closing | 3189 |
BOD | 3190 Lot Closing |
Closing of Lot Banco Mercantil | 3191 |
Meal Voucher (Except Visanet) | 3192 |
Food Voucher (Except Visanet) | 3193 |
CooperCred Mileage Sale | 3194 |
CooperCred Mileage Sale Cancellation | 3195 |
Cisa Balance Inquiry | 3196 |
Cisa Statement Consultation | 3197 |
Softway Balance Inquiry | 3198 |
Softway withdrawal | 3199 |
Softway | 3200 Withdrawal Cancellation |
Prepaid Load | 3201 |
Pre-Charge Cancellation | 3202 |
Run Communication Test | 3203 |
Banking Correspondent Transactions | 3204 |
Mobile Recharge Transactions | 3205 |
SPTrans Transactions | 3206 |
SCCard | 3207 |
Wappa Provider | 3208 |
Box Opening CB | 3209 |
CB | 3210 Cash Closing |
Box Bleeding CB | 3211 |
Condor card menu | 3212 |
Simple installment credit option | 3213 |
Condor card payment | 3214 |
Condor card payment reversal | 3215 |
Condor extract query | 3216 |
Cancellation Pay more | 3217 |
Starfiche Menu | 3218 |
CB Banrisul withdrawal menu | 3219 |
UP SIGHT | 3220 bill payment |
Account Payment Reversal UP SIGHT | 3221 |
NTPC | 3222 option menu |
NTPC Menu | 3223 |
Payment with withdrawal | 3224 |
Cell phone top-up with withdrawal | 3225 |
PinPad Supervisor Password Change | 3226 |
CDC Credit Menu | 3227 |
Legal entity account option | 3228 |
Payment of network account MAR | 3229 |
Reversal payment of network account MAR | 3230 |
iCards Network Account Payment | 3231 |
iCards network account payment reversal | 3232 |
Menu option Credit Release Coopercred | 3236 |
Menu option Debit Release Coopercred | 3237 |
Menu option Recharge Typed Debit Coopercred | 3238 |
Menu Option Magnetic Debit Recharge Coopercred | 3239 |
Menu credit option Redemption Points | 3261 |
Oboe account payment menu | 3262 |
Oboe points accumulation menu | 3263 |
Oboe points accumulation cancellation menu | 3264 |
Credit sale menu with cash authorization | 3267 |
Magnetic card option menu (PBM) | 3270 |
Typed card option menu (PBM) | 3271 |
Menu option authorization code (PBM) | 3272 |
Qualicard account payment menu | 3276 |
Qualicard account payment reversal menu | 3277 |
Generic Authorization Menu SEM | 3278 |
Avista network account payment menu | 3279 |
Formosa virtual card menu | 3280 |
Neus bill payment menu | 3281 |
Account payment reversal menu Neus | 3282 |
Algorix bill payment menu | 3283 |
Algorix bill payment reversal menu | 3284 |
Algorix gift card load menu | 3285 |
Algorix Gift Card Load Cancellation Menu | 3286 |
Menu sale credit CompreMax | 3287 |
CompreMax cancellation menu | 3288 |
Fuel Card cancellation menu | 3289 |
Bill payment menu SysData | 3296 |
Bill payment reversal menu SysData | 3297 |
Payment inquiry menu Validata | 3298 |
SPTrans recharge payment menu (Management menu) | 3299 |
Bill payment menu SQCF | 3303 |
Account payment cancellation menu SQCF | 3304 |
Quality card menu (ICI Card) | 3305 |
Menu option Withdraw Credit Transfer | 3306 |
Menu option Cancellation Withdrawal Credit Transfer | 3307 |
GetNet withdrawal menu | 3319 |
Withdrawal reversal menu GetNet | 3320 |
Promotional Platform Redemption (Cielo) | 3323 |
Special account menu | 3324 |
Loyalty account menu | 3325 |
Menu other account | 3326 |
Platco batch closing menu | 3327 |
Tip register menu | 3328 |
Last sale inquiry menu | 3329 |
Platco check guarantee menu | 3330 |
Platco Return Menu | 3331 |
SPTrans recharge payment menu (Specific menu) | 3334 |
Payment Menu Account FoxWin Cards | 3335 |
FoxWin Cards Account Payment Reversal Menu | 3336 |
Payment Menu HotCard Account | 3337 |
HotCard Account Payment Reversal Menu | 3338 |
Adm Gift Menu | 3339 |
Gift Card Balance Inquiry | 3340 |
Gift Card Recharge | 3341 |
Gift Card Recharge Cancellation | 3342 |
Sale with Gift Card | 3343 |
Cancellation of Sale with Gift Card | 3344 |
Gift Cancellation Menu | 3345 |
Account type FAL | 3346 |
Main account type | 3347 |
Points Issuance Menu | 3348 |
Point Issuance Cancellation Menu | 3349 |
Points Redemption Menu | 3350 |
Points Redemption Cancellation Menu (not used yet) | 3351 |
Menu Option Prepaid Card Typed | 3352 |
TriCard Payment Menu | 3353 |
Menu Statement by Period (CB) | 3363 |
Extract Menu – Latest Releases (CB) | 3364 |
Extract Menu – Last Days (CB) | 3365 |
Check Unblocking Menu (CB) | 3366 |
Menu Payment Option with Debit Card CB | 3367 |
Account Transfer Menu – CB | 3368 |
INSS Password Revalidation Menu – CB | 3369 |
Identified Deposit Menu – CB | 3370 |
Depositor Name Menu (CB Identified Deposit) | 3371 |
Menu Depositor Code (CB Identified Deposit) | 3372 |
Payment Card Menu (CB Identified Deposit) | 3373 |
Invoice Payment Menu (CB Identified Deposit) | 3374 |
Payment option menu with Digitized card (CB) | 3375 |
Payment option menu with Magnetic card (CB) | 3376 |
Menu option Typed Invoice Payment (CB) | 3377 |
Menu option Magnetic Invoice Payment (CB) | 3378 |
Generic Invoice Payment Menu | 3379 |
Menu option Pre Authorization Fuel Card | 3389 |
Gift Activation Menu | 3390 |
Money Payment Menu – Gift Activation | 3391 |
Check Payment Menu – Gift Activation | 3392 |
Debit Card Payment Menu – Gift Activation | 3393 |
Credit Card Payment Menu – Gift Activation | 3394 |
ClubCard Payment Menu | 3407 |
ClubCard Payment Reversal Menu | 3408 |
Citibank Payment Menu | 3409 |
Menu option Porto Seguro Auto Magnetic Card | 3410 |
Menu option Porto Seguro Auto Digitized Card | 3411 |
ClubCard Withdrawal Menu | 3412 |
Payment Menu CredMais | 3466 |
Menu Credit installment consultation | 3480 |
Payment Reversal Menu. Ibi Bank Accounts | 3500 |
Eletrozema Card Menu | 3510 |
Eletrozema Card Cancellation Menu | 3511 |
Eletrozema Consultation Menu | 3512 |
Generic Invoice Payment Cancellation Menu | 3515 |
EGift Card (Hug) | 3517 |
Pre-Authorization Change Menu | 3519 |
Payment methods menu for Siscred | 3530 card payment |
Withdraw Gift | 3553 |
Gift withdrawal cancellation | 3554 |
Activation cancellation Gift | 3556 |
Loading tables on pinpad | 3624 |
Forced loading of tables on pinpad (Local) | 3625 |
Forced loading of tables on the pinpad (SiTef) | 3626 |
Balance Consultation – Alelo (Cielo) | 3653 |
Update Chip -Alelo (Cielo) | 3654 |
Alelo Auto Debit (Cielo) | 3655 |
Reprint Specifies Others | 3675 |
WayUp | 3700 Administrative Menu |
WayUp Points Accumulation | 3701 |
WayUp Points Redemption | 3702 |
WayUp Withdrawal Consultation | 3703 |
WayUp Carrier Prospecting | 3704 |
WayUp | 3705 Cancellations Menu |
WayUp Accumulation Cancellation | 3706 |
WayUp Redemption Cancellation | 3707 |
Barcode Menu (Document type – Debit\Credit for payment slip) | 3720 |
CPF Menu (Document type – Debit\Credit for payment of booklet) | 3721 |
Card Number Menu (Document type – Debit\Credit for payment slip) | 3722 |
Menu Others (Document type – Debit\Credit for payment of carnet) | 3723 |
Tricard Insurance Membership Menu | 3742 |
Credit Card Recharge Menu | 3744 |
Credit card top-up cancellation menu | 3745 |
Tricard Balance Inquiry Menu | 3746 |
Coopercred debit card recharge menu | 3772 |
Coopercred debit card recharge cancellation menu | 3773 |
Payment in Cash Ultragáz Resale | 3900 |
Payment with TEF Crédito Ultragáz Revenda | 3901 |
Payment with TEF Debit Ultragáz Resale | 3902 |
IATA Menu in Cash | 3958 |
IATA Menu Installment Installment | 3959 |
IATA Installment Menu Administradora | 3960 |
Credit Simulation Menu | 3989 |
Menu Others Cielo | 4158 |
Cell Phone Recharge with Digital Wallet | 4162 |
Cell phone recharge with PIX | 4163 |
Banco Ibi Credit Sale Menu | 4193 |
Cancellation Menu Banco Ibi Credit Sale | 4194 |
#
Enabling special settings per transactionIn certain transactions, it is possible to include new functionalities and characteristics to the transactional flow, allowing greater flexibility of operation without these functionalities are not linked to a medium specific payment.
To do so, simply add a new field to the "ParamAdic" parameter, present in the functions that initiate the payment process or Banking Correspondent (IniciaFuncaoSiTefInterativo and CorrespondenteBancarioSiTefInterativo). The format of this field is Following:
{<Feature1>;<Feature2>;...;<Featuren>;};
Note that in this format the features are enclosed in braces ('{' and '}'), while constraints are enclosed in square brackets ('[' and ']').
Example: in the sales process exemplified in item 5.1, suppose that the sales value can be changed during the flow, and that the sales application automation wants to carry out its treatment, then the value of the parameter "ParamAdic" should be:
[10;17;18;19;27;28;34;35;];{TrataPagamentoExtendido=1;}
Next, we describe the functionalities provided in this field.
Functionality | Description |
---|---|
CodigoCliente=xxxxxx | Customer code for a given store, limited to 36 characters, to be linked in SiTef Web reports. |
ExecutaAteLeituraCartao=0 | If a .CHA key file is present on the Sitef server, then CliSiTef behaves as follows: If CliSiTef is not communicating with Sitef, instead of returning a communication error, CliSiTef continues the transaction flow until card reading. To inhibit this behavior, use the functionality below. |
HabilitaVendaViaCodigoBarras=1 | This parameter informs CliSiTef that the option of selling credit through cards engraved in bar codes must be enabled in the current transaction. Remembering that in addition to this configuration, the menu option (3025) must also be enabled. |
ItemMenuIdentificado=1 | The automation application informs CliSiTef that it is prepared to handle the menu command with identified items (command 42). |
When this parameter is enabled, CliSiTef replaces the use of command 21 with command 42, in most menus used in navigation. | |
{MKRede=A,B,C,D} | Configuration valid only for CliSiTef Reduced Redecard. |
NOTE: This configuration must be passed between curly braces ({}) separately, that is, it must not be concatenated with any other configuration separated by a semicolon (;) | Parameters A,B,C,D are key indices Redecard encryption at POS's. These parameters will override the key indexes received in service 3. Parameters C and D will only be implemented from version (4.0.104.1, to be confirmed). If any key is not configured, the parameter must be passed with a value of -1. Example: {MKRede=-1,-1,-1,2} will configure only the key related to DUKPT 3DES encryption. |
A = DES master key index | |
B = 3DES master key index | |
C = DUKPT DES treatment record index | |
D = DUKPT 3DES treatment record index | |
{MKRedeDados=A,B,C,D} | Same as MKRede (See description above), |
NOTE: This configuration must be passed in braces ({}) separately, that is, it must not be concatenated with any other configuration separated by semicolons (;) | except that the encryption keys will be used to encrypt tracks. |
NumCartaoCripto=<Encrypted card> | Providing the additional field “NumCartaoCripto”, with the encrypted card, disables the capture of the entered card number. This parameter depends on the correct configuration of the .cha key file on the SiTef server, that is, with the corresponding encryption keys. |
RedeDestino=nnnn | This configuration allows you to force the transaction to be carried out by a specific network (nnnn = 4 numeric digits). See item 0 - Credit/debit transactions with a card without BIN. |
TrataConsultaSaqueComSaque=1 | Initially designed for Banco Ibi transactions, this parameter allows you to link, in a single transaction, the “Withdrawal Consultation” and “Withdrawal”. |
If this parameter is passed, the administrative menu will only offer the option “Withdrawal Consultation”. | |
TrataPagamentoExtendido=1 | This function informs that the automation application is prepared to handle minor receipt information (no balance to be received with another form of payment) or excess (change must be returned to the customer). |
This function also enables the receipt of fields 137 (Balance to be paid) and 138 (Amount actually received). | |
ValidadeCartao=<AAMM or MMAA> | Delivering the additional field “ValidadeCartao”, with the card's expiration date, disables its capture, however the use of the value passed through the additional parameter is conditioned on the successful passage of the field “ NumCartaoCrypto”. |
ValorIncluiTaxa=1 | This parameter informs that the automation application included the value of the boarding or service tax in the purchase price. |
If a fee is requested during the capture flow, the value that was added to the sale must be passed on by the automation. | |
TipoDocFiscal=x | Indicates the type of Tax Document issued by “Commercial Automation”. |
Where x: | |
0 - Tax Coupon (Tax Coupon - Legacy) | |
1 - NFC-e (Consumer Invoice - Electronic) | |
2 – SAT-CF-e (Tax Coupon - Electronic) | |
NOTE: . In the absence of this “functionality”, CliSiTef assumes that the “Tax Document” issued is of type ‘0’ (Tax Coupon - Legacy). | |
. Any value of 'x' different from those defined, the transaction will be aborted by CliSiTef indicating invalid parameters. | |
ChaveAcessoDocFiscal=<Key data> | Electronic Tax Document access key (size 44 digits). It is necessary to inform when “TipoDocFiscal” is equal to ‘1’ or ‘2’. |
NOTE: . In the absence of this “functionality” for “TipoDocFiscal” equal to ‘1’ or ‘2’, or in the presence of the “functionality” for “TipoDocFiscal” equal to ‘0’, the transaction will be aborted by CliSiTef indicating invalid parameters. | |
Examples: | |
{TaxDocType=0} | |
{TypeDocFiscal=1;ChaveAcessoDocFiscal=1111111111222222222233333333334444} | |
{TypeDocFiscal=2;ChaveAcessoDocFiscal=5555555555666666666677777777778888} | |
CPFColetado=XXXXXXXXXXX | The default collection of the CPF is carried out by PinPad, when requested in the transaction. If the commercial automation has already captured it previously, or already has it for some reason, and does not want the user to have to re-enter the data on the pinpad, it must be passed via additional parameters. |
Initially intended for use with Digital Wallets, the need for use with other products arose. | |
Example: | |
{CPFColetado=99966633300;} | |
SPLITPAY:Estab1=Amount1 | |
IMPORTANT: The main seller's establishment code must not be part of the Split establishments, which must only contain data from secondary sellers. | |
The establishment code must be a valid CNPJ of maximum 15 digits, and the value, 12 digits, considering the last 2 digits as decimal places. Smaller fields will be completed with leading zeros. Formatted fields will only be considered digits. The associated value is optional. | |
The character ‘|’ serves as a separator when there are several sets of data. | |
Examples: | |
{SPLITPAY:1222555000101=500|111222111000101=000000001000|111.222.333/0001-01=15.00|111.222.444/0001-01;}; |
#
Credit/debit transactions with card without BINIn certain transactions, where the automation application wants to using a special card (without defined BIN), it is necessary to pass some restrictions, and for this there are two ways:
Indicating the "RedeDestino" configuration in the "ParamAdic" parameter, present in the functions that initiate the payment process (IniciaFuncaoSiTefInterativo) or Banking Correspondent (CorrespondenteBancarioSiTefInterativo), as per the following example:
{RedeDestino=nnnn}
Where nnnn is the code of the network to which the special card belongs (see table below).
Indicating this special network, to which the special card belongs, in the CliSiTef configuration file ("CliSiTef.ini").
To do so, indicate in the Debit, Credit, FuelCard, Gift, WithdrawCredito or DebitWithdrawal, the pairs (Text, Network) corresponding to the text that will be displayed and the network code.
[Debit]
Text1=SomarCard
Network1=172
Text2= StarFiche
Network2=178
TextN=MyNetwork
NetworkN=nnnn
[Credit]
Text1=SomarCard
Network1=172
Text2= StarFiche
Network2=178
Texton=MyNetwork
Networkn=nnnn
[FuelCard]
Text1=FitCard
Network1=263
[Gift Card]
Text1=Condor
Network1=174
TextN=MyNetwork
NetworkN=nnnn
[WithdrawCredito]
Text1= Condor
Network1=174
TextN=MyNetwork
NetworkN=nnnn
[DebitWithdrawal]
Text1= Condor
Network1=174
TextN=MyNetwork
NetworkN=nnnn
Through the configuration file it is possible to define up to 5 networks debit, 5 credit networks, 5 fuel networks, 5 gift, 5 SaqueCrédito networks and 5 SaqueDébito networks. Once this is done, when the automation performs a transaction with one of the modalities described above, CliSiTef will present a menu with all networks defined and with the option of debit, credit, fuel, gift, SaqueCredito or SaqueDebito in which the bins are consulted.
Furthermore, it is necessary to define whether the network in question allows the capture of the card using the magnetic reader or by typing, with the configuration of the following keys:
- HabilitaDigitadoN = 1
- HabilitaMagneticoN = 1
For the [FuelCard] section, reading can also be enabled barcode using the configuration below:
- EnableCodBarN = 1
For Gift transactions, make the following settings below to enable the following input modes:
- HabilitaDigitadoN: Enable EAN 13 input mode.
- EnableCodUnitarioGiftN: Enable EAN 128 input mode.
- HabilitaEgiftDigitadoGiftN: This collection is used when the authorizer issues a virtual number that can be a sent number by email. This number will be used with the card, you will be asked to Gift number input.
Example:
[Debit]
Text1=SomarCard
Network1=172
Text2=StarFiche
Network2=178
Text3=Libercard
Network3=196
EnableDigitado3=1
EnableMagnetic3=0
Text4=VeroPay
Network4=21
EnableDigitado4=1
EnableMagnetic4=0
[Credit]
Text1=SomarCard
Network1=172
Text2= StarFiche
Network2=178
Text3=Libercard
Network3=196
EnableDigitado3=1
EnableMagnetic3=0
[FuelCard]
Text1=FitCard
Network1=263
EnableDigitado1=0
EnableMagnetic1=1
EnableCodBar1=0
[GiftCard]
Text1=Condor
Network1=174
EnableDigitado1=0
EnableMagnetic1=1
EnableCodBar1=0
EnableCodUnitarioGift1=0
EnableEgiftDigitadoGift1=0
[WithdrawCredito]
Text1=Condor
Network1=174
TextN=MyNetwork
NetworkN=nnnn
EnableTypedN=0
EnableMagneticN=1
[DebitWithdrawal]
Text1=Condor
Network1=174
TextN=MyNetwork
NetworkN=nnnn
EnableTypedN=0
EnableMagneticN=1
You can also define additional transactions that will be captured by the network in question. The parameter that determines this characteristic is the TransacoesAdicionaisn, where n is the network index. The values indicated are the functions of item 3.2.2 - Table of function codes, separated by semicolon.
At the moment, only transaction 602 (Credit Card Balance Inquiry) has been implemented.
Example:
[Credit]
Network1=205
Text1=GoldenFarma
TransacoesAdicionais1=602;
Below, we list the code of the networks that have cards in this situation.
Network Code | Network Name |
---|---|
21 | VeroPay (Vero Débito Digitado) |
97 | Cartesys |
172 | SomarCard |
178 | StarFiche |
196 | Libercard |
205 | GoldenFarma |
263 | FitCard |
#
Enabling credit in installments when in a linked paymentBy CliSiTef default, a payment transaction accounts/recharge/activation of a Gift card that has a payment linked will not enable the installment option by default.
However, there is a parameter that, [together with enabling the SiTef of these transactions]{.underline}, can enable this form of payment at the library. The parameter is as follows:
[General]
ModalidadesPermitePagVinculadoCredParcAdm=XXX;
ModalidadesPermitePagVinculadoCredParcLoja=XXX;
Where XXX is the code of the function/modality that will execute the transaction. So, if you want to enable installments in the transaction Gift activation, for example, the code to be used would be 265.
Remembering that it is only possible to enable installments for credit transactions.
IMPORTANT: As installment transactions generally have fees it is important to study whether it is an advantage or not to allow these transactions installments.
#
Control filesCliSiTef allows you to configure the directory where your control files. This configuration must be done by item Base Directory of the SaveState section in the CliSiTef.ini file.
On Windows, the default folder used is C:\CliSiTef\ChavesCliSiTef.
On Linux, the default folder is /tmp/ChavesCliSiTef.
[SaveStatus]
Base Directory=<DIRECTORY>
Windows example:
[SaveStatus]
BaseDirectory=C:\Keys
Linux example:
[SaveStatus]
BaseDirectory =/home/user/keys
Note: it is important that a local folder is indicated, and not a network mapping.
Important: the tmp folder was initially chosen in Linux by the fact that, generally, there are no permission problems when using the folder. However, a reboot on the Linux machine may cause the files are deleted.
Therefore, it is recommended that the automation is configured so that the CliSiTef access a folder with read and write permissions. That is, in the system user who will run the automation.
#
TraceCliSiTef typically writes information to a single daily file, with log rotation mechanism. That is, older files are automatically removed.
On Windows, the file is written in the default C:\CliSiTef\CliSiTef.<AAAAMMDD>.dmp.
On Linux, the file is written to the local folder, by default CliSiTef.<AAAAMMDD>.dmp.
On POS equipment, the file is written to the local folder, in the default TRACE.
#
Configuring historyIn the configuration file "CliSiTef.ini", you can configure the number of days for which the trace will be maintained. By default the trace is enabled for five days.
[GENERAL]
NumeroDeDiasNoLog=n
where n is the number of days. Zero records indefinitely.
Note: this setting is not applied if Rotary Trace mode is enabled.
#
Directory configurationOn Windows, the default folder for recording trace files is C:\CliSiTef.
In Linux, the current folder is used.
CliSiTef allows you to configure the directories where your trace files. To do so, change the CliSiTef.ini file as per shown below:
[CliSiTef]
DiretorioTrace=<DIRECTORY>
Windows example:
[CliSiTef]
DiretorioTrace=C:\Trace
Linux example:
[CliSiTef]
DiretorioTrace=/home/user/trace
#
Trace files per terminalTo facilitate some analyses, it is possible to configure CliSiTef to generate trace files per terminal (parameter IdTerminal of the function ConfiguraIntSiTefInterativo).
In addition to generating traces per terminal, it is also possible to change the generation of trace files from daily mode to hourly mode, where several fragmented trace files are generated per hour.
When enabling CliSiTef's multi-terminal mode, trace generation is automatically switched to per terminal mode. For adults information about multi-terminal mode, please refer to the specific document "CliSiTef - Configuração Multi-terminal.doc".
If it is not configured in multi-terminal mode and still wants to enable the generation of traces per terminal, just add the item TracePorTerminal in the CliSiTef section of the "CliSiTef.ini" file.
[CliSiTef]
TracePorTerminal=1
To enable the generation of hourly traces, you must add following configuration to the "CliSitef.ini" file:
[CliSiTef]
TracePorHora=1
#
Rotary TraceStarting with version 4.0.112.45 of CliSiTef, it is possible to separate each transaction carried out by automation in its own trace file.
Transaction is understood as the set of message exchanges under the same tax coupon. In other words, tax coupon and tax date, passed as parameter in the function IniciaFuncaoSiTefInterativo (tax time is not considered).
For example: a cell phone recharge transaction followed by a TEF, in same tax coupon, are stored in the same trace file.
In this scenario, the files are written in the form:
Windows Transaction | ** Linux and mobile platforms (and other non-POS platforms) | POS Platforms** |
---|---|---|
1 (latest) | CliSiTef.dmp | TRACE |
2 | CliSiTef.dmp.1 | TRACE.1 |
3 | CliSiTef.dmp.2 | TRACE.2 |
… | ... | ... |
n (older) | CliSiTef.dmp.n-1 | TRACE.n-1 |
With each new transaction, the files are rotated (renamed), and the older files are removed, maintaining the number of files desired.
This option also allows these files to be sent to the SiTef server, as long as it is configured with the NServices module.
#
Enabling the rotating traceTo enable the generation of rotating traces, you must indicate the maximum number of files to be stored in the CliSiTef section, Rotary Trace item.
[CliSiTef]
TraceRotativo=n
Example: store up to 10 transactions
[CliSiTef]
TraceRotativo=10
Note: when enabling the TraceRotativo option, the configuration NumeroDeDiasNoLog will be ignored.
#
Limiting file sizesIn situations where there are disk space constraints (POS, for example), you can also limit the size of the trace file. In this case, a The same transaction can be stored in one or more separate files.
To do so, indicate the size (in bytes) of the file limit in the section CliSiTef, TamanhoTraceRotativo item.
For example, to limit the size of each file to around 32Kb:
[CliSiTef]
TraceRotativo=10
TamanhoTraceRotativo=32768
Note: This size limitation is only applied when the option TraceRotativo is enabled.
#
Sending trace files to the SiTef serverIt is possible to submit trace files from a POS station or terminal POS for the SiTef server. This situation can be especially useful to analyze possible problems in production.
When enabling the TraceRotativo configuration, it will automatically be available in the clisitef administrative menu (function 110) option "Sending trace to the SiTef server".
If the automation wants to disable this option, restrict the menu 3627. For more information, see "Restricting or enabling of payment methods".
It is also possible to command this transaction using function 121, which must be passed in IniciaFuncaoSiTefInterativo.
Function | Description |
---|---|
121 | Sending trace files to the SiTef server. |
In the event of a drop in communication, the automation can rerun the function 121 after reestablishing the channel. In this situation, the clisitef will confirm whether you want to continue the previous submission.
When submitting trace files to the SiTef server, make sure that it has the NServices module properly configured.
#
Development/approval process#
Additional trace file during development phaseCliSiTefI has an assistance mechanism for application developers that interacts with it in order to simplify the search for problems during the development phase. This mechanism, once enabled, causes a trace file to be generated containing the parameters exchanged between CliSiTef and the application. The file is located in current directory or in C:\CliSiTef, depending on whether the environment is Linux or Windows, respectively. The file name is CliSiTef.AAAAMMDD.txt.
To enable this feature, include the following parameter in the CliSiTef.ini configuration file:
[General]
DataEmAmbienteDeDesenvolvimento=YYYMMDD
Where AAAAMMDD corresponds to the day that the laboratory test is being done.
In a production environment, this configuration MUST NOT EXIST, being that the analysis of problems in this environment must be carried out by Software Expressed by the activation of CliSiTef's internal traces, through settings passed by Support. This option enables automatically select the following option.
#
Approval processAs previously described, the flow described in this document must be followed exactly so that no strange errors occur during execution from CliSiTef. To this end, there is a configurable parameter that will be used by Software Express approvers to confirm that the automation application only implements the sales process through printing a receipt or calling the function FinalizaFuncaoSiTefInterativo after the final return of the ContinuaFuncaoSiTefInterativo. This parameter is the following:
[General]
EmAmbienteDeHomologacao=1
By introducing an additional message into the process, it should never be used in a production environment.
#
Message translationIt is possible to change part of the messages sent to the automation, to translation effects or, in some cases, to reduce messages.
To enable this feature, simply include it in the TabTraducao section of CliSiTef.ini the item NomeArqTraducao, indicating the name of the translation.
[TabTranslation]
NomeArqTraducao=<File name>
Messages must be in a separate INI format file, under the TabTranslation section.
An example of this file would be:
[TabTranslation]
MsgNovoValor=Provides the new payment amount
MsgEmbosso=Provide the final 4 digits of the card
MsgCodigoSeguranca=Enter Code. Mon, ou\n0 = non-existent\n1 = unreadable
As CliSiTef is constantly adding modules and messages, the complete list of translation items can be found in the document "SiTef - Interface Simplificada com a aplicação - Tabela de Mensagens".
#
Tables#
Authorizing Network CodeAuthorizing Network Code | Description |
---|---|
0 | Other, not defined |
1 | Tecban |
2 | ITAÚ |
3 | BRADESCO |
4 | Visanet - Especificação 200001 |
5 | Redecard |
6 | Amex |
7 | SOLLO |
8 | E CAPTURE |
9 | Serasa |
10 | SPC Brasil |
11 | SERASA DETALHADO |
12 | TELEDATA |
13 | ACSP |
14 | ACSP DETALHADO |
15 | TECBIZ |
16 | CDL DF |
17 | Repom |
18 | STANDBY |
19 | EDMCARD |
20 | CREDICESTA |
21 | Banrisul |
22 | ACC CARD |
23 | Clubcard |
24 | ACPR |
25 | Vidalink |
26 | CCC_WEB |
27 | Ediguay |
28 | Carrefour |
29 | Softway |
30 | Multicheque |
31 | Ticket combustível |
32 | YAMADA |
33 | Citibank |
34 | Infocard |
35 | BESC |
36 | EMS |
37 | CHEQUE CASH |
38 | Central Card |
39 | Drogaraia |
40 | OUTRO SERVIÇO |
41 | Edenred |
42 | EPAY GIFT |
43 | Parati |
44 | TOKORO |
45 | Coopercred |
46 | SERVCEL |
47 | Sorocred |
48 | Vital |
49 | SAX FINANCEIRA |
50 | Formosa |
51 | Hipercard |
52 | Tricard |
53 | CHECK OK |
54 | Policard |
55 | Cetelem Carrefour |
56 | LEADER |
57 | Consórcio Credicard Venezuela |
58 | GAZINCRED |
59 | Telenet |
60 | Cheque Pré |
61 | Brasil Card |
62 | Epharma |
63 | Total |
64 | Consórcio Amex Venezuela |
65 | GAX |
66 | Peralta |
67 | SERVIDOR PAGAMENTO |
68 | BANESE |
69 | RESOMAQ |
70 | Sysdata |
71 | CDL POA |
72 | BIGCARD |
73 | DTRANSFER |
74 | VIAVAREJO |
75 | CHECK EXPRESS |
76 | Givex |
77 | Valecard |
78 | Portal Card |
79 | Banpara |
80 | SOFTNEX |
81 | SUPERCARD |
82 | GetNet |
83 | Prevsaude |
84 | BANCO POTTENCIAL |
85 | SOPHUS |
86 | MARISA 2 |
87 | MAXICRED |
88 | BLACKHAWK |
89 | EXPANSIVA |
90 | SAS NT |
91 | LEADER 2 |
92 | SOMAR |
93 | CETELEM AURA |
94 | CABAL |
95 | CREDSYSTEM |
96 | Banco Provincial |
97 | CARTESYS |
98 | CISA |
99 | TRNCENTRE |
100 | ACPR D |
101 | CARDCO |
102 | CHECK CHECK |
103 | CADASA |
104 | PRIVATE BRADESCO |
105 | CREDMAIS |
106 | GWCEL |
107 | CHECK EXPRESS 2 |
108 | GETNET PBM |
109 | USECRED |
110 | SERV VOUCHER |
111 | TREDENEXX |
112 | Bonus Presente Carrefour |
113 | CREDISHOP |
114 | ESTAPAR |
115 | Banco Ibi |
116 | WORKERCARD |
117 | Telecheque |
118 | OBOE |
119 | PROTEGE |
120 | SERASA CARDS |
121 | Hotcard |
122 | Banco Panamericano |
123 | Banco Mercantil |
124 | Sigacred |
125 | Visanet – Especificação 4.1 |
126 | SPTRANS |
127 | PRESENTE MARISA |
128 | COOPLIFE |
129 | BOD |
130 | G CARD |
131 | TCREDIT |
132 | SISCRED |
133 | FOXWINCARDS |
134 | CONVCARD |
135 | Voucher |
136 | EXPAND CARDS |
137 | Ultragaz |
138 | Qualicard |
139 | HSBC UK |
140 | Wappa |
141 | SQCF |
142 | INTELLISYS |
143 | BOD DÉBITO |
144 | ACCREDITO |
145 | COMPROCARD |
146 | ORGCARD |
147 | MINASCRED |
148 | Farmácia Popular |
149 | Fidelidade Mais |
150 | ITAÚ SHOPLINE |
151 | CDL RIO |
152 | FORTCARD |
153 | PAGGO |
154 | SMARTNET |
155 | INTERFARMACIA |
156 | VALECON |
157 | CARTÃO EVANGÉLICO |
158 | VEGASCARD |
159 | SCCARD |
160 | ORBITALL |
161 | ICARDS |
162 | FACILCARD |
163 | FIDELIZE |
164 | FINAMAX |
165 | BANCO GE |
166 | UNIK |
167 | TIVIT |
168 | VALIDATA |
169 | BANESCARD |
170 | CSU CARREFOUR |
171 | VALESHOP |
172 | SOMAR CARD |
173 | OMNION |
174 | CONDOR |
175 | STANDBYDUP |
176 | BPAG BOLDCRON |
177 | MARISA SAX SYSIN |
178 | STARFICHE |
179 | ACE SEGUROS |
180 | TOP CARD |
181 | GETNET LAC |
182 | UP SIGHT |
183 | MAR |
184 | FUNCIONAL CARD |
185 | PHARMA SYSTEM |
186 | MARKET PAY |
187 | SICREDI |
188 | ESCALENA |
189 | N SERVIÇOS |
190 | CSF CARREFOUR |
191 | ATP |
192 | AVST |
193 | ALGORIX |
194 | AMEX EMV |
195 | COMPREMAX |
196 | LIBERCARD |
197 | SEICON |
198 | SERASA AUTORIZ CRÉDITO |
199 | SMARTN |
200 | PLATCO |
201 | SMARTNET EMV |
202 | PROSA MÉXICO |
203 | PEELA |
204 | NUTRIK |
205 | GOLDENFARMA PBM |
206 | GLOBAL PAYMENTS |
207 | ELAVON |
208 | CTF |
209 | BANESTIK |
210 | VISA ARG |
211 | AMEX ARG |
212 | POSNET ARG |
213 | AMEX MÉXICO |
214 | ELETROZEMA |
215 | BARIGUI |
216 | SIMEC |
217 | SGF |
218 | HUG |
219 | CARTÃO CONSIGNUM CARTÃO METTACARD |
220 | DDTOTAL |
221 | CARTÃO QUALIDADE |
222 | REDECONV |
223 | NUTRICARD |
224 | DOTZ |
225 | PREMIAÇÕES RAIZEN |
226 | TROCO SOLIDÁRIO |
227 | AMBEV SÓCIO TORCEDOR |
228 | SEMPRE |
229 | BIN |
230 | COCIPA |
231 | IBI MÉXICO |
232 | SIANET |
233 | SGCARDS |
234 | CIAGROUP |
235 | FILLIP |
236 | CONDUCTOR |
237 | LTM RAIZEN |
238 | INCOMM |
239 | VISA PASS FIRST |
240 | CENCOSUD |
241 | HIPERLIFE |
242 | SITPOS |
243 | AGT |
244 | MIRA |
245 | AMBEV 2 SÓCIO TORCEDOR |
246 | JGV |
247 | CREDSAT |
248 | BRAZILIAN CARD |
249 | RIACHUELO |
250 | ITS RAIZEN |
251 | SIMCRED |
252 | BANCRED CARD |
253 | CONEKTA |
254 | SOFTCARD |
255 | ECOPAG |
256 | C&A AUTOMAÇÃO IBI |
257 | C&A PARCERIAS BRADESCARD |
258 | OGLOBA |
259 | BANESE VOUCHER |
260 | RAPP |
261 | Monitora POS |
262 | SOLLUS |
263 | FITCARD |
264 | ADIANTI |
265 | STONE |
266 | DMCARD |
267 | ICATU 2 |
268 | FARMASEG |
269 | BIZ |
270 | SEMPARAR RAIZEN |
272 | PBM GLOBAL |
273 | PAYSMART |
275 | ONEBOX |
276 | CARTO |
277 | WAYUP |
296 | SAFRA |
301 | CTF Frota |
303 | SIPAG |
#
Flag CodeBelow are some of the values that can be returned in the FieldType 132, through the routine ContinuaFuncaoSiTefInterativo.
The complete list of flag codes is available in the document "Bandeira Padrao SiTef.pdf".
Flag Code | Description |
---|---|
0 | Other, not defined |
1 | Visa (Credit) |
2 | Mastercard (Credit) |
4 | American Express (Credit) |
11 | JCB (Credit) |
10014 | Discovery (Voucher) |
20001 | Maestro (Debit) |
20002 | Visa Electron (Debit) |
20137 | Telenet (Debit) |
#
Supported platformsThe CliSiTefI and CliSiTef libraries are currently available for following platforms:
Operating System | Environments | Architectures |
---|---|---|
Windows | Desktop / Embedded | Intel x86 / x64 |
Windows CE | Embedded/Mobile | Intel x86, |
ARM 32 | ||
Windows Phone | Mobile | ARM 32 |
Mac OS | Desktop | Intel x64 |
Linux | Desktop / Embarcado | Intel x86 / x64, |
ARM 32 (v4, v5tej e v6-Raspberry) | ||
Android | Mobile | Intel x86 / x64, |
Mips, Mips64, | ||
ARMEABI / ARMEABI-v7a | ||
ARM 32 (v7a), | ||
ARM 64 (v8a) | ||
IOS | Mobile | Intel x86 / x64, |
ARM 32 (v7/v7s), | ||
ARM 64 (v8a) |
#
Discontinued routinesOld Routine | New Routine |
---|---|
LeCartaoInterativo | LeCartaoSeguro |
LeCartaoInterativoA | LeCartaoSeguroA |
LeCartaoDireto | LeCartaoDiretoSeguro |
LeCartaoDiretoA | LeCartaoDiretoSeguroA |
LeCartaoDiretoEx | LeCartaoDiretoSeguro |
LeCartaoDiretoExA | LeCartaoDiretoSeguroA |
FinalizaTransacaoSiTefInterativo | FinalizaFuncaoSiTefInterativo¹ |
IniciaFuncaoAASiTefInterativo | IniciaFuncaoSiTefInterativo |
IniciaFuncaoAASiTefInterativoA | IniciaFuncaoSiTefInterativoA |
Comments:
1 -- The function FinalizaFuncaoSiTefInterativo receives one more parameter than its predecessor, FinalizaTransacaoSiTefInterativo (see item 0). If the automation does not need to use this additional parameter, the same must be passed as empty/NULL.
#
Change HistoryDocument Version | Date | CliSiTef minimum version | Description |
---|---|---|---|
26/08/2004 | 0.98.z.8 | Corrected the documentation of parameters in the LeCartaoDiretoExA function | |
0.98.nv.14 | Adjustment in the numbering of the minimum versions and in the descriptive text of the functions and correction of the previous version that was NOT 0.99 | ||
09/09/2004 | 1.00.a.4 | Modified the way of numbering versions. Returned the default form V.VV[.release] | |
Included the generation of unencrypted traces to be used in the development environment | |||
Included CentralCard and InfoCard transactions | |||
09/09/2004 | 1.00.a.5 | Included the necessary field types to handle the collection of telephone numbers for checking checks | |
1.00.to.20 | |||
11/19/2004 | 1.00.a.5 | Return of barcode for which payment was approved | |
1.00.a.42 | |||
12/28/2005 | 1.00.a.5 | Inclusion of TipoCampo 518 and 519 in the value tables for TipoCampo. | |
04/04/2006 | 1.00.a.20 | Inclusion of the possibility of generating open traces to assist in the development of the interface with CliSiTef | |
08/17/2006 | 1.01.a.138 | Now returns SiTef and Authorizing Host NSUs when a top-up transaction is paid by card | |
He started to return the Branch Code that authorized the cell phone recharge | |||
08/11/2006 | ???? | Inclusion of new fields for handling fuel cards (GoodCard and PortalCard). | |
01/15/2006 | 1.01.c.55 | Inclusion only in the EMV FULL version of the possibility of adding a secondary IP in CLISITEF.INI. | |
Trace recording is now enabled by default and the storage period is configurable. | |||
08/17/2007 | Added authorizing network codes to the existing table. | ||
06/02/2008 | 1.01.c.080.1 | Inclusion of TipoCampo 1131 and menus 3063,3064,3065. | |
18/03/2008 | 1.01.c.082.1 | Description of special settings in the ParamAdic parameter. | |
28/03/2008 | 1.01.c.082.2 | Inclusion of TipoCampo 1049. | |
17/07/2008 | 1.01.c.089.1 | Inclusion of fields for the Condor, Starfiche and SEM networks | |
01/06/2009 | 1.01.c.094.57 | Inclusion of special EMS configurations. | |
Inclusion of Qualicard card payment fields. | |||
08/06/2009 | 1.01.c.094.63 | Inclusion of EMS generic authorization. | |
01/07/2009 | 1.01.c.094.71 | Inclusion of the Pharma System network | |
23/07/2009 | 1.01.c.094.31 | Inclusion of the Oboé network | |
23/07/2009 | 1.01.c.94.xx | Inclusion of the Avista network | |
11/08/2009 | 1.01.c.94.xx | Inclusion of the credit sale menu with cash authorization | |
12/08/2009 | 1.01.c.94.105 | Inclusion of the Formosa virtual card. | |
20/08/2009 | 1.01.c.94.109 | Inclusion of the Neus card. | |
27/08/2009 | 1.01.c.94.113 | Inclusion of the Algorix network | |
14/09/2009 | 1.01.c.94.129 | Inclusion of PBM Fidelize | |
09/30/2009 | 1.01.c.94.135 | Inclusion of the CompreMax network | |
07/10/2009 | 1.01.c.94.137 | Inclusion of generic fuel card cancellation | |
01/12/2010 | 1.01.c.94.191 | Inclusion of field 537 (area code of the city of the check) | |
27/01/2010 | 1.01.c.94.195 | Documentation of field 2054 for the CDC Credit type. | |
28/01/2010 | 1.01.c.94.201 | Inclusion of the SQCF network | |
11/02/2010 | 1.01.c.94.207 | Inclusion of the Gridcard Card option | |
06/14/2010 | - | Reserved the Range from 8000 to 9999 for the TipoCampo table for IntPos.dll. | |
07/06/2010 | 1.01.c.94.254 | Inclusion of GetNet withdrawal/withdrawal reversal menus | |
06/08/2010 | 1.01.c.94.259 | Inclusion of the Query Withdrawal function with Saque Banco IBI | |
09/21/2010 | 1.01.c.94.265 | Change in identification of fields Hopi-Hari Product Code (from 2049 to 2120), Hopi-Hari Product Description (from 2050 to 2121), Maximum Quantity of Hopi-Hari products (from 2051 to 2122), Hopi-Hari Products (from 2052 to 2123). | |
10/21/2010 | Included field 3334 (SPTrans Payment) and modalities 700 and 701 (Oi Paggo) | ||
11/11/2010 | 1.01.c.95.13 | Inclusion of FoxWinCards invoice payment/refund, menus 3335 and 3336; Inclusion of RedeAbilitadaFoxWinCards. | |
Inclusion of functions 702 (Bill Payment) and 703 (Benefit Card Payment Cancellation). | |||
06/12/2010 | - | Added descriptions of error codes -43, -50 and -100. Events 5011, 5012 and 5013. | |
28/01/2011 | - | Inclusion of field 2301. | |
Created table of Modalities, for better visualization. | |||
02/18/2011 | Inclusion of fields 2125 and 2126 (HotCard invoice). | ||
11/05/2011 | 4.0.102.3.r1 | Inclusion of fields 3337 to 3352. | |
Inclusion of functions (modalities) Points Redemption (665 modality), Points Issuance (667), Cancel. Issuance Points (668), 669 (Prepaid Load), 670 (Cancel. Prepaid Load) and 680 (Cons. Prepaid Balance) | |||
05/27/2011 | 4.0.102.6.r1 | Parameter EnableTricardRede | |
13/06/2011 | 4.0.102.7.r1 | Inclusion of fields 3339 to 3345. | |
Inclusion of functions (modalities): Sale with Gift Card (modality 15), Gift Balance Consultation (modality 152), Cancellation of Sale with Gift Card (modality 213), Cancellation of Gift Card Recharge (modality 257) and Recharge of Gift Card (mode 264). | |||
07/08/2011 | 4.0.102.9.r1 | Inclusion of field 5501. | |
12/07/2011 | - | Corrected the name of the InfoCard network in enabled networks. | |
01/08/2011 | 4.0.102.10.r1 | Inclusion of the TopCard network and the Generic Invoice Payment transaction (3379) | |
09/22/2011 | 4.0.102.12 r1 | Inclusion of “2:” mode (CMC-7 Typing) in check capture | |
25/10/2011 | 4.0.102.12 r14 | Inclusion of fields 3407 and 3408; Inclusion of the ClubCard Network | |
15/12/2011 | - | Change in the description of field 178 which was wrong. | |
05/09/2012 | 4.0.104.6 b6 | Inclusion of TipoCampo 3409; Inclusion of the Citibank Network | |
14/11/2012 | - | General review of the document; inclusion of parameter types (input/output and value/reference). | |
21/12/2012 | 4.0.106.18 r1 | Parameter HabilitaRedeDotz | |
02/01/2013 | 4.0.106.18 r1 | Inclusion of the description of fields 1 and 2, in addition to the details of field 100. | |
01/18/2013 | 4.0.106.18 r1 | Inclusion of modality 420, type field 2355 and change in the text of field 1122. | |
02/26/2013 | 4.0.106.20 r1 | Inclusion of the ConexaoObrigatoria parameter in the “SiTef” section | |
06/03/2013 | - | Inclusion of TipoCampo 5050 in the events table. | |
03/13/2013 | - | v119 - Editorial review of the PinPad Information item, and field 2355. | |
Included clarifications on the Message Download process. | |||
29/04/2013 | - | v120 – Correction in the description of specific ACSP fields that are returned in other networks, making them generic. | |
14/06/2013 | - | v121 – Inclusion of TipoCampo 2362 and rectification of TipoCampo 131 in the Table of Values | |
17/09/2013 | - | v122 – Correction in the description of TipoCampo 112. | |
(Gift) Included fields 3553, 3554 and 3557 in the menu options table (5.7) | |||
02/10/2013 | - | v123 - Rectification of the field for Cancellation of Gift activation. | |
10/18/2013 | - | v124 – Review of the LeCartaoDireto item. | |
02/01/2014 | - | v125 – Included reference to Translation Table document. | |
01/13/2014 | - | v127 – Moved settings between clisitef and sitef of the “Special Settings” document, now extinct. | |
Note about the need to call the ConfiguraIntSiTefInterativo(Ex) routine. | |||
Included functions 770, 771 and 772 for loading pinpad tables. | |||
Included function 775 (pinpad information) | |||
29/01/2014 | 4.0.111.3 r1 | v128 – Included ‘AUTO_USB’ pinpad port configuration for Windows platform. | |
11/02/2014 | 4.0.111.4 r1 | Inclusion of the Consignum network | |
02/27/2014 | - | Updated description of field 3014. | |
02/04/2014 | Updated error codes returned by routines. | ||
04/03/2014 | Inclusion of field 2369 (Brazilian Card). | ||
04/09/2014 | Inclusion of the description for the 205x field and differentiation between it and the 203x field, as both are fields referring to Hash. | ||
05/14/2014 | Change in the description of Type Field 1190 from Off-Line Goal Embossment to Embossment (last 4 digits) of the card. | ||
06/10/2014 | Change in the description of Type Field 110. | ||
06/17/2014 | Update of the Authorizing Networks Code Table. | ||
23/06/2014 | 4.0.111.16 r1 | Change in the configuration from HabilitaRedeConsignum to HabilitaRedeMettacard, as the Consignum authorizer is now called Mettacard. | |
07/22/2014 | Included LeTrilhaChipInterativo functions and ASCII derivations | ||
18/08/2014 | 4.0.111.18 r1 | Change in the description of item 4.1.1 for configuring the pinpad for automatic USB port recognition. Before version 4.0.111.18 r1, it was only enabled for Windows. From this version onwards it also allows configuration for Linux 32, starting with kernel 2.6. | |
08/21/2014 | Inclusion of TipoCampo 1321. | ||
08/28/2014 | - Inclusion of configuration to carry out transactions with a fuel card forcing the network (for example FitCard). | ||
- Inclusion of return -21 for possible return codes. Item 3.2.1. | |||
05/09/2014 | Inclusion of Type Fields 3270, 3271 and 3272 which are menu options for TrnCentre PBM. | ||
11/09/2014 | Updating the list of enabled networks. | ||
23/09/2014 | Details of functions/modalities 10 and 11 including information that is specific to the Wappa network. | ||
10/16/2014 | Removed legacy fields 141 and 142. | ||
10/29/2014 | Included modalities/functions 675 and 676. | ||
10/31/2014 | Inclusion of the LeCartaoDiretoSeguroEx and LeCartaoDiretoSeguroExA routines. | ||
11/28/2014 | Updated description of field 731. | ||
02/24/2015 | Inclusion of the reprint menu specific to others 3675. | ||
26/03/2015 | 4.0.112.26 r1 | Inclusion of modality 658 to be able to carry out the Credit Withdrawal transaction directly. | |
Inclusion of fields 5027, 5028, 5029, 5030, 5031, 5036, 5037, 5038, 5039, 5040, 5041, 5042, 5043, 5044 in the event table. | |||
09/04/2015 | Inclusion of fields 587 and 588, will be returned in recharge transactions. | ||
04/15/2015 | Inclusion of the Loyalty Card payment method to the TipoCanpo 100. | ||
05/27/2015 | Inclusion of menu codes 3624, 3625 and 3626. | ||
Inclusion of item 3.18 Loading Tables on PinPad without changing Automation; | |||
Inclusion of item 4.1.2 Configuration when Automation does not use a pinpad; | |||
Inclusion of item 4.2.7 How to pass a new transaction purchase value on CliSiTef | |||
29/05/2015 | Inclusion of item 4.1.3 Configuring a second pinpad | ||
08/27/2015 | Clarification for item 3.4, Payment Confirmation or Not. The transaction confirmation must have the same tax coupon number and the same date as the transaction carried out to be confirmed successfully. | ||
14/09/2015 | 4.0.112.42 r1 | - Inclusion of configuration to carry out transactions with Gift cards forcing the network (for example Condor). | |
01/10/2015 | - Inclusion of fields 2467, 2468 and 2469. | ||
10/19/2015 | - Inclusion of topic Specific Prefix Sent by Automation | ||
11/10/2015 | 4.0.112.45 r1 | Additional notes for defining the control file storage folder. | |
Inclusion of settings for rotating trace. | |||
11/11/2015 | - Inclusion of Supported Platforms topic. | ||
02/12/2015 | Changing the description of fields 3720, 3721, 3722, 3723 | ||
12/10/2015 | Updated Gift Card transaction - Type 262, exclusive use of Carrefour. | ||
12/14/2015 | Change in the maximum size for field 134 from 15 to 20. | ||
01/14/2016 | Inclusion of TipoCampo 2470 and item 4.2.8 Floating point | ||
21/01/2016 | Inclusion of the card expiration date format (YYMM) returned by the LeCartaoDiretoSeguro routine. | ||
02/03/2016 | Rectification in the item How the automation informs CliSiTef that it knows how to treat floating point fields. | ||
05/02/2016 | Change in item How automation tells CliSiTef that it knows how to handle floating point fields | ||
02/24/2016 | Included “Observation” in the treatment of command 23 (item 3.3.1) | ||
03/09/2016 | Inclusion of: Cancellation Menu Withdrawal Credit Transfer (3307), Cash Credit Option Menu Redemption Points (3261) and NFCE Authorization Number field (952). | ||
03/22/2016 | Inclusion of the FinalizaFuncaoSiTefInterativo function to the detriment of FinalizaTransacaoSiTefInterativo; Added explanation about additional parameters from the first. | ||
03/24/2016 | Change in the description of the IdTerminal field of the ConfiguraIntSiTefInterativo function, including important observations. | ||
05/04/2016 | TypeField 596 and 596 have been made obsolete. | ||
15/0/2016 | 4.0.113.12.r2 | Inclusion of modalities 117 – Pre-authorization adjustment and 118 - Pre-authorization consultation. | |
06/14/2016 | Update item 5.6. Included Cielo transactions (3323, 3653, 3654 and 3655) | ||
08/19/2016 | Update 5.7, improving the description of the CodigoCliente configuration. | ||
09/31/2016 | Changes ref. implementation of the modalities below: | ||
- Modalities: | |||
430 – Le Cartão Seguro (LeCartaoSeguro) | |||
431 – Le Trilha Chip Seguro (LeTrilhaChipEx) | |||
- Added “Note” to the item: | |||
3.8 Card reading - secure capture routines | |||
- Inclusion of fields: | |||
FIELD_MESSAGE_PINPAD 2601 | |||
FIELD_SEED_HASH 2602 | |||
FIELD_MODALITY_LECARD_INSURANCE 2603 | |||
02/09/2016 | Inclusion of modality 354 Ultragaz Revenda, Menus 3900, 3901, 3902. Type Field 4076 (Store Identification). | ||
09/27/2016 | 5.0.114.6 r1 | . Inclusion of Modality for Insurance Subscription - 422. | |
. Inclusion of TipoCampos 3742 (Tricard Insurance Subscription Menu) and 3746 (Tricard Balance Inquiry Menu). | |||
10/10/2016 | Inclusion of parameters that enable payment in installments in transactions that have linked payment | ||
07/11/2016 | . Inclusion of modality 908 (change of fuel debit password). | ||
11/11/2016 | 5.0.114.13 r1 | Inclusion of menus 3744 (Credit card recharge) and 3745 (Credit card recharge cancellation). | |
6.1.114.13 r1 | Inclusion of functions 899 (Credit card recharge) and 900 (Credit card recharge cancellation). | ||
09/01/2017 | Insertion of “TipoCampos” for processing the registered bill: | ||
- 4095 CPF/CNPJ Transferor; | |||
- 4096 CPF/CNPJ Drawer; | |||
- 4097 CPF/CNPJ Payer. | |||
02/17/2017 | Increased the size of the track2 return field in LeCartaoSeguro*, from 64 to 80. | ||
04/04/2017 | Inclusion of pre-authorization change transaction modality and menu. | ||
04/04/2017 | Inclusion of IMPERATIVE PREREQUISITE AFTER INSTALLING THE .CHA FILE ON SITEF in item 3.8 Card reading - secure capture routines. | ||
05/04/2017 | Correction in observation IMPERATIVE PREREQUISITE AFTER INSTALLING THE .CHA FILE ON SITEF in item 3.8 Card reading - secure capture routines. | ||
04/27/2017 | Inclusion of TipoCampo 4058 | ||
24/05/2017 | Inclusion of configuration for Vero Typed Debit (VeroPay) in item 5.8. | ||
05/25/2017 | In item 1.1 Brief Description Initial step The terminal identification formatting rule two letters + 000 + Sales Terminal number is no longer mandatory | ||
06/06/2017 | In item 5.7, “CodigoCliente” functionality, the number of digits allowed for the field was changed from 31 to 32 digits. To this end, there will be a change in gerpdv. There is no change to CliSiTef. | ||
06/09/2017 | Inclusion of a list of pinpads that support AUTO_USB configuration in Item “4.1.1 Port configuration”. | ||
06/22/2017 | Included error “-13” and observation in the IniciaFuncaoSiTefInterativo function about replacing the current sales data when starting a new transaction. | ||
07/12/2017 | 5.0.114.31 r1 | Update regarding “Electronic Tax Document” | |
6.1.114.31 r1 | Item inclusion: | ||
3.2.3 Additional Parameters | |||
Items update: | |||
3.1.1 General special settings | |||
3.11 Banking Correspondent (Bill Payment) | |||
5.7 Enabling special settings per transaction | |||
08/08/2017 | Editorial review | ||
09/08/2017 | In item 6.11 (former item 5.7), “CodigoCliente” functionality, the number of digits allowed for the field changed from 31 to 36 digits. There was no change in CliSiTef. There is a need for gerpdv to have the minimum version 5.0.0.30/6.1.3.30 (from 08/04/2017) which was the version where the change was made to accept the 36 digits of the Customer Code. In addition, SiTef Web must also be updated to correctly display the 36-digit field. | ||
08/18/2017 | Edited the name of TipoCampo 4095 from Assignor to Beneficiary. | ||
08/23/2017 | Inserted Modality 928 – Cancellation of Payment of Forced Network Debit Card. | ||
08/25/2017 | Moved field codes for specific documents: ACSP, Aura, Conductor/Softway, SmartNet, Ticket Car, Prepaid Cell Phone Recharge | ||
10/11/2017 | Updating the event table | ||
14/11/2017 | The Self-Service functions IniciaFuncaoAASiTefInterativo and IniciaFuncaoAASiTefInterativoA have been made obsolete. | ||
14/11/2017 | 6.1.114.40 r1 | Change in the treatment of confirmations, allowing consultation of pending issues in previous tax documents. | |
Added modalities 130 (query of all pending issues in the terminal) and 131 (query of pending issues in a specific tax document). | |||
TipoCampo 210 – Number of pending transactions in the terminal | |||
TypeField 211 – “Function” code of the transaction. | |||
01/10/2018 | Added comment in field 2355 | ||
23/01/2018 | Changed reference to HSBC name to Corban SE | ||
03/26/2018 | Improvement in explanations about payment method restrictions. | ||
02/04/2018 | Inclusion of IATA Menus (in cash, estab installments and admin installments) | ||
06/15/2018 | Inclusion of types 3 and 4 in ParmsClient | ||
06/27/2018 | Change in Pinpad port information | ||
07/25/2018 | Inclusion of the FinalizaFuncaoSiTefInterativoA function | ||
04/09/2018 | Details of field 2090 (card type read) including additional information about contactless cards and NFC applications. | ||
03/10/2018 | Greater detail of the fields: 161, The entire range from 800 to 849, 950, 951,953, 1002, 1003, 2364, 4100, 5049 and 5074. | ||
12/12/2018 | Inclusion of observation about field 2124 (Amount of the Cell Phone Recharge Fee). | ||
12/17/2018 | Removed exclusivity description of TipoCampo 2321 (Customer Code) for CorBan. TipoCampo was already in use by non-CorBan 19, 29 and 782 modalities. | ||
21/01/2019 | Created 3 new fields to indicate whether Customer/Establishment coupons will be available to be consulted, or reprinted, via back office, and the number of days they will be stored | ||
(first used by Drogaria São Paulo) | |||
03/12/2019 | Inclusion of modality 17 (Credit for payment of booklet) and field 2363 (indicates that a Credit for Payment of Carnet transaction was carried out). | ||
05/10/2019 | Inclusion of fields 3772, 3773, 3774 and 4077 | ||
05/23/2019 | Inclusion of PinPads: Gertec PPC930, Ingenico Lane3000 and VERIFONE P200 in the list of pinpads that support AUTO_USB configuration | ||
05/06/2019 | Inclusion of fields 2925 and 2965 | ||
07/06/2019 | Inclusion of field 3152: Payment of Senff Account with Change (formerly: Parati) | ||
18/06/2019 | 6.2.115.30 r1 | Exclusion of field 3152: Payment of Senff Account with Change (formerly: Parati). | |
The solution was redone as follows: Created the HabilitaColetaFormaPagSenff key in the [PagamentoFaturaGenerico] section - when turned on, change will be processed. | |||
06/26/2019 | Inclusion of code 05 (Crediário) in the description of the TipoCampo (100). | ||
07/11/2019 | Deletion of field 3774; fields 3772 and 3773 became exclusive to the Coopercred Network; included 3236, 3237, 3238 and 3239 | ||
07/16/2019 | Change of document: item 11.2. | ||
- Reference to the document “Bandeira Padrao SiTef.pdf”. | |||
07/23/2019 | 6.2.115.31 r4 | Included description of the additional parameter “CPFColetado” in section 6.7. | |
Initially intended for use in transactions with Digital Wallets, the need arose for use in transactions with other products | |||
30/072019 | Included description of the Field 2699 type, used by the SQCF module. Indicates whether the transaction is a Gift Activation/Recharge. | ||
02/08/2019 | Inclusion of menus 3988 and 3989. | ||
VRS 228 | 08/10/2019 | 6.2.115.35.r1 | Inclusion of configuration 3989 and changed Neus network to Market Pay. |
VRS 229 | 02/03/2020 | Adjustment of the maximum number of server addresses allowed to 4. | |
VRS 230 | 02/21/2020 | · It has become relevant to inform HoraFiscal when calling the IniciaFuncaoSiTefInterativo function. | |
· Included details and more information about the need for Tax Coupons to be a growing number. | |||
VRS 231 and 232 | 09/03/2020 | 7.0.116.5.r1 | Amended section 6.8 - Credit/debit transactions with cards without BIN. Creation of [SaqueCredito] and [SaqueDebito]. |
In version 232, adjustments were made to the text regarding the changes described above. | |||
VRS 233 | 03/27/2020 | Created additional parameter to indicate payment division between a maximum of five companies. Changed item 6.7 - Enabling special settings per transaction. | |
VRS 234 | 03/04/2020 | Correction of return code -43 when an error occurs in the PIN pad routines (it has been deleted) | |
Added the minimum version of CliSiTef for P200 with AUTO_USB | |||
Some table formatting and some spelling corrections. | |||
VRS 235 | 04/27/2020 | Inclusion of menu code 3481. | |
VRS 236 | 05/26/2020 | Inclusion of the SAFRA Authorization network code (296) and SIPAG (303). Changed description of code 296 from FIRST DATA to BIN | |
VRS 237 | 03/09/2020 | 7.0.116.17.r2 | Inclusion of field 4158, making it possible to restrict this option from the Administrative menu. |
VRS 238 | 03/09/2020 | Inclusion of the description of fields 2974,2975,2976. | |
VRS 239 | 10/27/2020 | Documentation of modality 698 (Debit Withdrawal) | |
VRS 240 | 03/05/2021 | Update of item 5.4.3 of the description of fields 731 and 732, including new Ids for the NFPAG prefix. Main motivation: information on transactions for Pix and Digital Wallets. | |
VRS 241 | 05/14/2021 | Inclusion of the description of the LeTeclaPinPad and EscreveMensagemPinPad routines. | |
VRS 242 | 21/05/2021 | 7.0.117.11.r1 | Inclusion of new payment methods in item “6.6 Table of payment method codes, settings and menus”: 4162 and 4163. |
VRS 243 | 05/08/2021 | Inclusion of a menu option in item “6.6 Table of payment method codes, settings and menus”. | |
- 4192: Enables the “Bradescard Partnerships” option in the credit sale cancellation menu. | |||
VRS 244 | 03/09/2021 | Inclusion of a menu option in item “6.6 Table of payment method codes, settings and menus”. | |
- 4193: Enables the “Banco Ibi” option in the credit sales menu. | |||
- 4194: Enables the “Banco Ibi” option in the Credit Sales Cancellation menu. | |||
VRS 245 | 09/21/2021 | Removed the menu option in item “6.6 Table of payment method codes, settings and menus”. | |
- 4192: Enables the “Bradescard Partnerships” option in the credit sale cancellation menu. This option should not be used (It has been cancelled). | |||
VRS 246 | 01/08/2021 | Inclusion of function codes 943 and 944. | |
VRS 247 | 08/11/2021 | Correction in the description of the SPLITPAY prefix | |
VRS 248 | 01/02/2022 | 7.0.117.41.r3 | Inclusion of direct modalities to transact directly with the Quality card (ICI Card): 28 (Sale) and 101 (Cancellation). |
- See specific product documents for other product codes function↩
- See item 5.11 - PinPad Information for more information information.↩
- See item 5.12 - Loading Tables in PinPad for more information information.↩
- See specific product documents for other product codes field.↩
- See specific product documents for other code numbers. networks↩
- See specific product documents for other code numbers. restrictions↩