SPI  1.2404.0
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 
403  SPILIBRARY_API void SetAsPetrol();
404 
410  SPILIBRARY_API void SetServiceAmount(AmountType ServiceAmount);
411 
412 
413 
421  SPILIBRARY_API void SetDisplayLanguage(SPILanguage Language);
422 
428  SPILIBRARY_API void SetAdditionalInformation(std::string Information);
429 
436  SPILIBRARY_API SPI_RET_VAL SetSystemTrace(std::string SystemTrace);
437 
444  SPILIBRARY_API void SetPaymentAggregatorValue(std::string Key, std::string Value);
445 
452  SPILIBRARY_API void SetCustomData(std::string Key, std::string Value);
453 
458  SPILIBRARY_API void SetSubRetailer(std::string SubRetailer);
459 
465  SPILIBRARY_API void SetZData(UnsignedNumericType ZData);
466 
472  SPILIBRARY_API void SetMutav(std::string Mutav);
473 
478  SPILIBRARY_API void SetOfflineMode();
479 
483 
502  SPILIBRARY_API AshraitEMVTransaction (std::string VendorUID, Ashrait::VirtualReason Virtual);
503 
513  SPILIBRARY_API SPI_RET_VAL SetAsSwipeData (PPIDType DeviceId, std::vector<std::string> DisplayMessages, TimeOutType TimeOutSeconds);
514 
522  SPILIBRARY_API SPI_RET_VAL SetAsCancelTransaction (std::string OriginalUID);
523 
532  SPILIBRARY_API SPI_RET_VAL SetAsCancelPreAuthorization (std::string OriginalUID);
533 
540  SPILIBRARY_API SPI_RET_VAL SetBalaceData (Ashrait::IPayType Type);
541 
551  SPILIBRARY_API SPI_RET_VAL SetAsGenerateStandingOrder (AmountType TotalAmount, FrequencyType Freq);
552 
559  SPILIBRARY_API SPI_RET_VAL SetAsGenerateStandingOrder (PaymentType TotalNumberOfPayments, FrequencyType Freq);
560 
568 
576  SPILIBRARY_API SPI_RET_VAL SetSettelmentRecord(string Record, string UID);
577 
585  SPILIBRARY_API SPI_RET_VAL SetAsCardless();
588 
593 
600  SPILIBRARY_API SPI_RET_VAL SetLoyaltyAmount(AmountType Amount);
601 
606  SPILIBRARY_API std::vector<Ashrait::CreditTerms> GetAvilibleCreditTerms() const;
607 
612  SPILIBRARY_API PaymentType GetMinimumCreditPaymentsAvilible() const;
613 
618  SPILIBRARY_API PaymentType GetMaximumCreditPaymentsAvilible() const;
619 
624  SPILIBRARY_API AmountType GetMinimumAmountForCreditPayment() const;
625 
630  SPILIBRARY_API PaymentType GetMaximumPaymentsAvilible() const;
631 
638  SPILIBRARY_API void GetSolekInformation(std::string &Name, std::string &BusinessNumber, std::string &PhoneNumber) const;
639 
645  SPILIBRARY_API bool IsClub() const;
646 
652  SPILIBRARY_API bool IsPrepaid() const;
653 
659  SPILIBRARY_API bool IsCombinedCard() const;
660 
661 
666  SPILIBRARY_API string GetClubNumber() const;
667 
674  SPILIBRARY_API string GetIsracardClubNumber() const;
675 
676 
677 
682  SPILIBRARY_API string GetIsracardGroup() const;
683 
690  SPILIBRARY_API bool IsCvvRequiered() const;
691 
698  SPILIBRARY_API bool IsCardHoderIdRequiered() const;
699 
706  SPILIBRARY_API std::string GetSubRetailer() const;
707 
708 
712 
717  SPILIBRARY_API bool WasSuccessful () const;
718 
732  SPILIBRARY_API std::vector<ReceiptLine> GetMerchentRecipt () const;
733 
745  SPILIBRARY_API std::vector<ReceiptLine> GetCustomerRecipt () const;
746 
751  SPILIBRARY_API bool WasPhase1 () const;
752 
759  SPILIBRARY_API string GetUID () const;
760 
766  SPILIBRARY_API std::string GetSolekAuthNum () const;
767 
773  SPILIBRARY_API std::string GetIssuerAuthNum () const;
774 
780  SPILIBRARY_API Ashrait::AuthCodeIssuer GetAuthCodeIssuer() const;
781 
788  SPILIBRARY_API std::string GetSystemTraceNum() const;
789 
796  SPILIBRARY_API std::string GetSwipeData () const;
797 
803  SPILIBRARY_API std::string GetMaskedPan () const;
804 
810  SPILIBRARY_API std::string GetMaskedPanOriginalLength() const;
811 
816  SPILIBRARY_API std::string GetCardExpiryDate() const;
817 
823  SPILIBRARY_API std::string GetCardName() const;
824 
829  SPILIBRARY_API std::string GetTokenizedPAN() const;
830 
831 
837  SPILIBRARY_API std::string GetRRN () const;
838 
843  SPILIBRARY_API Ashrait::Solek GetSolek () const;
844 
849  SPILIBRARY_API Ashrait::Mutag GetMutag () const;
850 
855  SPILIBRARY_API Ashrait::Manpik GetManpik () const;
856 
862  SPILIBRARY_API Ashrait::PanEntryMode GetPanEntryMode () const;
863 
869  SPILIBRARY_API Ashrait::CreditTerms GetCreditTerms () const;
870 
876  SPILIBRARY_API Ashrait::TransactionType GetTranType () const;
877 
883  SPILIBRARY_API std::string GetCompanyBussinessNumber () const;
884 
892  SPILIBRARY_API PaymentType GetNoOfPayments () const;
893 
901  SPILIBRARY_API AmountType GetFirstPayment () const;
902 
909  SPILIBRARY_API AmountType GetNotFirstPayment () const;
910 
916  SPILIBRARY_API AmountType GetTip () const;
917 
927  SPILIBRARY_API void GetBalanceInformation (std::string & OutputBalance, boolean & MustPrint, boolean & MustShow) const;
928 
933  SPILIBRARY_API ExtendedEMVStatus GetExtendedEMVStatus() const;
934 
942  SPILIBRARY_API Ashrait::MissingEventType GetMissingEvent() const;
943 
948  SPILIBRARY_API std::string GetToken() const;
949 
954  SPILIBRARY_API std::string GetSettelmentRecord() const;
955 
956 
961  SPILIBRARY_API AmountType GetAuthorizedAmount() const;
962 
968  SPILIBRARY_API std::string GetPaymentAggregatorValue(std::string Key) const;
969 
974  SPILIBRARY_API std::string GetMutav() const;
975 
980  SPILIBRARY_API std::string GetMiniSettelemntAckNumber() const;
981 
986  SPILIBRARY_API std::vector<std::string> GetMiniSettelemntTransactions() const;
987 
998  SPILIBRARY_API UnsignedNumericType GetTranKinds() const;
999 
1009  SPILIBRARY_API std::string GetAuthorizationCommStat() const;
1010 
1019  SPILIBRARY_API std::string GetMiniSettelmentCommStat() const;
1020 
1026  SPILIBRARY_API bool IsPendingAuthorization() const;
1027 
1028 
1029 
1032 
1035  SPILIBRARY_API ~AshraitEMVTransaction();
1036 
1040  APIHandle GetAshEMVHandle() const;
1041  private:
1042  APIHandle AshraitEMVHandle;
1044  };
1045  }
1046 }
1047 
1048 #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 void SetAsPetrol()
Use this method to set transaction as petrol transaction.
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.
SPILIBRARY_API void SetServiceAmount(AmountType ServiceAmount)
Use this method to set the service fee as part of the total amount in petrol transaction.
A struct that reprensts information about sub retailer in RavSapak mode.
Definition: SPIDEF.h:224
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 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...
SPILIBRARY_API void SetOfflineMode()
Offline mode to prevent online authorization in case needed.
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 std::string GetMiniSettelmentCommStat() const
Get statistics times regarding mini settlement comm times. Data is retunrd in json object with the fo...
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 bool IsPendingAuthorization() const
Is transaction waiting to authorization.
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 std::string GetAuthorizationCommStat() const
Get statistics times regarding authorization comm times. Data is retunrd in json object with the foll...
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.
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.
SPILIBRARY_API std::string GetSubRetailer() const
A method that returns the sub retailer in case of RAV SAPAK. This can be either automated split subre...
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:47
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 UnsignedNumericType GetTranKinds() const
The kinds of transaction records exist when getting transaction with RetrieveTransaction by UID or em...
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