Billhighway Cloud API

<back to all web services

RecurringInvoiceListRequest

The following routes are available for this service:
GET/invoices/recurringInvoices
import 'package:servicestack/servicestack.dart';

class RecurringInvoiceListResponseItem implements IConvertible
{
    String? GroupID;
    int? RecurringInvoiceID;
    int? BillingTypeID;
    String? BillingTypeName;
    String? InvoiceDescription;
    double? Amount;
    String? ProcessingCurrency;
    String? FrequencyDescription;
    DateTime? EffectiveDate;
    DateTime? EndDate;
    DateTime? NextDueDate;
    String? DonationCoaNum;
    String? DonationCoaDesc;
    bool? IsActive;
    String? FrequencySummary;

    RecurringInvoiceListResponseItem({this.GroupID,this.RecurringInvoiceID,this.BillingTypeID,this.BillingTypeName,this.InvoiceDescription,this.Amount,this.ProcessingCurrency,this.FrequencyDescription,this.EffectiveDate,this.EndDate,this.NextDueDate,this.DonationCoaNum,this.DonationCoaDesc,this.IsActive,this.FrequencySummary});
    RecurringInvoiceListResponseItem.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        GroupID = json['GroupID'];
        RecurringInvoiceID = json['RecurringInvoiceID'];
        BillingTypeID = json['BillingTypeID'];
        BillingTypeName = json['BillingTypeName'];
        InvoiceDescription = json['InvoiceDescription'];
        Amount = JsonConverters.toDouble(json['Amount']);
        ProcessingCurrency = json['ProcessingCurrency'];
        FrequencyDescription = json['FrequencyDescription'];
        EffectiveDate = JsonConverters.fromJson(json['EffectiveDate'],'DateTime',context!);
        EndDate = JsonConverters.fromJson(json['EndDate'],'DateTime',context!);
        NextDueDate = JsonConverters.fromJson(json['NextDueDate'],'DateTime',context!);
        DonationCoaNum = json['DonationCoaNum'];
        DonationCoaDesc = json['DonationCoaDesc'];
        IsActive = json['IsActive'];
        FrequencySummary = json['FrequencySummary'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'GroupID': GroupID,
        'RecurringInvoiceID': RecurringInvoiceID,
        'BillingTypeID': BillingTypeID,
        'BillingTypeName': BillingTypeName,
        'InvoiceDescription': InvoiceDescription,
        'Amount': Amount,
        'ProcessingCurrency': ProcessingCurrency,
        'FrequencyDescription': FrequencyDescription,
        'EffectiveDate': JsonConverters.toJson(EffectiveDate,'DateTime',context!),
        'EndDate': JsonConverters.toJson(EndDate,'DateTime',context!),
        'NextDueDate': JsonConverters.toJson(NextDueDate,'DateTime',context!),
        'DonationCoaNum': DonationCoaNum,
        'DonationCoaDesc': DonationCoaDesc,
        'IsActive': IsActive,
        'FrequencySummary': FrequencySummary
    };

    getTypeName() => "RecurringInvoiceListResponseItem";
    TypeContext? context = _ctx;
}

class RecurringInvoiceListResponse implements IConvertible
{
    List<RecurringInvoiceListResponseItem>? Results;

    RecurringInvoiceListResponse({this.Results});
    RecurringInvoiceListResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        Results = JsonConverters.fromJson(json['Results'],'List<RecurringInvoiceListResponseItem>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'Results': JsonConverters.toJson(Results,'List<RecurringInvoiceListResponseItem>',context!)
    };

    getTypeName() => "RecurringInvoiceListResponse";
    TypeContext? context = _ctx;
}

class RecurringInvoiceListRequest implements IConvertible
{
    String? GroupID;

    RecurringInvoiceListRequest({this.GroupID});
    RecurringInvoiceListRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        GroupID = json['GroupID'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'GroupID': GroupID
    };

    getTypeName() => "RecurringInvoiceListRequest";
    TypeContext? context = _ctx;
}

TypeContext _ctx = TypeContext(library: 'devapi.billhighway.com', types: <String, TypeInfo> {
    'RecurringInvoiceListResponseItem': TypeInfo(TypeOf.Class, create:() => RecurringInvoiceListResponseItem()),
    'RecurringInvoiceListResponse': TypeInfo(TypeOf.Class, create:() => RecurringInvoiceListResponse()),
    'List<RecurringInvoiceListResponseItem>': TypeInfo(TypeOf.Class, create:() => <RecurringInvoiceListResponseItem>[]),
    'RecurringInvoiceListRequest': TypeInfo(TypeOf.Class, create:() => RecurringInvoiceListRequest()),
});

Dart RecurringInvoiceListRequest DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml

HTTP + XML

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

GET /invoices/recurringInvoices HTTP/1.1 
Host: devapi.billhighway.com 
Accept: application/xml
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<RecurringInvoiceListResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/BH.CloudAPI.DTO">
  <Results>
    <RecurringInvoiceListResponseItem>
      <Amount>0</Amount>
      <BillingTypeID>0</BillingTypeID>
      <BillingTypeName>String</BillingTypeName>
      <DonationCoaDesc>String</DonationCoaDesc>
      <DonationCoaNum>String</DonationCoaNum>
      <EffectiveDate>0001-01-01T00:00:00</EffectiveDate>
      <EndDate>0001-01-01T00:00:00</EndDate>
      <FrequencyDescription>String</FrequencyDescription>
      <FrequencySummary>String</FrequencySummary>
      <GroupID>String</GroupID>
      <InvoiceDescription>String</InvoiceDescription>
      <IsActive>false</IsActive>
      <NextDueDate>0001-01-01T00:00:00</NextDueDate>
      <ProcessingCurrency>String</ProcessingCurrency>
      <RecurringInvoiceID>0</RecurringInvoiceID>
    </RecurringInvoiceListResponseItem>
  </Results>
</RecurringInvoiceListResponse>