| POST | /api/CreditCard/Sale | Performs a credit card sale | Performs a low level credit card charge WITHOUT recording credit the as a deposit or payment. This shouldbe used only in conjunction with code that records the credit. |
|---|
import java.math.*;
import java.util.*;
import net.servicestack.client.*;
public class dtos
{
public static class CreditCardSale extends CreditCardSale
{
}
public static class CreditCardSaleResult extends CreditCardCloudServiceResponse
{
}
public static class CreditCardCloudServiceResponse implements IHaveErrorField
{
public Boolean IsDuplicate = null;
public Boolean IsSuccessful = null;
public String ErrorCode = null;
public String Message = null;
public Integer GatewayId = null;
public String ConfirmationNumber = null;
public String NetworkTransactionId = null;
public Boolean IsError = null;
public Boolean getIsDuplicate() { return IsDuplicate; }
public CreditCardCloudServiceResponse setIsDuplicate(Boolean value) { this.IsDuplicate = value; return this; }
public Boolean getIsSuccessful() { return IsSuccessful; }
public CreditCardCloudServiceResponse setIsSuccessful(Boolean value) { this.IsSuccessful = value; return this; }
public String getErrorCode() { return ErrorCode; }
public CreditCardCloudServiceResponse setErrorCode(String value) { this.ErrorCode = value; return this; }
public String getMessage() { return Message; }
public CreditCardCloudServiceResponse setMessage(String value) { this.Message = value; return this; }
public Integer getGatewayId() { return GatewayId; }
public CreditCardCloudServiceResponse setGatewayId(Integer value) { this.GatewayId = value; return this; }
public String getConfirmationNumber() { return ConfirmationNumber; }
public CreditCardCloudServiceResponse setConfirmationNumber(String value) { this.ConfirmationNumber = value; return this; }
public String getNetworkTransactionId() { return NetworkTransactionId; }
public CreditCardCloudServiceResponse setNetworkTransactionId(String value) { this.NetworkTransactionId = value; return this; }
public Boolean getIsError() { return IsError; }
public CreditCardCloudServiceResponse setIsError(Boolean value) { this.IsError = value; return this; }
}
}
To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /api/CreditCard/Sale HTTP/1.1
Host: devapi.billhighway.com
Accept: text/csv
Content-Type: text/csv
Content-Length: length
{"ClientId":0,"GroupId":"String","UserId":"String","BhUserId":0,"UniqueId":"String","Location":"String","CurrencyCode":"String","NameOnCard":"String","Address1":"String","Address2":"String","City":"String","State":"String","PostalCode":"String","Country":"String","CardType":0,"CardNumber":"String","ExpMonth":0,"ExpYear":0,"CVV":"String","Amount":0,"ChapAndUser":"String","Description":"String","PayLinkID":0,"AutoPay":false,"StoreCardInfo":false,"PaymentSourceTypeID":0,"PaymentSourceID":0,"ProcessingType":0,"NetworkTransactionID":"String","ReCaptchaScore":0}
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length
{"IsDuplicate":false,"IsSuccessful":false,"ErrorCode":"String","Message":"String","GatewayId":0,"ConfirmationNumber":"String","NetworkTransactionId":"String","IsError":true}