Billhighway Cloud API

<back to all web services

ExternalBankTransferReportRq

The following routes are available for this service:
GET/financial/reporting/ebt
import datetime
import decimal
from marshmallow.fields import *
from servicestack import *
from typing import *
from dataclasses import dataclass, field
from dataclasses_json import dataclass_json, LetterCase, Undefined, config
from enum import Enum, IntEnum


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class TransferDetail:
    transaction_type: Optional[str] = None
    transaction_id: Optional[int] = None
    member: Optional[str] = None
    client_user_id: Optional[str] = None
    company: Optional[str] = None
    order_id: Optional[str] = None
    frequency: Optional[str] = None
    processed_date: Optional[str] = None
    check_number: Optional[str] = None
    amount: Optional[Decimal] = None
    member_type_description: Optional[str] = None
    chap_bill_cat_i_d: Optional[str] = None
    chart_of_account_ref_i_d: Optional[str] = None
    chart_of_account_description: Optional[str] = None
    held_payment_transaction_id: Optional[str] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class TransferHeader:
    batch_id: Optional[int] = None
    transaction_id: Optional[int] = None
    cash_account: Optional[str] = None
    transfer_date: Optional[str] = None
    amount: Optional[Decimal] = None
    cleared_date: Optional[str] = None
    status: Optional[str] = None
    bank_account: Optional[str] = None
    transfer_detail: Optional[List[TransferDetail]] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class ExternalBankTransferReportRs:
    group_id: Optional[str] = None
    group_nick_name: Optional[str] = None
    group_name: Optional[str] = None
    start_date: Optional[str] = None
    end_date: Optional[str] = None
    total_amount: Optional[Decimal] = None
    transfers: Optional[List[TransferHeader]] = None
    error_code: Optional[int] = None
    error_message: Optional[str] = None
    # @ApiMember(ExcludeInSchema=true)
    is_error: Optional[bool] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class ExternalBankTransferReportRq:
    client_id: Optional[int] = None
    group_id: Optional[str] = None
    start_date: Optional[datetime.datetime] = None
    end_date: Optional[datetime.datetime] = None

Python ExternalBankTransferReportRq 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.

GET /financial/reporting/ebt HTTP/1.1 
Host: devapi.billhighway.com 
Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	GroupId: String,
	GroupNickName: String,
	GroupName: String,
	StartDate: String,
	EndDate: String,
	TotalAmount: 0,
	Transfers: 
	[
		{
			BatchId: 0,
			TransactionId: 0,
			CashAccount: String,
			TransferDate: String,
			Amount: 0,
			ClearedDate: String,
			Status: String,
			BankAccount: String,
			TransferDetail: 
			[
				{
					TransactionType: String,
					TransactionId: 0,
					Member: String,
					ClientUserId: String,
					Company: String,
					OrderId: String,
					Frequency: String,
					ProcessedDate: String,
					CheckNumber: String,
					Amount: 0,
					MemberTypeDescription: String,
					ChapBillCatID: String,
					ChartOfAccountRefID: String,
					ChartOfAccountDescription: String,
					HeldPaymentTransactionId: String
				}
			]
		}
	],
	ErrorCode: 0,
	ErrorMessage: String,
	IsError: False
}