CreateBillPayout
Creates payment transaction records for customer bills. This method does not process third party transactionsInput Properties
CreateBillPayoutRequest
Output Properties
CreateBillPayoutResponse
Http Request
POST https://yourcompany-api.exigo.com/3.0/payout/createpayout HTTP/1.1 Content-Type: application/json Authorization: Basic base64Encoded(yourlogin@yourcompany:yourpassword){ "startDate": "2024-11-02T00:00:00-05:00", "endDate": "2024-11-02T00:00:00-05:00", "currencyCode": "1", "countryCode": "1", "payableType": 1, "paymentCardType": 1, "reference": "", "batchDescription": "", "useBatchPayout": true, "fee": null, "feeDescription": "1", "startCheckNumber": 1, "customerID": null, "customerKey": null, "paymentDate": "2024-11-02T00:00:00-05:00", "minimumAmount": null, "maximumAmount": null, "groupPaymentByVendor": true }
Http Response
HTTP/1.1 200 OK Content-Type: application/json; charset=utf-8 Content-Length: length{ "startCheckNumber": 1, "endCheckNumber": 1, "startPaymentID": 1, "endPaymentID": 1, "payoutTotal": 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: totallife-api.exigo.com Content-Type: text/xml; charset=utf-8 Content-Length: length SOAPAction: "https://api.exigo.com/CreateBillPayout" <?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> <CreateBillPayoutRequest 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> <CreateBillPayoutResult xmlns="http://api.exigo.com/"> <StartCheckNumber>int</StartCheckNumber> <EndCheckNumber>int</EndCheckNumber> <StartPaymentID>int</StartPaymentID> <EndPaymentID>int</EndPaymentID> <PayoutTotal>decimal</PayoutTotal> </CreateBillPayoutResult> </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 CreateBillPayoutRequest();
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.CreateBillPayoutAsync(req);
//Now examine the results:
Console.WriteLine("StartCheckNumber: {0}", res.StartCheckNumber);
Console.WriteLine("EndCheckNumber: {0}", res.EndCheckNumber);
Console.WriteLine("StartPaymentID: {0}", res.StartPaymentID);
Console.WriteLine("EndPaymentID: {0}", res.EndPaymentID);
Console.WriteLine("PayoutTotal: {0}", res.PayoutTotal);
}
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
CreateBillPayoutRequest req = new CreateBillPayoutRequest();
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
CreateBillPayoutResponse res = api.CreateBillPayout(req);
//Now examine the results:
Console.WriteLine("StartCheckNumber: {0}", res.StartCheckNumber);
Console.WriteLine("EndCheckNumber: {0}", res.EndCheckNumber);
Console.WriteLine("StartPaymentID: {0}", res.StartPaymentID);
Console.WriteLine("EndPaymentID: {0}", res.EndPaymentID);
Console.WriteLine("PayoutTotal: {0}", res.PayoutTotal);
}
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 CreateBillPayoutRequest()
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 CreateBillPayoutResponse = api.CreateBillPayout(req)
'Now examine the results:
Console.WriteLine("StartCheckNumber: {0}", res.StartCheckNumber)
Console.WriteLine("EndCheckNumber: {0}", res.EndCheckNumber)
Console.WriteLine("StartPaymentID: {0}", res.StartPaymentID)
Console.WriteLine("EndPaymentID: {0}", res.EndPaymentID)
Console.WriteLine("PayoutTotal: {0}", res.PayoutTotal)
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.CreateBillPayout($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
CreateBillPayoutRequest req = new CreateBillPayoutRequest();
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
CreateBillPayoutResponse res = api.getExigoApiSoap().createBillPayout(req, auth);
//Now examine the results:
}
catch (Exception ex)
{
System.out.println("Error: " + ex.getMessage());
}