Billhighway Cloud API

<back to all web services

CreateCardRef

The following routes are available for this service:
POST/api/creditcard/createcardrefCreates, records and returns a 'cardRef'Creates, records and returns a 'reference' to a credit card. This so called 'cardRef' can then be usedas an alternative value to pass to other credit card transactions such as Verfy or Sale potentially improving securityby not passing card numbers.
import java.math.*
import java.util.*
import net.servicestack.client.*


open class CreateCardRef : CreateCardRef()
{
}

open class CreateCardRefResponse : CreditCardCloudServiceResponse()
{
    var CardRef:String? = null
    var CardType:CreditCardType? = null
}

open class CreditCardCloudServiceResponse : IHaveErrorField
{
    var IsDuplicate:Boolean? = null
    var IsSuccessful:Boolean? = null
    var ErrorCode:String? = null
    var Message:String? = null
    var GatewayId:Int? = null
    var ConfirmationNumber:String? = null
    var NetworkTransactionId:String? = null
    var IsError:Boolean? = null
}

enum class CreditCardType(val value:Int)
{
    @SerializedName("0") AmericanExpress(0),
    @SerializedName("1") Discover(1),
    @SerializedName("2") MasterCard(2),
    @SerializedName("3") Visa(3),
    @SerializedName("4") DinersClub(4),
    @SerializedName("5") DinersCartBlanche(5),
    @SerializedName("6") Unknown(6),
}

Kotlin CreateCardRef DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv

HTTP + JSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /api/creditcard/createcardref HTTP/1.1 
Host: devapi.billhighway.com 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	UserId: 0,
	GroupId: 0,
	Location: String,
	CurrencyCode: String,
	CardType: 0,
	NameOnCard: String,
	CardNumber: String,
	ExpirationMonth: 0,
	ExpirationYear: 0,
	ValidationNum: String
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	CardRef: String,
	CardType: 0,
	IsDuplicate: False,
	IsSuccessful: False,
	ErrorCode: String,
	Message: String,
	GatewayId: 0,
	ConfirmationNumber: String,
	NetworkTransactionId: String,
	IsError: True
}