Billhighway Cloud API

<back to all web services

CreditCardPaymentRefund

The following routes are available for this service:
POST/api/CreditCard/Payment/RefundPerforms a credit card payment refund against Performs a credit card payment refund.

export class CreditCardCloudServiceResponse implements IHaveErrorField
{
    public IsDuplicate?: boolean;
    public IsSuccessful?: boolean;
    public ErrorCode?: string;
    public Message?: string;
    public GatewayId?: number;
    public ConfirmationNumber?: string;
    public NetworkTransactionId?: string;
    public IsError?: boolean;

    public constructor(init?: Partial<CreditCardCloudServiceResponse>) { (Object as any).assign(this, init); }
}

export enum PaymentFailureType
{
    None = 0,
    Gateway = 1,
    PaymentTransaction = 2,
    KeyProcurment = 3,
    CardVerification = 4,
}

export class CreditCardPaymentRefundResult extends CreditCardCloudServiceResponse
{
    public TransactionRecordID?: number;
    public FailureType?: PaymentFailureType;
    public IsOverpayment?: boolean;
    public PaymentNotFound?: boolean;

    public constructor(init?: Partial<CreditCardPaymentRefundResult>) { super(init); (Object as any).assign(this, init); }
}

export class CreditCardPaymentRefund extends CreditCardPaymentRefund
{

    public constructor(init?: Partial<CreditCardPaymentRefund>) { super(init); (Object as any).assign(this, init); }
}

TypeScript CreditCardPaymentRefund 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/Payment/Refund HTTP/1.1 
Host: devapi.billhighway.com 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	Header: 
	{
		ClientId: 0,
		Referrer: String,
		IpAddress: String,
		LoggedInUserId: 0,
		GroupId: 0,
		Task: String,
		Machine: String,
		Location: String,
		CreatedBy: 0,
		CampaignId: 0,
		ReCaptchaScore: 0
	},
	RefundInfo: 
	{
		CurrencyCode: String,
		GatewayTransactionId: String,
		Amount: 0,
		Memo: String,
		MemberPaymentId: 0,
		Type: 0,
		ReasonId: 0,
		UserId: 0
	}
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	TransactionRecordID: 0,
	FailureType: 0,
	IsOverpayment: False,
	PaymentNotFound: False,
	IsDuplicate: False,
	IsSuccessful: False,
	ErrorCode: String,
	Message: String,
	GatewayId: 0,
	ConfirmationNumber: String,
	NetworkTransactionId: String,
	IsError: True
}