4D Payments SDK 2016 .NET Edition

Questions / Feedback?

Sale Method

Sends a sale request for Credit, Debit, and EBT cards. Authorizes a credit card using track1, track2, or manually entered card data.


public void Sale();
Public Sub Sale()


This method sends a sale (authorize and capture) request to the FDMS transaction processor. The EntryDataSource field determines whether Track1, Track2, or a manually entered card and expiration date are sent in the request. If the Sale request was successful, Success will be True.

For Debit Card sales, Track2 data will need to be set as well as the DebitKSN and DebitPIN.

For EBT transactions, EBTPaymentType will need to be set as well as the DebitKSN and DebitPIN. For Food Stamp Voucher transactions, you will need to set EBTVoucherCode and EBTVoucherNumber rather than DebitKSN and DebitPIN.

After a successful sale, the DetailAggregate can then be added to the DetailRecords collection of the BatchMgr component to be used when the batch is closed.

  OmahaRetail.Card.MagneticStripe = "B4444333322221111^SMITH/JOHN M         ^031210100000033301000000008000000";
  OmahaRetail.Card.EntryDataSource = edsTrack1; 
  OmahaRetail.BatchNumber = 1;
  OmahaRetail.TransactionNumber = 1;
  if (OmahaRetail.Response.Success) {    
    OmahaBatchMgr.DetailRecords.Add(new OmahaRecordType(OmahaRetail.GetDetailAggregate()));
Industry regulations do not allow merchants or processors to store track data in any form of persistent storage. Failure to abide by this regulation can result in significant fines and other penalties.

Copyright (c) 2021 4D Payments Inc. - All rights reserved.
4D Payments SDK 2016 .NET Edition - Version 16.0 [Build 8017]