Exigo Web Services API v2022.12.19.1

QueueBillPayout

Queues a new customer bill payout to be process by a third party.

Input Properties

QueueBillPayoutRequest
PropertyData TypeNotes
StartDateDateTime
EndDateDateTime
CurrencyCode String
CountryCode String
PayableType Int32
PaymentCardType Int32Optional. The type of paycard.
ReferenceStringOptional.
BatchDescriptionStringOptional.
UseBatchPayoutBooleanOptional. . Defaults to False.
BankAccountID Int32Optional. Bank account identifier.
FeeDecimalOptional.
FeeDescriptionStringOptional.
StartCheckNumberInt32Optional.
CustomerIDInt32[]Optional. . Defaults to System.Int32[].
CustomerKeyString[]Optional.
PaymentDateDateTime
MinimumAmountDecimalOptional. . Defaults to 0.
MaximumAmountDecimalOptional.
GroupPaymentByVendorBooleanOptional. . Defaults to True.

Output Properties

QueueBillPayoutResponse
PropertyData TypeNotes
PaymentQueueRequestIdGuid

Http Request

POST https://yourcompany-api.exigo.com/3.0/payout/queuepayout HTTP/1.1
Content-Type: application/json
Authorization: Basic base64Encoded(yourlogin@yourcompany:yourpassword)

{ "startDate": "2023-02-01T00:00:00-06:00", "endDate": "2023-02-01T00:00:00-06:00", "currencyCode": "1", "countryCode": "1", "payableType": 1, "paymentCardType": 1, "reference": "", "batchDescription": "", "useBatchPayout": true, "fee": null, "feeDescription": "1", "startCheckNumber": 1, "customerID": null, "customerKey": null, "paymentDate": "2023-02-01T00:00:00-06:00", "minimumAmount": null, "maximumAmount": null, "groupPaymentByVendor": true }

Http Response

HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Length: length

{ "paymentQueueRequestId": null, "result": null }

Soap Request

The following is a sample SOAP 1.1 request and response. The placeholders shown need to be replaced with actual values.

POST /3.0/ExigoApi.asmx HTTP/1.1
Host: api.exigo.com
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: "https://api.exigo.com/QueueBillPayout"

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Header> <ApiAuthentication xmlns="http://api.exigo.com/"> <LoginName>string</LoginName> <Password>string</Password> <Company>string</Company> <Identity>string</Identity> <RequestTimeUtc>dateTime</RequestTimeUtc> <Signature>string</Signature> </ApiAuthentication> </soap:Header> <soap:Body> <QueueBillPayoutRequest xmlns="http://api.exigo.com/" /> </soap:Body> </soap:Envelope>

Soap Response

HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Body> <QueueBillPayoutResult xmlns="http://api.exigo.com/"> <PaymentQueueRequestId>guid</PaymentQueueRequestId> </QueueBillPayoutResult> </soap:Body> </soap:Envelope>

C# Rest Client

Install Nuget package Exigo.Api.Client

try

{

    //Create Api Client

    var api = new ExigoApiClient("yourcmpany", "yourlogin", "yourpassword");

 

    //Create Request

    var req = new QueueBillPayoutRequest();

 

    req.StartDate = DateTime.Today;

    req.EndDate = DateTime.Today;

    req.CurrencyCode = "1";

    req.CountryCode = "1";

    req.PayableType = 1;

    req.PaymentCardType = 1;        //The type of paycard

    req.Reference = "1";

    req.BatchDescription = "1";

    req.UseBatchPayout = true;

    req.Fee = 1;

    req.FeeDescription = "1";

    req.StartCheckNumber = 1;

 

    //Add CustomerID

    var customerid = new List<Int32>();

    customerid.Add(1);

    customerid.Add(2);

 

    //Now attach the list to the request

    req.CustomerID = customerid.ToArray();

 

    //Add CustomerKey

    var customerkey = new List<String>();

    customerkey.Add("1");

    customerkey.Add("2");

 

    //Now attach the list to the request

    req.CustomerKey = customerkey.ToArray();

    req.PaymentDate = DateTime.Today;

    req.MinimumAmount = 1;

    req.MaximumAmount = 1;

    req.GroupPaymentByVendor = true;

 

    //Send Request to Server and Get Response

    var res = await api.QueueBillPayoutAsync(req);

 

    //Now examine the results:

    Console.WriteLine("PaymentQueueRequestId: {0}", res.PaymentQueueRequestId);

}

catch (Exception ex)

{

    Console.WriteLine("Error: " + ex.Message);

}

C# Soap Client

try

{

    //Create Main API Context Object

    ExigoApi api = new ExigoApi();

 

    //Create Authentication Header

    ApiAuthentication auth = new ApiAuthentication();

    auth.LoginName = "yourLoginName";

    auth.Password = "yourPassword";

    auth.Company = "yourCompany";

    api.ApiAuthenticationValue = auth;

 

    //Create Request

    QueueBillPayoutRequest req = new QueueBillPayoutRequest();

 

    req.StartDate = DateTime.Today;

    req.EndDate = DateTime.Today;

    req.CurrencyCode = "1";

    req.CountryCode = "1";

    req.PayableType = 1;

    req.PaymentCardType = 1;        //The type of paycard

    req.Reference = "1";

    req.BatchDescription = "1";

    req.UseBatchPayout = true;

    req.Fee = 1;

    req.FeeDescription = "1";

    req.StartCheckNumber = 1;

 

    //Add CustomerID

    List<Int32> customerid = new List<Int32>();

    customerid.Add(1);

    customerid.Add(2);

 

    //Now attach the list to the request

    req.CustomerID = customerid.ToArray();

 

    //Add CustomerKey

    List<String> customerkey = new List<String>();

    customerkey.Add("1");

    customerkey.Add("2");

 

    //Now attach the list to the request

    req.CustomerKey = customerkey.ToArray();

    req.PaymentDate = DateTime.Today;

    req.MinimumAmount = 1;

    req.MaximumAmount = 1;

    req.GroupPaymentByVendor = true;

 

    //Send Request to Server and Get Response

    QueueBillPayoutResponse res = api.QueueBillPayout(req);

 

    //Now examine the results:

    Console.WriteLine("PaymentQueueRequestId: {0}", res.PaymentQueueRequestId);

}

catch (Exception ex)

{

    Console.WriteLine("Error: " + ex.Message);

}

VB.Net

Try

    'Create Main API Context Object

    Dim api as new ExigoApi()

 

    'Create Authentication Header

    Dim auth as new ApiAuthentication()

    auth.LoginName = "yourLoginName"

    auth.Password = "yourPassword"

    auth.Company = "yourCompany"

    api.ApiAuthenticationValue = auth

 

    'Create Request

    Dim req as new QueueBillPayoutRequest()

 

    req.StartDate = DateTime.Today

    req.EndDate = DateTime.Today

    req.CurrencyCode = "1"

    req.CountryCode = "1"

    req.PayableType = 1

    req.PaymentCardType = 1

    req.Reference = "1"

    req.BatchDescription = "1"

    req.UseBatchPayout = true

    req.Fee = 1

    req.FeeDescription = "1"

    req.StartCheckNumber = 1

 

    'Add CustomerID

    Dim customerid As New List(Of Int32)()

    customerid.Add(1)

    customerid.Add(2)

 

    'Now attach the list to the request

    req.CustomerID = customerid.ToArray()

 

    'Add CustomerKey

    Dim customerkey As New List(Of String)()

    customerkey.Add("1")

    customerkey.Add("2")

 

    'Now attach the list to the request

    req.CustomerKey = customerkey.ToArray()

    req.PaymentDate = DateTime.Today

    req.MinimumAmount = 1

    req.MaximumAmount = 1

    req.GroupPaymentByVendor = true

 

    'Send Request to Server and Get Response

    Dim res As QueueBillPayoutResponse = api.QueueBillPayout(req)

 

    'Now examine the results:

    Console.WriteLine("PaymentQueueRequestId: {0}", res.PaymentQueueRequestId)

Catch ex As Exception

    Console.WriteLine("Error: " & ex.Message)

End Try

PHP

Note: PHP is not officially supported.

<?php

try

{

    //Setup the SoapClient and Authentication

    $api = new SoapClient("http://api.exigo.com/3.0/ExigoApi.asmx?WSDL");

    $ns = "http://api.exigo.com/";

    $auth = array()

    $auth["LoginName"] = new SoapVar("yourLoginName",XSD_STRING,null,null,null,$ns);

    $auth["Password"] = new SoapVar("yourPassword",XSD_STRING,null,null,null,$ns);

    $auth["Company"] = new SoapVar("yourCompany",XSD_STRING,null,null,null,$ns);

    $headerBody = new SoapVar($auth, SOAP_ENC_OBJECT);

    $header = new SoapHeader($ns, 'ApiAuthentication', $headerBody);

    $api->__setSoapHeaders(array($header));

 

    //Create Request

 

    $req->StartDate = 1;

    $req->EndDate = 1;

    $req->CurrencyCode = "1";

    $req->CountryCode = "1";

    $req->PayableType = 1;

    $req->PaymentCardType = 1;

    $req->Reference = "1";

    $req->BatchDescription = "1";

    $req->UseBatchPayout = 1;

    $req->Fee = 1;

    $req->FeeDescription = "1";

    $req->StartCheckNumber = 1;

 

    //Add CustomerID

 

 

 

    //Now attach the list to the request

    req.CustomerID = array(customerI1,customerI2);

 

    //Add CustomerKey

 

    $customerKe1->Length = 1;

    $customerKe1->Chars = 1;

 

    $customerKe2->Length = 2;

    $customerKe2->Chars = 2;

 

    //Now attach the list to the request

    req.CustomerKey = array(customerKe1,customerKe2);

    $req->PaymentDate = 1;

    $req->MinimumAmount = 1;

    $req->MaximumAmount = 1;

    $req->GroupPaymentByVendor = 1;

 

    //Send Request to Server and Get Response

    $res = $api.QueueBillPayout($req);

 

    //Now examine the results:

}

catch (SoapFault $ex)

{

    echo "Error: ", $ex->getMessage();

}

?>

Java

Note: Java is not officially supported.

try

{

    //Create Main API Context Object

    ExigoApi api = new ExigoApi();

 

    //Create Authentication Header

    ApiAuthentication auth = new ApiAuthentication();

    auth.setLoginName("yourLoginName");

    auth.setPassword("yourPassword");

    auth.setCompany("yourCompany");

    api.setApiAuthenticationValue(auth);

 

    //Create Request

    QueueBillPayoutRequest req = new QueueBillPayoutRequest();

 

    req.setStartDate(1);

    req.setEndDate(1);

    req.setCurrencyCode("1");

    req.setCountryCode("1");

    req.setPayableType(1);

    req.setPaymentCardType(1);

    req.setReference("1");

    req.setBatchDescription("1");

    req.setUseBatchPayout(1);

    req.setFee(1);

    req.setFeeDescription("1");

    req.setStartCheckNumber(1);

 

    //Add CustomerID

    ArrayOfSystem.Int32 customerid = new ArrayOfSystem.Int32();

 

    Int32 customerI1 = new Int32();

    customerid.Add(customerI1);

 

    Int32 customerI2 = new Int32();

    customerid.Add(customerI2);

 

    //Now attach the list to the request

    req.setCustomerID(customerid);

 

    //Add CustomerKey

    ArrayOfSystem.String customerkey = new ArrayOfSystem.String();

 

    String customerKe1 = new String();

    customerKe1.setLength(1);

    customerKe1.setChars(1);

    customerkey.Add(customerKe1);

 

    String customerKe2 = new String();

    customerKe2.setLength(2);

    customerKe2.setChars(2);

    customerkey.Add(customerKe2);

 

    //Now attach the list to the request

    req.setCustomerKey(customerkey);

    req.setPaymentDate(1);

    req.setMinimumAmount(1);

    req.setMaximumAmount(1);

    req.setGroupPaymentByVendor(1);

 

    //Send Request to Server and Get Response

    QueueBillPayoutResponse res = api.getExigoApiSoap().queueBillPayout(req, auth);

 

    //Now examine the results:

}

catch (Exception ex)

{

    System.out.println("Error: " + ex.getMessage());

}

CSV

This method does not support csv output.