SPI  1.2101.8
Secured Payment Interface
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Pages
CPP_Examples.cpp

This file conatins examples on how to use various methods in SPI.

Author
Ido Algom
Date
1/12/2017
#include "SPI.h"
{
if (AshraitServiceHandle != NULL && AshraitServiceHandle->GetServiceStatus() == SPI_READY ) {
Modularity::SPI::AshraitEMVTransaction TranObj(12000,"your_string", Curr_Shekel);
TranObj.SetPinpadId(1);
AshraitServiceHandle.DoTransaction((Transaction*)&TranObj);
if (TranObj.GetTransactionResultCode() == 0) {
std::vector<ReceiptLine> MerchentReceipt = TranObj.GetMerchentRecipt();
}
}
return 1;
}
{
Modularity::SPI::SPI PaymentInterface;
Modularity::SPI::Service *AshraitServiceHandle;
string Version;
PaymentInterface.GetSPIVersion(Version);
if ( (AshraitServiceHandle = PaymentInterface.GetServiceHandler("AshraitEMV")) == NULL)
AshraitServiceHandle = PaymentInterface.AddService("AshraitEMV", Modularity::SPI::Config() )
if (AshraitServiceHandle == NULL)
return -1;
AshraitServiceHandle->Init("Machine_Serial_Number");
if (AshraitServiceHandle->GetServiceStatus() == SPI_STATUS::SPI_NOT_ESTABLISHED)
AshraitServiceHandle->DoEstablishment("0880700");
else if (AshraitServiceHandle->GetServiceStatus() == SPI_STATUS::SPI_NOT_READY)
{
std::string ReportResult;
AshraitServiceHandle->EndOfDay(&ReportObject);
if (ReportObject.GetPrintableString(ReportResult) == SPI_SUCESS)
std::cout << ReportResult;
}
if (AshraitServiceHandle->GetServiceStatus() == SPI_STATUS::SPI_READY)
std::cout << "Ready to use";
return 0;
}