| POST | /integrations/api/{integrationType}/core/donationcharge |
|---|
using System;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using BH.CloudAPI.DTO.CoreCharges.Api.Request;
using BH.CloudAPI.DTO;
using BH.CloudAPI.DTO.CoreCharges.Api.Response;
using BH.CloudAPI.DTO.CoreCharges;
using BH.CloudAPI.DTO.Charges.Api;
using BH.CloudAPI.Common4.DTO;
namespace BH.CloudAPI.Common4.DTO
{
public partial class AttributeItem
{
public virtual string Name { get; set; }
public virtual string Value { get; set; }
}
}
namespace BH.CloudAPI.DTO
{
public partial class EventItem
{
public virtual string CustomerFeeItemTypeId { get; set; }
public virtual string Quantity { get; set; }
}
}
namespace BH.CloudAPI.DTO.Charges.Api
{
public partial class CreditCardBillingAddressItem
{
public CreditCardBillingAddressItem()
{
Attributes = new List<AttributeItem>{};
}
public virtual string Address1 { get; set; }
public virtual string Address2 { get; set; }
public virtual string City { get; set; }
public virtual string PostalCode { get; set; }
public virtual string Region { get; set; }
public virtual string Country { get; set; }
public virtual List<AttributeItem> Attributes { get; set; }
}
public partial class CreditCardChargeVerificationResult
{
public virtual bool NetworkVerificationAttempted { get; set; }
public virtual string CvvVerificationResult { get; set; }
public virtual string AddressVerificationResult { get; set; }
public virtual string PostalCodeVerificationResult { get; set; }
}
}
namespace BH.CloudAPI.DTO.CoreCharges
{
public partial class CoreChargeDetails
{
public virtual string PaymentType { get; set; }
public virtual int Amount { get; set; }
public virtual string IntegrationType { get; set; }
public virtual string Currency { get; set; }
public virtual CoreCreditCardChargeDetails CardDetails { get; set; }
}
public partial class CoreChargeGatewaySaleResponse
{
public virtual string FailureType { get; set; }
public virtual bool IsDuplicate { get; set; }
public virtual bool IsSuccessful { get; set; }
public virtual string ErrorCode { get; set; }
public virtual string Message { get; set; }
public virtual int GatewayId { get; set; }
public virtual string ConfirmationNumber { get; set; }
public virtual string NetworkTransactionId { get; set; }
}
public partial class CoreCreditCardChargeDetails
{
public virtual string CardType { get; set; }
public virtual int ExpMonth { get; set; }
public virtual int ExpYear { get; set; }
public virtual string Last4 { get; set; }
public virtual CreditCardBillingAddressItem Address { get; set; }
public virtual CreditCardChargeVerificationResult VerificationResult { get; set; }
}
}
namespace BH.CloudAPI.DTO.CoreCharges.Api.Request
{
public partial class CoreChargeDonationRq
: IChargeRequest
{
public CoreChargeDonationRq()
{
EventItems = new List<EventItem>{};
}
[ApiMember(ParameterType="path")]
public virtual string integrationType { get; set; }
public virtual int NationalId { get; set; }
public virtual int ChapterId { get; set; }
public virtual long StoredAccountId { get; set; }
public virtual int ContextIntegrationPartnerId { get; set; }
public virtual int CallerIntegrationPartnerId { get; set; }
public virtual int UserId { get; set; }
public virtual int AuthenticationId { get; set; }
public virtual string ChargeType { get; set; }
public virtual string Token { get; set; }
[ApiMember(Format="decimal", ParameterType="model")]
public virtual decimal Amount { get; set; }
public virtual string Description { get; set; }
public virtual int CampaignId { get; set; }
public virtual int CreatedById { get; set; }
public virtual long TransactionId { get; set; }
public virtual string PartnerReferenceId { get; set; }
public virtual List<EventItem> EventItems { get; set; }
}
}
namespace BH.CloudAPI.DTO.CoreCharges.Api.Response
{
public partial class CoreChargeDonationRs
{
public virtual string TransactionId { get; set; }
public virtual long StoredAccountId { get; set; }
public virtual int NationalId { get; set; }
public virtual int ChapterId { get; set; }
public virtual string ChargeType { get; set; }
public virtual string IntegrationType { get; set; }
public virtual int ContextIntegrationPartnerId { get; set; }
public virtual int CallerIntegrationPartnerId { get; set; }
public virtual CoreChargeGatewaySaleResponse GatewayResponse { get; set; }
public virtual CoreChargeDetails ChargeDetails { get; set; }
}
}
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /integrations/api/{integrationType}/core/donationcharge HTTP/1.1
Host: devapi.billhighway.com
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<CoreChargeDonationRq xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/BH.CloudAPI.DTO.CoreCharges.Api.Request">
<Amount>0</Amount>
<AuthenticationId>0</AuthenticationId>
<CallerIntegrationPartnerId>0</CallerIntegrationPartnerId>
<CampaignId>0</CampaignId>
<ChapterId>0</ChapterId>
<ChargeType>String</ChargeType>
<ContextIntegrationPartnerId>0</ContextIntegrationPartnerId>
<CreatedById>0</CreatedById>
<Description>String</Description>
<EventItems xmlns:d2p1="http://schemas.datacontract.org/2004/07/BH.CloudAPI.DTO">
<d2p1:EventItem>
<d2p1:CustomerFeeItemTypeId>String</d2p1:CustomerFeeItemTypeId>
<d2p1:Quantity>String</d2p1:Quantity>
</d2p1:EventItem>
</EventItems>
<NationalId>0</NationalId>
<PartnerReferenceId>String</PartnerReferenceId>
<StoredAccountId>0</StoredAccountId>
<Token>String</Token>
<TransactionId>0</TransactionId>
<UserId>0</UserId>
<integrationType>String</integrationType>
</CoreChargeDonationRq>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length
<CoreChargeDonationRs xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/BH.CloudAPI.DTO.CoreCharges.Api.Response">
<CallerIntegrationPartnerId>0</CallerIntegrationPartnerId>
<ChapterId>0</ChapterId>
<ChargeDetails xmlns:d2p1="http://schemas.datacontract.org/2004/07/BH.CloudAPI.DTO.CoreCharges">
<d2p1:Amount>0</d2p1:Amount>
<d2p1:CardDetails>
<d2p1:_x003C_Address_x003E_k__BackingField xmlns:d4p1="http://schemas.datacontract.org/2004/07/BH.CloudAPI.DTO.Charges.Api">
<d4p1:Address1>String</d4p1:Address1>
<d4p1:Address2>String</d4p1:Address2>
<d4p1:Attributes xmlns:d5p1="http://schemas.datacontract.org/2004/07/BH.CloudAPI.DTO">
<d5p1:AttributeItem>
<d5p1:Name>String</d5p1:Name>
<d5p1:Value>String</d5p1:Value>
</d5p1:AttributeItem>
</d4p1:Attributes>
<d4p1:City>String</d4p1:City>
<d4p1:Country>String</d4p1:Country>
<d4p1:PostalCode>String</d4p1:PostalCode>
<d4p1:Region>String</d4p1:Region>
</d2p1:_x003C_Address_x003E_k__BackingField>
<d2p1:_x003C_CardType_x003E_k__BackingField>String</d2p1:_x003C_CardType_x003E_k__BackingField>
<d2p1:_x003C_ExpMonth_x003E_k__BackingField>0</d2p1:_x003C_ExpMonth_x003E_k__BackingField>
<d2p1:_x003C_ExpYear_x003E_k__BackingField>0</d2p1:_x003C_ExpYear_x003E_k__BackingField>
<d2p1:_x003C_Last4_x003E_k__BackingField>String</d2p1:_x003C_Last4_x003E_k__BackingField>
<d2p1:_x003C_VerificationResult_x003E_k__BackingField xmlns:d4p1="http://schemas.datacontract.org/2004/07/BH.CloudAPI.DTO.Charges.Api">
<d4p1:_x003C_AddressVerificationResult_x003E_k__BackingField>String</d4p1:_x003C_AddressVerificationResult_x003E_k__BackingField>
<d4p1:_x003C_CvvVerificationResult_x003E_k__BackingField>String</d4p1:_x003C_CvvVerificationResult_x003E_k__BackingField>
<d4p1:_x003C_NetworkVerificationAttempted_x003E_k__BackingField>false</d4p1:_x003C_NetworkVerificationAttempted_x003E_k__BackingField>
<d4p1:_x003C_PostalCodeVerificationResult_x003E_k__BackingField>String</d4p1:_x003C_PostalCodeVerificationResult_x003E_k__BackingField>
</d2p1:_x003C_VerificationResult_x003E_k__BackingField>
</d2p1:CardDetails>
<d2p1:Currency>String</d2p1:Currency>
<d2p1:IntegrationType>String</d2p1:IntegrationType>
<d2p1:PaymentType>String</d2p1:PaymentType>
</ChargeDetails>
<ChargeType>String</ChargeType>
<ContextIntegrationPartnerId>0</ContextIntegrationPartnerId>
<GatewayResponse xmlns:d2p1="http://schemas.datacontract.org/2004/07/BH.CloudAPI.DTO.CoreCharges">
<d2p1:_x003C_ConfirmationNumber_x003E_k__BackingField>String</d2p1:_x003C_ConfirmationNumber_x003E_k__BackingField>
<d2p1:_x003C_ErrorCode_x003E_k__BackingField>String</d2p1:_x003C_ErrorCode_x003E_k__BackingField>
<d2p1:_x003C_FailureType_x003E_k__BackingField>String</d2p1:_x003C_FailureType_x003E_k__BackingField>
<d2p1:_x003C_GatewayId_x003E_k__BackingField>0</d2p1:_x003C_GatewayId_x003E_k__BackingField>
<d2p1:_x003C_IsDuplicate_x003E_k__BackingField>false</d2p1:_x003C_IsDuplicate_x003E_k__BackingField>
<d2p1:_x003C_IsSuccessful_x003E_k__BackingField>false</d2p1:_x003C_IsSuccessful_x003E_k__BackingField>
<d2p1:_x003C_Message_x003E_k__BackingField>String</d2p1:_x003C_Message_x003E_k__BackingField>
<d2p1:_x003C_NetworkTransactionId_x003E_k__BackingField>String</d2p1:_x003C_NetworkTransactionId_x003E_k__BackingField>
</GatewayResponse>
<IntegrationType>String</IntegrationType>
<NationalId>0</NationalId>
<StoredAccountId>0</StoredAccountId>
<TransactionId>String</TransactionId>
</CoreChargeDonationRs>