| POST | /integrations/api/{integrationType}/heldpayment/charge |
|---|
export class HeldPaymentGatewaySaleResponse
{
public FailureType?: string;
public IsDuplicate?: boolean;
public IsSuccessful?: boolean;
public ErrorCode?: string;
public Message?: string;
public GatewayId?: number;
public ConfirmationNumber?: string;
public NetworkTransactionId?: string;
public constructor(init?: Partial<HeldPaymentGatewaySaleResponse>) { (Object as any).assign(this, init); }
}
export class AttributeItem
{
public Name?: string;
public Value?: string;
public constructor(init?: Partial<AttributeItem>) { (Object as any).assign(this, init); }
}
export class CreditCardBillingAddressItem
{
public Address1?: string;
public Address2?: string;
public City?: string;
public PostalCode?: string;
public Region?: string;
public Country?: string;
public Attributes?: AttributeItem[];
public constructor(init?: Partial<CreditCardBillingAddressItem>) { (Object as any).assign(this, init); }
}
export class CreditCardChargeVerificationResult
{
public NetworkVerificationAttempted?: boolean;
public CvvVerificationResult?: string;
public AddressVerificationResult?: string;
public PostalCodeVerificationResult?: string;
public constructor(init?: Partial<CreditCardChargeVerificationResult>) { (Object as any).assign(this, init); }
}
export class HeldPaymentCreditCardChargeDetails
{
public CardType?: string;
public ExpMonth?: number;
public ExpYear?: number;
public Last4?: string;
public Address?: CreditCardBillingAddressItem;
public VerificationResult?: CreditCardChargeVerificationResult;
public constructor(init?: Partial<HeldPaymentCreditCardChargeDetails>) { (Object as any).assign(this, init); }
}
export class AchChargeVerificationResult
{
public NetworkVerificationAttempted?: boolean;
public Result?: string;
public constructor(init?: Partial<AchChargeVerificationResult>) { (Object as any).assign(this, init); }
}
export class HeldPaymentAchChargeDetails
{
public AccountType?: string;
public RoutingNumber?: string;
public AccountNumberLast4?: string;
public BankName?: string;
public VerificationResult?: AchChargeVerificationResult;
public constructor(init?: Partial<HeldPaymentAchChargeDetails>) { (Object as any).assign(this, init); }
}
export class HeldPaymentChargeDetails
{
public PaymentType?: string;
public Amount?: number;
public IntegrationType?: string;
public Currency?: string;
public CardDetails?: HeldPaymentCreditCardChargeDetails;
public AchDetails?: HeldPaymentAchChargeDetails;
public constructor(init?: Partial<HeldPaymentChargeDetails>) { (Object as any).assign(this, init); }
}
export class HeldPaymentChargeItem
{
public Type?: string;
public Description?: string;
public Amount?: number;
public ClientInvoiceId?: string;
public ClientInvoiceOwnerTypeId?: number;
public constructor(init?: Partial<HeldPaymentChargeItem>) { (Object as any).assign(this, init); }
}
export class HeldPaymentChargeRs
{
public TransactionId?: string;
public StoredAccountId?: number;
public NationalId?: number;
public ChapterId?: number;
public ChargeType?: string;
public IntegrationType?: string;
public ContextIntegrationPartnerId?: number;
public CallerIntegrationPartnerId?: number;
public GatewayResponse?: HeldPaymentGatewaySaleResponse;
public ChargeDetails?: HeldPaymentChargeDetails;
public ChargeItems?: HeldPaymentChargeItem[];
public constructor(init?: Partial<HeldPaymentChargeRs>) { (Object as any).assign(this, init); }
}
export class HeldPaymentChargeRq implements IChargeRequest
{
public integrationType?: string;
public NationalId?: number;
public ChapterId?: number;
public StoredAccountId?: number;
public ContextIntegrationPartnerId?: number;
public CallerIntegrationPartnerId?: number;
public AuthenticationId?: number;
public ChargeType?: string;
public Token?: string;
public Amount?: number;
public Description?: string;
public CreatedById?: number;
public TransactionId?: number;
public StoreChargeAccount?: boolean;
public ChargeItems?: HeldPaymentChargeItem[];
public CreatedBy?: number;
public constructor(init?: Partial<HeldPaymentChargeRq>) { (Object as any).assign(this, init); }
}
TypeScript HeldPaymentChargeRq DTOs
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}/heldpayment/charge HTTP/1.1
Host: devapi.billhighway.com
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<HeldPaymentChargeRq xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/BH.CloudAPI.DTO.HeldPayments.Api.Request">
<Amount>0</Amount>
<AuthenticationId>0</AuthenticationId>
<CallerIntegrationPartnerId>0</CallerIntegrationPartnerId>
<ChapterId>0</ChapterId>
<ChargeItems xmlns:d2p1="http://schemas.datacontract.org/2004/07/BH.CloudAPI.DTO.HeldPayments">
<d2p1:HeldPaymentChargeItem>
<d2p1:_x003C_Amount_x003E_k__BackingField>0</d2p1:_x003C_Amount_x003E_k__BackingField>
<d2p1:_x003C_ClientInvoiceId_x003E_k__BackingField>String</d2p1:_x003C_ClientInvoiceId_x003E_k__BackingField>
<d2p1:_x003C_ClientInvoiceOwnerTypeId_x003E_k__BackingField>0</d2p1:_x003C_ClientInvoiceOwnerTypeId_x003E_k__BackingField>
<d2p1:_x003C_Description_x003E_k__BackingField>String</d2p1:_x003C_Description_x003E_k__BackingField>
<d2p1:_x003C_Type_x003E_k__BackingField>String</d2p1:_x003C_Type_x003E_k__BackingField>
</d2p1:HeldPaymentChargeItem>
</ChargeItems>
<ChargeType>String</ChargeType>
<ContextIntegrationPartnerId>0</ContextIntegrationPartnerId>
<CreatedBy>0</CreatedBy>
<CreatedById>0</CreatedById>
<Description>String</Description>
<NationalId>0</NationalId>
<StoreChargeAccount>false</StoreChargeAccount>
<StoredAccountId>0</StoredAccountId>
<Token>String</Token>
<TransactionId>0</TransactionId>
<integrationType>String</integrationType>
</HeldPaymentChargeRq>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length
<HeldPaymentChargeRs xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/BH.CloudAPI.DTO.HeldPayments.Api.Response">
<CallerIntegrationPartnerId>0</CallerIntegrationPartnerId>
<ChapterId>0</ChapterId>
<ChargeDetails xmlns:d2p1="http://schemas.datacontract.org/2004/07/BH.CloudAPI.DTO.HeldPayments.Api">
<d2p1:AchDetails>
<d2p1:_x003C_AccountNumberLast4_x003E_k__BackingField>String</d2p1:_x003C_AccountNumberLast4_x003E_k__BackingField>
<d2p1:_x003C_AccountType_x003E_k__BackingField>String</d2p1:_x003C_AccountType_x003E_k__BackingField>
<d2p1:_x003C_BankName_x003E_k__BackingField>String</d2p1:_x003C_BankName_x003E_k__BackingField>
<d2p1:_x003C_RoutingNumber_x003E_k__BackingField>String</d2p1:_x003C_RoutingNumber_x003E_k__BackingField>
<d2p1:_x003C_VerificationResult_x003E_k__BackingField xmlns:d4p1="http://schemas.datacontract.org/2004/07/BH.CloudAPI.DTO.Charges.Api">
<d4p1:_x003C_NetworkVerificationAttempted_x003E_k__BackingField>false</d4p1:_x003C_NetworkVerificationAttempted_x003E_k__BackingField>
<d4p1:_x003C_Result_x003E_k__BackingField>String</d4p1:_x003C_Result_x003E_k__BackingField>
</d2p1:_x003C_VerificationResult_x003E_k__BackingField>
</d2p1:AchDetails>
<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>
<ChargeItems xmlns:d2p1="http://schemas.datacontract.org/2004/07/BH.CloudAPI.DTO.HeldPayments">
<d2p1:HeldPaymentChargeItem>
<d2p1:_x003C_Amount_x003E_k__BackingField>0</d2p1:_x003C_Amount_x003E_k__BackingField>
<d2p1:_x003C_ClientInvoiceId_x003E_k__BackingField>String</d2p1:_x003C_ClientInvoiceId_x003E_k__BackingField>
<d2p1:_x003C_ClientInvoiceOwnerTypeId_x003E_k__BackingField>0</d2p1:_x003C_ClientInvoiceOwnerTypeId_x003E_k__BackingField>
<d2p1:_x003C_Description_x003E_k__BackingField>String</d2p1:_x003C_Description_x003E_k__BackingField>
<d2p1:_x003C_Type_x003E_k__BackingField>String</d2p1:_x003C_Type_x003E_k__BackingField>
</d2p1:HeldPaymentChargeItem>
</ChargeItems>
<ChargeType>String</ChargeType>
<ContextIntegrationPartnerId>0</ContextIntegrationPartnerId>
<GatewayResponse xmlns:d2p1="http://schemas.datacontract.org/2004/07/BH.CloudAPI.DTO.HeldPayments">
<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>
</HeldPaymentChargeRs>