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.
import java.math.*
import java.util.*
import net.servicestack.client.*


open class CreditCardPaymentRefund : CreditCardPaymentRefund()
{
}

open class CreditCardPaymentRefundResult : CreditCardCloudServiceResponse()
{
    var TransactionRecordID:Long? = null
    var FailureType:PaymentFailureType? = null
    var IsOverpayment:Boolean? = null
    var PaymentNotFound:Boolean? = 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 PaymentFailureType(val value:Int)
{
    @SerializedName("0") None(0),
    @SerializedName("1") Gateway(1),
    @SerializedName("2") PaymentTransaction(2),
    @SerializedName("3") KeyProcurment(3),
    @SerializedName("4") CardVerification(4),
}

Kotlin 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
}