Billhighway Cloud API

<back to all web services

AchPaymentCollection

The following routes are available for this service:
POST/api/SalesForce/AchPaymentProcesses the ACH Payments.Validates the input values and processes the ACH Payments.
POST/payments/achProcesses the ACH Payments.Validates the input values and processes the ACH Payments.
import 'package:servicestack/servicestack.dart';

class AchPaymentReply implements IHaveErrorField, IConvertible
{
    String? ClassName;
    String? UniqueId;
    DateTime? CreatedDateTime;
    int? ClientId;
    String? TransactionId;
    int? ErrorCode;
    String? ErrorMessage;
    // @ApiMember(ExcludeInSchema=true)
    bool? IsError;

    AchPaymentReply({this.ClassName,this.UniqueId,this.CreatedDateTime,this.ClientId,this.TransactionId,this.ErrorCode,this.ErrorMessage,this.IsError});
    AchPaymentReply.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        ClassName = json['ClassName'];
        UniqueId = json['UniqueId'];
        CreatedDateTime = JsonConverters.fromJson(json['CreatedDateTime'],'DateTime',context!);
        ClientId = json['ClientId'];
        TransactionId = json['TransactionId'];
        ErrorCode = json['ErrorCode'];
        ErrorMessage = json['ErrorMessage'];
        IsError = json['IsError'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'ClassName': ClassName,
        'UniqueId': UniqueId,
        'CreatedDateTime': JsonConverters.toJson(CreatedDateTime,'DateTime',context!),
        'ClientId': ClientId,
        'TransactionId': TransactionId,
        'ErrorCode': ErrorCode,
        'ErrorMessage': ErrorMessage,
        'IsError': IsError
    };

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

class AchPaymentReplyCollection implements IConvertible
{
    List<AchPaymentReply>? AchReplyCollection;

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

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

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

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

class SalesForceMemberPaymentInvoiceDetail implements IConvertible
{
    String? ClassName;
    String? UniqueId;
    DateTime? CreatedDateTime;
    int? ClientId;
    int? Invoice;
    String? AmountPaid;

    SalesForceMemberPaymentInvoiceDetail({this.ClassName,this.UniqueId,this.CreatedDateTime,this.ClientId,this.Invoice,this.AmountPaid});
    SalesForceMemberPaymentInvoiceDetail.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        ClassName = json['ClassName'];
        UniqueId = json['UniqueId'];
        CreatedDateTime = JsonConverters.fromJson(json['CreatedDateTime'],'DateTime',context!);
        ClientId = json['ClientId'];
        Invoice = json['Invoice'];
        AmountPaid = json['AmountPaid'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'ClassName': ClassName,
        'UniqueId': UniqueId,
        'CreatedDateTime': JsonConverters.toJson(CreatedDateTime,'DateTime',context!),
        'ClientId': ClientId,
        'Invoice': Invoice,
        'AmountPaid': AmountPaid
    };

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

class AchPayment implements IConvertible
{
    String? ClassName;
    String? UniqueId;
    DateTime? CreatedDateTime;
    int? ClientId;
    String? GroupId;
    String? UserId;
    int? BhUserId;
    double? Amount;
    String? CurrencyType;
    String? Country;
    String? RoutingNumber;
    String? AccountNumber;
    String? AchReference;
    String? AccountType;
    bool? IsSavingsAccount;
    String? PayerName;
    String? CheckNumber;
    String? PreferredEmailAddress;
    String? Memo;
    List<SalesForceMemberPaymentInvoiceDetail>? InvoiceList;
    bool? AutoPay;
    bool? StoreAchInfo;
    int? EncryptionTypeId;

    AchPayment({this.ClassName,this.UniqueId,this.CreatedDateTime,this.ClientId,this.GroupId,this.UserId,this.BhUserId,this.Amount,this.CurrencyType,this.Country,this.RoutingNumber,this.AccountNumber,this.AchReference,this.AccountType,this.IsSavingsAccount,this.PayerName,this.CheckNumber,this.PreferredEmailAddress,this.Memo,this.InvoiceList,this.AutoPay,this.StoreAchInfo,this.EncryptionTypeId});
    AchPayment.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        ClassName = json['ClassName'];
        UniqueId = json['UniqueId'];
        CreatedDateTime = JsonConverters.fromJson(json['CreatedDateTime'],'DateTime',context!);
        ClientId = json['ClientId'];
        GroupId = json['GroupId'];
        UserId = json['UserId'];
        BhUserId = json['BhUserId'];
        Amount = JsonConverters.toDouble(json['Amount']);
        CurrencyType = json['CurrencyType'];
        Country = json['Country'];
        RoutingNumber = json['RoutingNumber'];
        AccountNumber = json['AccountNumber'];
        AchReference = json['AchReference'];
        AccountType = json['AccountType'];
        IsSavingsAccount = json['IsSavingsAccount'];
        PayerName = json['PayerName'];
        CheckNumber = json['CheckNumber'];
        PreferredEmailAddress = json['PreferredEmailAddress'];
        Memo = json['Memo'];
        InvoiceList = JsonConverters.fromJson(json['InvoiceList'],'List<SalesForceMemberPaymentInvoiceDetail>',context!);
        AutoPay = json['AutoPay'];
        StoreAchInfo = json['StoreAchInfo'];
        EncryptionTypeId = json['EncryptionTypeId'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'ClassName': ClassName,
        'UniqueId': UniqueId,
        'CreatedDateTime': JsonConverters.toJson(CreatedDateTime,'DateTime',context!),
        'ClientId': ClientId,
        'GroupId': GroupId,
        'UserId': UserId,
        'BhUserId': BhUserId,
        'Amount': Amount,
        'CurrencyType': CurrencyType,
        'Country': Country,
        'RoutingNumber': RoutingNumber,
        'AccountNumber': AccountNumber,
        'AchReference': AchReference,
        'AccountType': AccountType,
        'IsSavingsAccount': IsSavingsAccount,
        'PayerName': PayerName,
        'CheckNumber': CheckNumber,
        'PreferredEmailAddress': PreferredEmailAddress,
        'Memo': Memo,
        'InvoiceList': JsonConverters.toJson(InvoiceList,'List<SalesForceMemberPaymentInvoiceDetail>',context!),
        'AutoPay': AutoPay,
        'StoreAchInfo': StoreAchInfo,
        'EncryptionTypeId': EncryptionTypeId
    };

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

class AchPaymentCollection implements IConvertible
{
    List<AchPayment>? AchPaymentList;

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

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

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

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

TypeContext _ctx = TypeContext(library: 'devapi.billhighway.com', types: <String, TypeInfo> {
    'AchPaymentReply': TypeInfo(TypeOf.Class, create:() => AchPaymentReply()),
    'AchPaymentReplyCollection': TypeInfo(TypeOf.Class, create:() => AchPaymentReplyCollection()),
    'List<AchPaymentReply>': TypeInfo(TypeOf.Class, create:() => <AchPaymentReply>[]),
    'SalesForceMemberPaymentInvoiceDetail': TypeInfo(TypeOf.Class, create:() => SalesForceMemberPaymentInvoiceDetail()),
    'AchPayment': TypeInfo(TypeOf.Class, create:() => AchPayment()),
    'List<SalesForceMemberPaymentInvoiceDetail>': TypeInfo(TypeOf.Class, create:() => <SalesForceMemberPaymentInvoiceDetail>[]),
    'AchPaymentCollection': TypeInfo(TypeOf.Class, create:() => AchPaymentCollection()),
    'List<AchPayment>': TypeInfo(TypeOf.Class, create:() => <AchPayment>[]),
});

Dart AchPaymentCollection DTOs

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

To embed the response in a jsonp callback, append ?callback=myCallback

HTTP + JSON

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

POST /api/SalesForce/AchPayment HTTP/1.1 
Host: devapi.billhighway.com 
Accept: application/json
Content-Type: application/json
Content-Length: length

{"AchPaymentList":[{"ClassName":"String","UniqueId":"String","CreatedDateTime":"0001-01-01T00:00:00.0000000","ClientId":0,"GroupId":"String","UserId":"String","BhUserId":0,"Amount":0,"CurrencyType":"String","Country":"String","RoutingNumber":"String","AccountNumber":"String","AchReference":"String","AccountType":"String","IsSavingsAccount":false,"PayerName":"String","CheckNumber":"String","PreferredEmailAddress":"String","Memo":"String","InvoiceList":[{"ClassName":"String","UniqueId":"String","CreatedDateTime":"0001-01-01T00:00:00.0000000","ClientId":0,"Invoice":0,"AmountPaid":"String"}],"AutoPay":false,"StoreAchInfo":false,"EncryptionTypeId":0}]}
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: length

{"AchReplyCollection":[{"ClassName":"String","UniqueId":"String","CreatedDateTime":"0001-01-01T00:00:00.0000000","ClientId":0,"TransactionId":"String","ErrorCode":0,"ErrorMessage":"String","IsError":false}]}