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.
namespace BH.CloudAPI.Common.DTO

open System
open System.Collections
open System.Collections.Generic
open System.Runtime.Serialization
open ServiceStack
open ServiceStack.DataAnnotations

    [<AllowNullLiteral>]
    type CreditCardCloudServiceResponse() = 
        member val IsDuplicate:Boolean = new Boolean() with get,set
        member val IsSuccessful:Boolean = new Boolean() with get,set
        member val ErrorCode:String = null with get,set
        member val Message:String = null with get,set
        member val GatewayId:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val ConfirmationNumber:String = null with get,set
        member val NetworkTransactionId:String = null with get,set
        member val IsError:Boolean = new Boolean() with get,set

    type CreditCardType =
        | AmericanExpress = 0
        | Discover = 1
        | MasterCard = 2
        | Visa = 3
        | DinersClub = 4
        | DinersCartBlanche = 5
        | Unknown = 6

    [<AllowNullLiteral>]
    type CreateCardRefResponse() = 
        inherit CreditCardCloudServiceResponse()
        member val CardRef:String = null with get,set
        member val CardType:CreditCardType = new CreditCardType() with get,set

    [<AllowNullLiteral>]
    type CreateCardRef() = 
        inherit CreateCardRef()

F# 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
}