SPI  1.2111.4
Secured Payment Interface
AshraitEMVTransaction.h
Go to the documentation of this file.
1 
13 #ifndef __ASHRAITEMVTRANSACTION_H__
14 #define __ASHRAITEMVTRANSACTION_H__
15 
16 #include <iostream>
17 #include <string>
18 #include <cstring>
19 #include <vector>
20 
21 #include "SPIDEF.h"
22 #include "transaction.h"
23 
24 using std::string;
25 using std::vector;
26 
27 namespace Modularity {
28  namespace SPI {
34  public:
38 
70  SPILIBRARY_API AshraitEMVTransaction (AmountType Amount, string VendorUID, CurrencyType Currency);
71 
89  SPILIBRARY_API SPI_RET_VAL SetAsCNPTransaction (Ashrait::CardNotPresentType Type, string CardNumber, string Exp, string CVV, string ID, std::string Address, std::string City, std::string ZipCode);
90 
101  SPILIBRARY_API SPI_RET_VAL SetAsInternetTransaction (Ashrait::ECIType ECI, string CAVVUCAF, string XID, string CAP_DPA);
102 
108  SPILIBRARY_API void SetCVV(std::string CVV);
109 
115  SPILIBRARY_API void SetCardHolderId(std::string CardHolderId);
116 
123  SPILIBRARY_API SPI_RET_VAL SetMSRData(std::string Data);
124 
131  SPILIBRARY_API SPI_RET_VAL SetAsRefund ();
132 
140  SPILIBRARY_API SPI_RET_VAL SetAsCashback (AmountType CashbackAmount);
141 
148  SPILIBRARY_API SPI_RET_VAL SetAsCash ();
149 
158  SPILIBRARY_API SPI_RET_VAL SetAsChargePrepaid (Ashrait::IPayType Type, AmountType UnitsAmount = 0);
159 
167  SPILIBRARY_API SPI_RET_VAL SetAsUnChargePrepaid (Ashrait::IPayType Type);
168 
180  SPILIBRARY_API SPI_RET_VAL SetAsSingleStandingPayment (std::string OriginUID, PaymentType PaymentIndex, std::string SolekAuthNum, std::string IssuerAuthNum, AmountType Commision = 0);
181 
194  SPILIBRARY_API SPI_RET_VAL SetAsSingleStandingPayment (std::string OriginUID, AmountType TotalAmount, PaymentType PaymentIndex, std::string SolekAuthNum, std::string IssuerAuthNum, AmountType Commision = 0);
195 
208  SPILIBRARY_API SPI_RET_VAL SetAsSingleStandingPayment (std::string OriginUID, PaymentType TotalNumberOfPayments, PaymentType PaymentIndex, std::string SolekAuthNum, std::string IssuerAuthNum, AmountType Commision = 0);
209 
217  SPILIBRARY_API SPI_RET_VAL SetAsCreditTransaction (PaymentType NoOfPayments);
218 
228  SPILIBRARY_API SPI_RET_VAL SetAsPaymentsTransaction (PaymentType NoOfPayments, AmountType First, Ashrait::PaymentLinked Link);
229 
236  SPILIBRARY_API SPI_RET_VAL SetAsSpecialCredit ();
237 
244  SPILIBRARY_API SPI_RET_VAL SetAsImmediateCredit ();
245 
253  SPILIBRARY_API SPI_RET_VAL SetAsIPayTransaction (AmountType MoneyAmount);
254 
262  SPILIBRARY_API SPI_RET_VAL SetAsIPayTransaction (PercentType Percents);
263 
273  SPILIBRARY_API SPI_RET_VAL SetAsIPayTransaction (Ashrait::IPayType Type, AmountType MoneyAmount, AmountType UnitsAmount);
274 
286  SPILIBRARY_API SPI_RET_VAL SetForeignCurrency (CurrencyISOType ISOCode, AmountType ConversionAmount, RateType ChangeRate);
287 
295  SPILIBRARY_API SPI_RET_VAL SetIsracardGift (std::string OfferCode, std::string GiftNumber);
296 
303  SPILIBRARY_API SPI_RET_VAL SetOfferCode(std::string OfferCode);
304 
311  SPILIBRARY_API SPI_RET_VAL SetTip (AmountType TipAmount);
312 
319  SPILIBRARY_API SPI_RET_VAL SetDeferMonths (MonthType Months);
320 
328  SPILIBRARY_API SPI_RET_VAL SetDueDate (std::string DueDateYYMMDD);
329 
336  SPILIBRARY_API SPI_RET_VAL SetToForceOfflineApproval ();
337 
343  SPILIBRARY_API SPI_RET_VAL SetToForceOnlineAuthorization ();
344 
351  SPILIBRARY_API SPI_RET_VAL SetAsSelfService ();
352 
361  SPILIBRARY_API SPI_RET_VAL SetFullAddress (std::string Address, std::string City, std::string ZipCode);
362 
369  SPILIBRARY_API SPI_RET_VAL SetZipCode (std::string ZipCode);
370 
379  SPILIBRARY_API SPI_RET_VAL SetAsPreAuthorization ();
380 
389  SPILIBRARY_API SPI_RET_VAL CompletePreAuthorization (std::string UID);
390 
397  SPILIBRARY_API SPI_RET_VAL SetAuthorizationNumber (std::string AuthNumber);
398 
411  SPILIBRARY_API SPI_RET_VAL SetAsPetrol(Ashrait::GasolineType GasolineType, AmountType GasolineLiter, AmountType OilLiter,
412  AmountType OilAmount, AmountType Speedometer, std::string CarNumber, AmountType Service);
413 
420  SPILIBRARY_API void SetDisplayLanguage(SPILanguage Language);
421 
427  SPILIBRARY_API void SetAdditionalInformation(std::string Information);
428 
435  SPILIBRARY_API SPI_RET_VAL SetSystemTrace(std::string SystemTrace);
436 
443  SPILIBRARY_API void SetPaymentAggregatorValue(std::string Key, std::string Value);
444 
451  SPILIBRARY_API void SetCustomData(std::string Key, std::string Value);
452 
457  SPILIBRARY_API void SetSubRetailer(std::string SubRetailer);
458 
464  SPILIBRARY_API void SetZData(UnsignedNumericType ZData);
465 
471  SPILIBRARY_API void SetMutav(std::string Mutav);
472 
473 
474 
475 
479 
498  SPILIBRARY_API AshraitEMVTransaction (std::string VendorUID, Ashrait::VirtualReason Virtual);
499 
509  SPILIBRARY_API SPI_RET_VAL SetAsSwipeData (PPIDType DeviceId, std::vector<std::string> DisplayMessages, TimeOutType TimeOutSeconds);
510 
518  SPILIBRARY_API SPI_RET_VAL SetAsCancelTransaction (std::string OriginalUID);
519 
528  SPILIBRARY_API SPI_RET_VAL SetAsCancelPreAuthorization (std::string OriginalUID);
529 
536  SPILIBRARY_API SPI_RET_VAL SetBalaceData (Ashrait::IPayType Type);
537 
547  SPILIBRARY_API SPI_RET_VAL SetAsGenerateStandingOrder (AmountType TotalAmount, FrequencyType Freq);
548 
555  SPILIBRARY_API SPI_RET_VAL SetAsGenerateStandingOrder (PaymentType TotalNumberOfPayments, FrequencyType Freq);
556 
564 
572  SPILIBRARY_API SPI_RET_VAL SetSettelmentRecord(string Record, string UID);
573 
581  SPILIBRARY_API SPI_RET_VAL SetAsCardless();
584 
589 
596  SPILIBRARY_API SPI_RET_VAL SetLoyaltyAmount(AmountType Amount);
597 
602  SPILIBRARY_API std::vector<Ashrait::CreditTerms> GetAvilibleCreditTerms() const;
603 
608  SPILIBRARY_API PaymentType GetMinimumCreditPaymentsAvilible() const;
609 
614  SPILIBRARY_API PaymentType GetMaximumCreditPaymentsAvilible() const;
615 
620  SPILIBRARY_API AmountType GetMinimumAmountForCreditPayment() const;
621 
626  SPILIBRARY_API PaymentType GetMaximumPaymentsAvilible() const;
627 
634  SPILIBRARY_API void GetSolekInformation(std::string &Name, std::string &BusinessNumber, std::string &PhoneNumber) const;
635 
641  SPILIBRARY_API bool IsClub() const;
642 
648  SPILIBRARY_API bool IsPrepaid() const;
649 
655  SPILIBRARY_API bool IsCombinedCard() const;
656 
657 
662  SPILIBRARY_API string GetClubNumber() const;
663 
670  SPILIBRARY_API string GetIsracardClubNumber() const;
671 
672 
673 
678  SPILIBRARY_API string GetIsracardGroup() const;
679 
686  SPILIBRARY_API bool IsCvvRequiered() const;
687 
694  SPILIBRARY_API bool IsCardHoderIdRequiered() const;
695 
696 
700 
705  SPILIBRARY_API bool WasSuccessful () const;
706 
720  SPILIBRARY_API std::vector<ReceiptLine> GetMerchentRecipt () const;
721 
733  SPILIBRARY_API std::vector<ReceiptLine> GetCustomerRecipt () const;
734 
739  SPILIBRARY_API bool WasPhase1 () const;
740 
747  SPILIBRARY_API string GetUID () const;
748 
754  SPILIBRARY_API std::string GetSolekAuthNum () const;
755 
761  SPILIBRARY_API std::string GetIssuerAuthNum () const;
762 
768  SPILIBRARY_API Ashrait::AuthCodeIssuer GetAuthCodeIssuer() const;
769 
776  SPILIBRARY_API std::string GetSystemTraceNum() const;
777 
784  SPILIBRARY_API std::string GetSwipeData () const;
785 
791  SPILIBRARY_API std::string GetMaskedPan () const;
792 
798  SPILIBRARY_API std::string GetMaskedPanOriginalLength() const;
799 
804  SPILIBRARY_API std::string GetCardExpiryDate() const;
805 
811  SPILIBRARY_API std::string GetCardName() const;
812 
817  SPILIBRARY_API std::string GetTokenizedPAN() const;
818 
819 
825  SPILIBRARY_API std::string GetRRN () const;
826 
831  SPILIBRARY_API Ashrait::Solek GetSolek () const;
832 
837  SPILIBRARY_API Ashrait::Mutag GetMutag () const;
838 
843  SPILIBRARY_API Ashrait::Manpik GetManpik () const;
844 
850  SPILIBRARY_API Ashrait::PanEntryMode GetPanEntryMode () const;
851 
857  SPILIBRARY_API Ashrait::CreditTerms GetCreditTerms () const;
858 
864  SPILIBRARY_API Ashrait::TransactionType GetTranType () const;
865 
871  SPILIBRARY_API std::string GetCompanyBussinessNumber () const;
872 
880  SPILIBRARY_API PaymentType GetNoOfPayments () const;
881 
889  SPILIBRARY_API AmountType GetFirstPayment () const;
890 
897  SPILIBRARY_API AmountType GetNotFirstPayment () const;
898 
904  SPILIBRARY_API AmountType GetTip () const;
905 
915  SPILIBRARY_API void GetBalanceInformation (std::string & OutputBalance, boolean & MustPrint, boolean & MustShow) const;
916 
921  SPILIBRARY_API ExtendedEMVStatus GetExtendedEMVStatus() const;
922 
930  SPILIBRARY_API Ashrait::MissingEventType GetMissingEvent() const;
931 
936  SPILIBRARY_API std::string GetToken() const;
937 
942  SPILIBRARY_API std::string GetSettelmentRecord() const;
943 
944 
949  SPILIBRARY_API AmountType GetAuthorizedAmount() const;
950 
956  SPILIBRARY_API std::string GetPaymentAggregatorValue(std::string Key) const;
957 
962  SPILIBRARY_API std::string GetMutav() const;
963 
968  SPILIBRARY_API std::string GetMiniSettelemntAckNumber() const;
969 
974  SPILIBRARY_API std::vector<std::string> GetMiniSettelemntTransactions() const;
975 
978 
981  SPILIBRARY_API ~AshraitEMVTransaction();
982 
986  APIHandle GetAshEMVHandle() const;
987  private:
988  APIHandle AshraitEMVHandle;
990  };
991  }
992 }
993 
994 #endif
SPILIBRARY_API SPI_RET_VAL SetAsSpecialCredit()
Set transaction with special credit-terms.
SPILIBRARY_API SPI_RET_VAL SetSettelmentRecord(string Record, string UID)
Setelment transaction in Mastermode.
SPILIBRARY_API SPI_RET_VAL SetAsCreditTransaction(PaymentType NoOfPayments)
Set transaction with Credit credit-terms. Division is mady by SHVA.
SPILIBRARY_API std::string GetSettelmentRecord() const
Get the transaction record when using master/slave mode.
SPILIBRARY_API void SetMutav(std::string Mutav)
Set mutav number for Rav-Mutav. Can be called either before DoTransactionPhase1 or DoTransactionPhase...
SPILIBRARY_API SPI_RET_VAL SetMSRData(std::string Data)
Use unsupprted pinpad interface to do MSR transactions.
SPILIBRARY_API SPI_RET_VAL SetBalaceData(Ashrait::IPayType Type)
Set requiered information for balance transaction.
SPILIBRARY_API void SetSubRetailer(std::string SubRetailer)
Set SubRetailer when working in RavSapak Mode.
SPILIBRARY_API SPI_RET_VAL SetAsCardless()
Don&#39;t ask for a card for CancelRegisteredTransaction/ CancelPreAuth / CompletePreAuth By deafult a ca...
SPILIBRARY_API SPI_RET_VAL SetAsChargePrepaid(Ashrait::IPayType Type, AmountType UnitsAmount=0)
Set transaction as a charge prepaid transaction עסקת טעינה לכרטיסים נטענים
SPILIBRARY_API SPI_RET_VAL SetAsCashback(AmountType CashbackAmount)
Set transaction as a cashback transaction עסקה עם מזומן
SPILIBRARY_API SPI_RET_VAL SetAsCNPTransaction(Ashrait::CardNotPresentType Type, string CardNumber, string Exp, string CVV, string ID, std::string Address, std::string City, std::string ZipCode)
Set transaction credit card deatils when no device is used.
SPILIBRARY_API bool IsCombinedCard() const
A method that tells weather detected card is combined card. This method can be called during loyalty ...
SPILIBRARY_API SPI_RET_VAL SetAsSwipeData(PPIDType DeviceId, std::vector< std::string > DisplayMessages, TimeOutType TimeOutSeconds)
Set all the requiered data when performing track2 request.
SPILIBRARY_API std::string GetSystemTraceNum() const
System trace number is SHVA field-11. XXYYYZZZ - XX - File Number, YYY - Terminal Number/ECR Id ...
This namespace contains avilible API from Modularity Inc.
SPILIBRARY_API SPI_RET_VAL SetLoyaltyAmount(AmountType Amount)
Change the transaction amount post transaction phase1.
SPILIBRARY_API Ashrait::AuthCodeIssuer GetAuthCodeIssuer() const
Manpik (issuer) authorization number if transaction went online. This value is already printd on reci...
SPILIBRARY_API SPI_RET_VAL SetToForceOfflineApproval()
Set transaction to be approved offline. This option is on the merchent responsibility.
SPILIBRARY_API AmountType GetTip() const
Get tip setted with SetTip() This value is already printd on recipt.
SPILIBRARY_API string GetIsracardGroup() const
Get the Isracard group number קבוצת שיוך
SPILIBRARY_API SPI_RET_VAL SetToForceOnlineAuthorization()
Set transaction to go online to SHVA.
SPILIBRARY_API std::vector< ReceiptLine > GetCustomerRecipt() const
Get a list of (key,value) AshraitEMV receipt. According to SHVA AshraitEMV documentation, receipt must be printed in pre defined order. ECR prints the list provided from this function by it&#39;s order. Each member of the vector is a line. The key member is the field name and value is the field value. e.g. key=סוג עסקה and value=חובה e.g. key=זיהוי יישום בשבב and value=A00000003010 - some EMV unformation about the transaction. Receipt exists only if WasSuccessful() is true or GetResultCode() is 0. This function returns all the lines that belongs to the customer copy.
SPILIBRARY_API std::string GetCompanyBussinessNumber() const
Get company bussiness number. This value is already printd on recipt.
SPILIBRARY_API void SetDisplayLanguage(SPILanguage Language)
Set the display language on a pinpad during the transaction. Supported only in remoted Ashrait...
SPILIBRARY_API SPI_RET_VAL SetOfferCode(std::string OfferCode)
Use an agreed offer.
uint64_t AmountType
Definition: SPIDEF.h:47
SPILIBRARY_API bool IsPrepaid() const
A method that tells weather detected card is preapaid card. This method can be called during loyalty ...
SPILIBRARY_API SPI_RET_VAL SetFullAddress(std::string Address, std::string City, std::string ZipCode)
Set credit card holder address detailes.
SPILIBRARY_API Ashrait::MissingEventType GetMissingEvent() const
Get the type of information were missing in the transaction. Each event has it&#39;s Setter.
SPILIBRARY_API SPI_RET_VAL SetAsGenerateStandingOrder(AmountType TotalAmount, FrequencyType Freq)
Generate a standing order הוראת קבע . If generation succeeded user should use data of this transactio...
ulint TimeOutType
Definition: SPIDEF.h:68
SPILIBRARY_API std::vector< std::string > GetMiniSettelemntTransactions() const
Get the transactions UIDS that was settelmented to gateway during mini settelemnt.
SPILIBRARY_API std::string GetCardExpiryDate() const
Get card expiry date in format YYMM.
SPILIBRARY_API SPI_RET_VAL SetAsCancelPreAuthorization(std::string OriginalUID)
Cancel a transaction that generated via SetAsPreAuthorization() and never completed. The original transaction must be succeded. Aka GetResultCode was 0.
SPILIBRARY_API std::string GetToken() const
Get the transaction token generated in gateway.
byte FrequencyType
Definition: SPIDEF.h:71
SPILIBRARY_API SPI_RET_VAL SetZipCode(std::string ZipCode)
Set credit card holder ZIP code address.
SPILIBRARY_API AshraitEMVTransaction(AmountType Amount, string VendorUID, CurrencyType Currency)
Class constructor. When this constructor is called the transaction can be decrotated as: ...
SPILIBRARY_API PaymentType GetMinimumCreditPaymentsAvilible() const
Get minimum of credit payments allowed in transaction after the card identified in the transaction ph...
SPILIBRARY_API std::string GetIssuerAuthNum() const
Manpik (issuer) authorization number if transaction went online. This value is already printd on reci...
SPILIBRARY_API SPI_RET_VAL SetAsIPayTransaction(AmountType MoneyAmount)
Set transaction with IPay is עסקה עם הטבה
This class contains all the input data and output data of AshraitEMV transactions, including the methods inherited from class Transaction. All data in this class is reachable through various methods which define the behaivor of the operation.
A struct that reprensts information about sub retailer in RavSapak mode.
Definition: SPIDEF.h:213
SPILIBRARY_API string GetIsracardClubNumber() const
Get Isracard club number מספר מועדון This value is for and card issued by Isracard and the brand is I...
SPILIBRARY_API AmountType GetNotFirstPayment() const
Get the amount of the rest of the payments if transaction was setted as Payments. ...
SPILIBRARY_API SPI_RET_VAL SetTip(AmountType TipAmount)
Tip as part of the Transaction Amount.
SPILIBRARY_API SPI_RET_VAL SetAsRefund()
Set transaction as a refund transaction עסקת זיכוי
SPILIBRARY_API ExtendedEMVStatus GetExtendedEMVStatus() const
Get the status of the transaction.
SPILIBRARY_API SPI_RET_VAL SetAsSelfService()
Set transaction a self service. This function should called when the customer is making the transacti...
SPILIBRARY_API SPI_RET_VAL SetAsPetrol(Ashrait::GasolineType GasolineType, AmountType GasolineLiter, AmountType OilLiter, AmountType OilAmount, AmountType Speedometer, std::string CarNumber, AmountType Service)
Use this method if the merchent has quthorization number from credit card company.
SPILIBRARY_API void SetCVV(std::string CVV)
Set cvv when Tran_CVV.
SPILIBRARY_API SPI_RET_VAL SetAsPreAuthorization()
Set transaction as obligo. to complete ot cancel this transaction user should keep the UID...
int32_t CurrencyISOType
Definition: SPIDEF.h:74
SPILIBRARY_API AmountType GetFirstPayment() const
Get the amount of the first payment if transaction was setted as Payments. This value may be chang du...
SPILIBRARY_API std::string GetPaymentAggregatorValue(std::string Key) const
Get payment aggreagtor value be name.
SPILIBRARY_API PaymentType GetMaximumCreditPaymentsAvilible() const
Get maximum of credit payments allowed in transaction after the card identified in the transaction ph...
SPILIBRARY_API void SetAdditionalInformation(std::string Information)
Set stream to be sent over addendum1-settl.
SPILIBRARY_API string GetUID() const
Get transaction Uniqie IDentification number. UID is 23 len string that generated by Ashrait for ever...
SPILIBRARY_API bool WasSuccessful() const
A method that tells post transaction weather transaction succeded or not.
SPILIBRARY_API SPI_RET_VAL SetDueDate(std::string DueDateYYMMDD)
Set defer months to transaction in months.
int32_t MonthType
Definition: SPIDEF.h:65
SPILIBRARY_API std::string GetCardName() const
Get card name (VISA, MasterCard, etc..) Name can be also in Hebrew (UTF-8)
SPILIBRARY_API PaymentType GetNoOfPayments() const
Get number of payments if transaction was setted as payments or credit.
SPILIBRARY_API Ashrait::Mutag GetMutag() const
Get credit card Mutag (brand) enumerator.
SPILIBRARY_API std::string GetMiniSettelemntAckNumber() const
Get the ack number from gateway when performing mini settelment.
SPILIBRARY_API void SetZData(UnsignedNumericType ZData)
Set ZData. This is AshraitEMV n8 field that passed as is to Shva.
SPILIBRARY_API Ashrait::Solek GetSolek() const
Get credit card Solek enumerator.
SPILIBRARY_API SPI_RET_VAL CompletePreAuthorization(std::string UID)
Complete an obligo transaction created with SetAsPreAuthorization(). The Amount in the constructor sh...
sint PPIDType
Definition: SPIDEF.h:53
SPILIBRARY_API Ashrait::PanEntryMode GetPanEntryMode() const
PAN entry mode is the way AshraitEMV got the credit card PAN. This value is already printd on recipt...
SPILIBRARY_API bool IsCvvRequiered() const
A method that tells if CVV is requiered for completeing the transaction This method can be called dur...
SPILIBRARY_API SPI_RET_VAL SetSystemTrace(std::string SystemTrace)
Set System Trace Number when working as Slave.
SPILIBRARY_API SPI_RET_VAL SetAsCancelTransaction(std::string OriginalUID)
Cancel a transaction that succeded. Aka GetResultCode was 0.
SPILIBRARY_API void GetSolekInformation(std::string &Name, std::string &BusinessNumber, std::string &PhoneNumber) const
Get all the requiered information.
SPILIBRARY_API void GetBalanceInformation(std::string &OutputBalance, boolean &MustPrint, boolean &MustShow) const
Get balance of a pre paid card in balance transaction. The balance will be printed into a provided bu...
SPILIBRARY_API void SetCardHolderId(std::string CardHolderId)
Set cardholder Id&#39;s when Tran_CardHolderId.
SPILIBRARY_API std::string GetMaskedPanOriginalLength() const
Get credit card PAN masked with *&#39;s in it&#39;s original length. This value is already printd on recipt a...
SPILIBRARY_API SPI_RET_VAL SetAsCash()
Set transaction as a cash transaction עסקת מזומן
SPILIBRARY_API SPI_RET_VAL SetAsUnChargePrepaid(Ashrait::IPayType Type)
Set transaction as a uncharge prepaid transaction עסקת פריקה לכרטיסים נטענים
int32_t PercentType
Definition: SPIDEF.h:62
SPILIBRARY_API AmountType GetMinimumAmountForCreditPayment() const
Get minimum amount of single payment allowed in credit transaction after the card identified in the t...
SPILIBRARY_API void SetCustomData(std::string Key, std::string Value)
Set custom data to payment gateway.
SPILIBRARY_API SPI_RET_VAL SetAsImmediateCredit()
Set transaction with immediate credit-terms.
This class contains all the operations that Avilible for a Service. Since this class is abstract...
Definition: Service.h:36
SPILIBRARY_API SPI_RET_VAL SetAsPaymentsTransaction(PaymentType NoOfPayments, AmountType First, Ashrait::PaymentLinked Link)
Set transaction with payments credit-terms.
SPILIBRARY_API std::string GetSolekAuthNum() const
Solek authorization number if transaction went online. This value is already printd on recipt...
SPILIBRARY_API SPI_RET_VAL SetDeferMonths(MonthType Months)
Set defer months to transaction in months.
SPILIBRARY_API bool IsCardHoderIdRequiered() const
A method that tells if Card holder Id is requiered for completeing the transaction This method can be...
SPILIBRARY_API PaymentType GetMaximumPaymentsAvilible() const
Get maximum of payments allowed in transaction after the card identified in the transaction phase 1...
SPILIBRARY_API bool IsClub() const
A method that tells weather detected card is club card. This method can be called during loyalty phas...
int32_t PaymentType
Definition: SPIDEF.h:50
SPILIBRARY_API std::string GetMaskedPan() const
Get credit card PAN masked with 3 *&#39;s. This value is already printd on recipt according to the copy t...
SPILIBRARY_API std::vector< ReceiptLine > GetMerchentRecipt() const
Get a list of (key,value) AshraitEMV receipt. According to SHVA AshraitEMV documentation, receipt must be printed in pre defined order. ECR prints the list provided from this function by it&#39;s order. Each member of the vector is a line. The key member is the field name and value is the field value. e.g. key=סוג עסקה and value=חובה e.g. key=זיהוי יישום בשבב and value=A00000003010 - some EMV unformation about the transaction. Receipt exists only if WasSuccessful() is true or GetResultCode() is 0. This function returns all the lines that belongs to the merchant copy. According to SHVA not all transactions will require the customer signature and phone number, thus, if transaction requieres customer phone and signtaure last two lines will include the keys "חתימת הלקוח", "טלפון הלקוח".
This file conatins all defenitions which are used in SPI API.
SPILIBRARY_API std::vector< Ashrait::CreditTerms > GetAvilibleCreditTerms() const
Check which credit terms are allowed with the card identified in the transaction phase 1...
SPILIBRARY_API std::string GetRRN() const
RRN is unique identifier number generated by transaction approver when transaction goes online...
SPILIBRARY_API AmountType GetAuthorizedAmount() const
Get the authorized amount for petrol transaction.
This class contains all the input data and output data of Transactions. Those methods are common to a...
Definition: transaction.h:30
SPILIBRARY_API void SetPaymentAggregatorValue(std::string Key, std::string Value)
set payment aggreagtor value be name
APIHandle GetAshEMVHandle() const
Handle get - reserved for internal useage.
SPILIBRARY_API SPI_RET_VAL SetForeignCurrency(CurrencyISOType ISOCode, AmountType ConversionAmount, RateType ChangeRate)
Set transaction with foreign currency.
SPILIBRARY_API std::string GetSwipeData() const
Get data on card magnetic stripe track2 info. From version 1.2008 track2 of card is avililble in this...
uint32_t UnsignedNumericType
Definition: SPIDEF.h:80
SPILIBRARY_API ~AshraitEMVTransaction()
Class desrstructor
SPILIBRARY_API string GetClubNumber() const
Get the club number מספר מועדון
void * APIHandle
Definition: SPIDEF.h:41
This class contains all the operations of the Payment Interface, Creation and Services management...
Definition: SPI.h:44
SPILIBRARY_API SPI_RET_VAL SetAuthorizationNumber(std::string AuthNumber)
Use this method if the merchent has quthorization number from credit card company.
SPILIBRARY_API Ashrait::CreditTerms GetCreditTerms() const
Get credit terms as enumerator. Credit type can be changed by Ashrait during transaction. This value is already printd on recipt.
SPILIBRARY_API std::string GetTokenizedPAN() const
Get credit card PAN tokenized by MD5 rfc1321.
SPILIBRARY_API SPI_RET_VAL SetAsSingleStandingPayment(std::string OriginUID, PaymentType PaymentIndex, std::string SolekAuthNum, std::string IssuerAuthNum, AmountType Commision=0)
Set transaction as a single payment for standing order. תשלום תור"ן להוראת קבע
This file conatins all requiered methods for abstract SPI Transaction.
SPILIBRARY_API SPI_RET_VAL SetAsInternetTransaction(Ashrait::ECIType ECI, string CAVVUCAF, string XID, string CAP_DPA)
Set internet transaction data.
SPILIBRARY_API std::string GetMutav() const
Get the transaction mutav number used if RavMutav was used.
SPILIBRARY_API bool WasPhase1() const
A method that tells post transaction weather there was already phase 1 of the transaction.
SPILIBRARY_API Ashrait::Manpik GetManpik() const
Get credit card Manpik (issuer) enumerator.
SPILIBRARY_API SPI_RET_VAL SetIsracardGift(std::string OfferCode, std::string GiftNumber)
Set a gift from Isracard.
SPILIBRARY_API Ashrait::TransactionType GetTranType() const
Get transaction type as enumerator. Transaction type can be changed by Ashrait during transaction...
uint64_t RateType
Definition: SPIDEF.h:59