OpenBravo with CreditCall EMV integration

 

Client Configuration

 

 

 

<?xml version=”1.0″ encoding=”utf-8″?>

<!–File should be named client.config.xml and placed in same directory as client sample –>

<ChipDnaClient version=”1.0.0″>

<!– Must match Terminal attribute posid in server config –>

<PosId>Till1</PosId>

<!– Key can be obtained from gateway control pannel –>

<ApiKey>32X322S8dzvC565F62hfGD548FMkZ674</ApiKey>

<!– Must match socket tag from server config–>

<Server>127.0.0.1:1869</Server>

</ChipDnaClient>

 

 

 

 

 

  1. PaymentPanelEMV.java

 

package com.openbravo.pos.payment;

 

  1. PaymentGatewayFac.java

package com.openbravo.pos.payment;

 

  1. PaymentGatewayCreditCall.java

package com.openbravo.pos.payment;

 

  1. JPanelConfigPayment.java

com.openbravo.pos.config;

 

  1. CreditCall.java

com.bm.pos.payment;

 

 

 

 

 

 

StartPOS.java

 

 

Pos_message.properties

label.emvterminalid=Terminal ID

lable.emvserverip=Server IP

 

 

For the signature integration;

 

 

 

PaymentPanelEMV.java

 

if (transactionFinishedEvent == true && (resetMsg != null && (resetMsg.indexOf(“UPDATE:Removed”) != -1 || resetMsg.indexOf(“SIGNATURE_CAPTURED”) != -1))) {

 

CreditCall.java

if (item.getKey().equals(ParameterKeys.SignatureCaptured) && item.getValue().equals(“True”)) {

retrunValues = retrunValues+”SIGNATURE_CAPTURED”;

 

 

server config example for Ingenico-iSC250-RBA

 

-<Terminal posid=”KINGT2″>

-<PaymentDevices>

-<PaymentDevice>

<Model>Ingenico-iSC250-RBA</Model>

<!– comment out previous line and uncomment one of the following lines for different terminal support –>

<!–Model>Ingenico-iSC250-RBA</Model–>

<!–Model>VeriFone-Mx915-XPI</Model–>

<!–Model>VeriFone-Vx820-XPI</Model–>

<!– id is located on the back of the device, typically looks like 2216340PT015555–>

<Id>xxxxx</Id>

<Protocol>serial</Protocol>

<Port>COM5</Port>

<Baudrate>115200</Baudrate>

<Parity>none</Parity>

<Stopbits>1</Stopbits>

<Databits>8</Databits>

<StandbyMessage>Kaaa</StandbyMessage>

</PaymentDevice>

</PaymentDevices>

</Terminal>

 

MAke sur eto have proper com port number

Java::How to read a xml format of blob data from the mysql database

If you would like to read a blob data from JAVA, there would be many ways. However, if the data is XML format of properties, then you can follow below simple coding to excise in your programming.  First, you have to make blob data into byte array stream. Then, it should be load as a properties by using loadFromXML that will simplify your whole process to get your XML format of BLOB data.

 

import java.io.ByteArrayInputStream;
import java.io.IOException;
import java.sql.Blob;
import java.sql.SQLException;
import java.util.Properties;

public class Utils {

public static Properties getPropertyFromBlob(Blob blob){

Properties p = new Properties();

try {

if(blob != null){

int blobLength =(int) blob.length();
byte[] readbb = blob.getBytes(1, blobLength);
if( readbb !=null){
p.loadFromXML(new ByteArrayInputStream(readbb));
}
//release the blob and free up memory. (since JDBC 4.0)
blob.free();

}

} catch (SQLException sqle){

} catch (IOException ioe){

}

return p;

}

}

 

private void processPropertyBlob(Blob propertyBlob, Product product){

Properties productAttributes;

productAttributes = Utils.getPropertyFromBlob(propertyBlob);

if(productAttributes != null && product != null){

if(productAttributes.getProperty(“COLOR”) != null)
product.setAttributeColor(productAttributes.getProperty(“COLOR”));

}

}

error: Content is protected !!