Exigo Web Services API v2022.12.19.1

CreatePayout

Creates a new payout for one or more bills and updates status

Input Properties

CreatePayoutRequest
PropertyData TypeNotes
BillIDs_ToPayInt32[]
VendorPaymentTypeID Int32Payment type.
CustomerIDInt32Unique numeric identifier for customer record.
BankAccountID Int32Bank account identifier.
ReferenceStringOptional.
TransactionNoteStringOptional.
PaymentDateDateTime
CustomerKeyStringOptional. Unique alpha numeric identifier for customer record. Exeption will occur if CustomerID & CustomerKey are provided.

Output Properties

CreatePayoutResponse
PropertyData TypeNotes
PayoutIDInt32
TotalDollarAmountDecimal

Http Request

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

{ "billIDs_ToPay": null, "vendorPaymentTypeID": 1, "customerID": 1, "reference": "", "transactionNote": "", "paymentDate": "2024-03-19T00:00:00-05:00", "customerKey": "1" }

Http Response

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

{ "payoutID": 1, "totalDollarAmount": 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/CreatePayout"

<?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> <CreatePayoutRequest xmlns="http://api.exigo.com/"> <BillIDs_ToPay> <int>int</int> </BillIDs_ToPay> <VendorPaymentTypeID>int</VendorPaymentTypeID> </CreatePayoutRequest> </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> <CreatePayoutResult xmlns="http://api.exigo.com/"> <PayoutID>int</PayoutID> <TotalDollarAmount>decimal</TotalDollarAmount> </CreatePayoutResult> </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 CreatePayoutRequest();

 

 

    //Add BillIDs_ToPay

    var billids_topay = new List<Int32>();

    billids_topay.Add(1);

    billids_topay.Add(2);

 

    //Now attach the list to the request

    req.BillIDs_ToPay = billids_topay.ToArray();

    req.VendorPaymentTypeID = 1;    //Payment type.

    req.CustomerID = 1;             //Unique numeric identifier for customer record.

    req.Reference = "1";

    req.TransactionNote = "1";

    req.PaymentDate = DateTime.Today;

    req.CustomerKey = "1";          //Unique alpha numeric identifier for customer record. Exeption will occur if CustomerID & CustomerKey are provided.

 

    //Send Request to Server and Get Response

    var res = await api.CreatePayoutAsync(req);

 

    //Now examine the results:

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

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

}

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

    CreatePayoutRequest req = new CreatePayoutRequest();

 

 

    //Add BillIDs_ToPay

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

    billids_topay.Add(1);

    billids_topay.Add(2);

 

    //Now attach the list to the request

    req.BillIDs_ToPay = billids_topay.ToArray();

    req.VendorPaymentTypeID = 1;    //Payment type.

    req.CustomerID = 1;             //Unique numeric identifier for customer record.

    req.Reference = "1";

    req.TransactionNote = "1";

    req.PaymentDate = DateTime.Today;

    req.CustomerKey = "1";          //Unique alpha numeric identifier for customer record. Exeption will occur if CustomerID & CustomerKey are provided.

 

    //Send Request to Server and Get Response

    CreatePayoutResponse res = api.CreatePayout(req);

 

    //Now examine the results:

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

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

}

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 CreatePayoutRequest()

 

 

    'Add BillIDs_ToPay

    Dim billids_topay As New List(Of Int32)()

    billids_topay.Add(1)

    billids_topay.Add(2)

 

    'Now attach the list to the request

    req.BillIDs_ToPay = billids_topay.ToArray()

    req.VendorPaymentTypeID = 1

    req.CustomerID = 1

    req.Reference = "1"

    req.TransactionNote = "1"

    req.PaymentDate = DateTime.Today

    req.CustomerKey = "1"

 

    'Send Request to Server and Get Response

    Dim res As CreatePayoutResponse = api.CreatePayout(req)

 

    'Now examine the results:

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

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

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

 

 

    //Add BillIDs_ToPay

 

 

 

    //Now attach the list to the request

    req.BillIDs_ToPay = array(billIDs_ToPa1,billIDs_ToPa2);

    $req->VendorPaymentTypeID = 1;

    $req->CustomerID = 1;

    $req->Reference = "1";

    $req->TransactionNote = "1";

    $req->PaymentDate = 1;

    $req->CustomerKey = "1";

 

    //Send Request to Server and Get Response

    $res = $api.CreatePayout($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

    CreatePayoutRequest req = new CreatePayoutRequest();

 

 

    //Add BillIDs_ToPay

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

 

    Int32 billIDs_ToPa1 = new Int32();

    billids_topay.Add(billIDs_ToPa1);

 

    Int32 billIDs_ToPa2 = new Int32();

    billids_topay.Add(billIDs_ToPa2);

 

    //Now attach the list to the request

    req.setBillIDs_ToPay(billids_topay);

    req.setVendorPaymentTypeID(1);

    req.setCustomerID(1);

    req.setReference("1");

    req.setTransactionNote("1");

    req.setPaymentDate(1);

    req.setCustomerKey("1");

 

    //Send Request to Server and Get Response

    CreatePayoutResponse res = api.getExigoApiSoap().createPayout(req, auth);

 

    //Now examine the results:

}

catch (Exception ex)

{

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

}

CSV

This method does not support csv output.