}
public PaymentInfo newPaymentInfo(Order order, String transactionId, String authorisationId, String bankResponseCode) throws ServiceException {
LOGGER.info(MessageFormat.format("saving payment transactionId[{0}] authId[{1}] bankCode[{2}] for order : {3}"
, new Object[] {transactionId, authorisationId, bankResponseCode, order})
);
PaymentInfo paymentInfo = (PaymentInfo) DaoFactory.getPaymentInfoDao().newHandledObject();
paymentInfo.setOrder(order);
paymentInfo.setTransactionId(transactionId);
paymentInfo.setBankResponseCode(bankResponseCode);
paymentInfo.setAuthorisationId(authorisationId);
try {
DaoFactory.getPaymentInfoDao().save(paymentInfo);
LOGGER.info("payment registered");
return paymentInfo;
} catch (DaoException e) {