SPI  1.2101.8
Secured Payment Interface
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Pages
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 
453 
454 
458 
477  SPILIBRARY_API AshraitEMVTransaction (std::string VendorUID, Ashrait::VirtualReason Virtual);
478 
488  SPILIBRARY_API SPI_RET_VAL SetAsSwipeData (PPIDType DeviceId, std::vector<std::string> DisplayMessages, TimeOutType TimeOutSeconds);
489 
497  SPILIBRARY_API SPI_RET_VAL SetAsCancelTransaction (std::string OriginalUID);
498 
507  SPILIBRARY_API SPI_RET_VAL SetAsCancelPreAuthorization (std::string OriginalUID);
508 
515  SPILIBRARY_API SPI_RET_VAL SetBalaceData (Ashrait::IPayType Type);
516 
526  SPILIBRARY_API SPI_RET_VAL SetAsGenerateStandingOrder (AmountType TotalAmount, FrequencyType Freq);
527 
534  SPILIBRARY_API SPI_RET_VAL SetAsGenerateStandingOrder (PaymentType TotalNumberOfPayments, FrequencyType Freq);
535 
543 
550  SPILIBRARY_API SPI_RET_VAL SetSettelmentRecord(string Record, string UID);
551 
559  SPILIBRARY_API SPI_RET_VAL SetAsCardless();
562 
567 
574  SPILIBRARY_API SPI_RET_VAL SetLoyaltyAmount(AmountType Amount);
575 
580  SPILIBRARY_API std::vector<Ashrait::CreditTerms> GetAvilibleCreditTerms() const;
581 
586  SPILIBRARY_API PaymentType GetMinimumCreditPaymentsAvilible() const;
587 
592  SPILIBRARY_API PaymentType GetMaximumCreditPaymentsAvilible() const;
593 
598  SPILIBRARY_API AmountType GetMinimumAmountForCreditPayment() const;
599 
604  SPILIBRARY_API PaymentType GetMaximumPaymentsAvilible() const;
605 
612  SPILIBRARY_API void GetSolekInformation(std::string &Name, std::string &BusinessNumber, std::string &PhoneNumber) const;
613 
619  SPILIBRARY_API bool IsClub() const;
620 
626  SPILIBRARY_API bool IsPrepaid() const;
627 
633  SPILIBRARY_API bool IsCombinedCard() const;
634 
635 
640  SPILIBRARY_API string GetClubNumber() const;
641 
646  SPILIBRARY_API string GetIsracardGroup() const;
647 
654  SPILIBRARY_API bool IsCvvRequiered() const;
655 
662  SPILIBRARY_API bool IsCardHoderIdRequiered() const;
663 
664 
668 
673  SPILIBRARY_API bool WasSuccessful () const;
674 
688  SPILIBRARY_API std::vector<ReceiptLine> GetMerchentRecipt () const;
689 
701  SPILIBRARY_API std::vector<ReceiptLine> GetCustomerRecipt () const;
702 
707  SPILIBRARY_API bool WasPhase1 () const;
708 
715  SPILIBRARY_API string GetUID () const;
716 
722  SPILIBRARY_API std::string GetSolekAuthNum () const;
723 
729  SPILIBRARY_API std::string GetIssuerAuthNum () const;
730 
736  SPILIBRARY_API Ashrait::AuthCodeIssuer GetAuthCodeIssuer() const;
737 
744  SPILIBRARY_API std::string GetSystemTraceNum() const;
745 
752  SPILIBRARY_API std::string GetSwipeData () const;
753 
759  SPILIBRARY_API std::string GetMaskedPan () const;
760 
766  SPILIBRARY_API std::string GetMaskedPanOriginalLength() const;
767 
772  SPILIBRARY_API std::string GetCardExpiryDate() const;
773 
779  SPILIBRARY_API std::string GetCardName() const;
780 
785  SPILIBRARY_API std::string GetTokenizedPAN() const;
786 
787 
793  SPILIBRARY_API std::string GetRRN () const;
794 
799  SPILIBRARY_API Ashrait::Solek GetSolek () const;
800 
805  SPILIBRARY_API Ashrait::Mutag GetMutag () const;
806 
811  SPILIBRARY_API Ashrait::Manpik GetManpik () const;
812 
818  SPILIBRARY_API Ashrait::PanEntryMode GetPanEntryMode () const;
819 
825  SPILIBRARY_API Ashrait::CreditTerms GetCreditTerms () const;
826 
832  SPILIBRARY_API Ashrait::TransactionType GetTranType () const;
833 
839  SPILIBRARY_API std::string GetCompanyBussinessNumber () const;
840 
848  SPILIBRARY_API PaymentType GetNoOfPayments () const;
849 
857  SPILIBRARY_API AmountType GetFirstPayment () const;
858 
865  SPILIBRARY_API AmountType GetNotFirstPayment () const;
866 
872  SPILIBRARY_API AmountType GetTip () const;
873 
883  SPILIBRARY_API void GetBalanceInformation (std::string & OutputBalance, boolean & MustPrint, boolean & MustShow) const;
884 
889  SPILIBRARY_API ExtendedEMVStatus GetExtendedEMVStatus() const;
890 
898  SPILIBRARY_API Ashrait::MissingEventType GetMissingEvent() const;
899 
904  SPILIBRARY_API std::string GetToken() const;
905 
910  SPILIBRARY_API std::string GetSettelmentRecord() const;
911 
912 
917  SPILIBRARY_API AmountType GetAuthorizedAmount() const;
918 
924  SPILIBRARY_API std::string GetPaymentAggregatorValue(std::string Key) const;
925 
928 
931  SPILIBRARY_API ~AshraitEMVTransaction();
932 
936  APIHandle GetAshEMVHandle() const;
937  private:
938  APIHandle AshraitEMVHandle;
940  };
941  }
942 }
943 
944 #endif