Apple Pay Support

Describes how to support Apple Pay using E-Payment Integrator

Date Entered: 09/16/2014    Last Updated: 11/11/2020

Apple Pay is supported by several gateways in E-Payment Integrator.

For Authorize.Net and BlueSnap, simply set the ApplePayData configuration setting to the Base64 encoded Apple Pay data. For instance:

Authorize.Net

Icharge icharge = new Icharge(); icharge.Gateway = IchargeGateways.gwAuthorizeNet; //Test URL icharge.GatewayURL = "https://test.authorize.net/gateway/transact.dll"; icharge.TestMode = true; //This corresponds to the x_login field and is your API Login ID icharge.MerchantLogin = "YourLogin"; //This correspond to the x_tran_key field and is your Transaction Key value icharge.MerchantPassword = "YourPassword"; //Base64 encoded Apple Pay data icharge.Config("ApplePayData="); icharge.Sale();

For First Data E4, set the FDMSWalletProviderId configuration setting to 4 and set the card number to the value provided by Apple Pay. Note that Apple Pay is only supported in version 22 or higher, so you will need to supply the version in the Gateway URL.

First Data E4

Icharge icharge = new Icharge(); icharge.Gateway = IchargeGateways.gwFirstDataE4; icharge.GatewayURL = "https://api.demo.globalgatewaye4.firstdata.com/transaction/v22"; icharge.MerchantLogin = "XXXXXXXX"; icharge.MerchantPassword = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"; icharge.Config("HashSecret=XXXXXXXXXXXXXXXXXXXXXXXXXXXXX"); icharge.Config("FDMSKeyID=XXXXXX"); icharge.Card.ExpMonth = 12; icharge.Card.ExpYear = 22; icharge.Card.Number = "373953192351004"; icharge.Customer.FullName = "John Smith"; icharge.Config("FDMSWalletProviderId=4"); icharge.TransactionAmount = "1.00"; icharge.Sale();

For Litle, set the PKPaymentToken configuration setting to the full PKPaymentToken JSON object provided by Apple Pay:

Litle

Icharge icharge = new Icharge(); icharge.Gateway = IchargeGateways.gwLitle; icharge.GatewayURL = "https://www.testvantivcnp.com/sandbox/communicator/online"; icharge.MerchantLogin = "XXXXXX"; icharge.MerchantPassword = "XXXXXX"; icharge.Config("MerchantCode=XXXXXX"); icharge.TransactionAmount = "000"; // Used to determine the response code from the sandbox icharge.TransactionDesc = "TestTrans"; icharge.InvoiceNumber = DateTime.Now.ToString("yyyyMMddHHmmss"); // Set PKPaymentToken - each "..." will be a Base64 encoded string icharge.Config("PKPaymentToken={\"version\":\"EC_v1\",\"data\":\"...\",\"signature\":\"...\",\"header\":\"applicationData\":\"...\",\"transactionId\":\"...\",\"ephemeralPublicKey\":\"...\",\"publicKeyHash\":\"...\"}}"); icharge.Sale();


We appreciate your feedback.  If you have any questions, comments, or suggestions about this entry please contact our support team at kb@nsoftware.com.