ChargeGroupOrderCreditCardToken
Attempts to charge a card token with the amount found on the specified orders.Input Properties
ChargeGroupOrderCreditCardTokenRequest
GroupOrder
Output Properties
ChargeGroupOrderCreditCardTokenResponse
Http Request
POST https://yourcompany-api.exigo.com/3.0/payment/charge/tokengroup HTTP/1.1 Content-Type: application/json Authorization: Basic base64Encoded(yourlogin@yourcompany:yourpassword){ "creditCardToken": "", "billingName": "", "billingAddress": "", "billingAddress2": "", "billingCity": "", "billingZip": "", "cvcCode": "", "issueNumber": "", "orders": null, "clientIPAddress": "", "masterOrderKey": "1" }
Http Response
HTTP/1.1 200 OK Content-Type: application/json; charset=utf-8 Content-Length: length{ "amount": null, "authorizationCode": "", "payments": 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/ChargeGroupOrderCreditCardToken" <?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> <ChargeGroupOrderCreditCardTokenRequest xmlns="http://api.exigo.com/"> <_orders> <GroupOrder> <OrderID>int</OrderID> <MaxAmount>decimal</MaxAmount> <OrderKey>string</OrderKey> </GroupOrder> </_orders> <CreditCardToken>string</CreditCardToken> <BillingName>string</BillingName> <BillingAddress>string</BillingAddress> <BillingAddress2>string</BillingAddress2> <BillingCity>string</BillingCity> <BillingState>string</BillingState> <BillingZip>string</BillingZip> <BillingCountry>string</BillingCountry> <CvcCode>string</CvcCode> <IssueNumber>string</IssueNumber> <CreditCardType>int</CreditCardType> <MasterOrderID>int</MasterOrderID> <Orders> <GroupOrder> <OrderID>int</OrderID> <MaxAmount>decimal</MaxAmount> <OrderKey>string</OrderKey> </GroupOrder> </Orders> <MerchantWarehouseIDOverride>int</MerchantWarehouseIDOverride> <ClientIPAddress>string</ClientIPAddress> <OtherData1>string</OtherData1> <OtherData2>string</OtherData2> <OtherData3>string</OtherData3> <OtherData4>string</OtherData4> <OtherData5>string</OtherData5> <OtherData6>string</OtherData6> <OtherData7>string</OtherData7> <OtherData8>string</OtherData8> <OtherData9>string</OtherData9> <OtherData10>string</OtherData10> <PaymentMemo>string</PaymentMemo> <MasterOrderKey>string</MasterOrderKey> </ChargeGroupOrderCreditCardTokenRequest> </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> <ChargeGroupOrderCreditCardTokenResult xmlns="http://api.exigo.com/"> <_paymentIDs> <PaymentsResponse> <_PaymentID>int</_PaymentID> <_OrderID>int</_OrderID> </PaymentsResponse> </_paymentIDs> <Amount>decimal</Amount> <AuthorizationCode>string</AuthorizationCode> <Payments> <PaymentsResponse> <_PaymentID>int</_PaymentID> <_OrderID>int</_OrderID> </PaymentsResponse> </Payments> </ChargeGroupOrderCreditCardTokenResult> </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 ChargeGroupOrderCreditCardTokenRequest();
 
    req.CreditCardToken = "1";
    req.BillingName = "1";
    req.BillingAddress = "1";
    req.BillingAddress2 = "1";
    req.BillingCity = "1";
    req.BillingZip = "1";
    req.CvcCode = "1";
    req.IssueNumber = "1";
 
    //Add Orders
    var orders = new List<GroupOrder>();
 
    var order1 = new GroupOrder();
    order1.MaxAmount = 1;
    order1.OrderKey = "1";
    orders.Add(order1);
 
    var order2 = new GroupOrder();
    order2.MaxAmount = 2;
    order2.OrderKey = "2";
    orders.Add(order2);
 
    //Now attach the list to the request
    req.Orders = orders.ToArray();
    req.ClientIPAddress = "1";
    req.MasterOrderKey = "1";       //Unique alpha numeric identifier for master  order record. Exeption will occur if MasterOrderID & MasterOrderKey are provided.
 
    //Send Request to Server and Get Response
    var res = await api.ChargeGroupOrderCreditCardTokenAsync(req);
 
    //Now examine the results:
    Console.WriteLine("Amount: {0}", res.Amount);
    Console.WriteLine("AuthorizationCode: {0}", res.AuthorizationCode);
    Console.WriteLine("Payments: {0}", res.Payments);
}
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
    ChargeGroupOrderCreditCardTokenRequest req = new ChargeGroupOrderCreditCardTokenRequest();
 
    req.CreditCardToken = "1";
    req.BillingName = "1";
    req.BillingAddress = "1";
    req.BillingAddress2 = "1";
    req.BillingCity = "1";
    req.BillingZip = "1";
    req.CvcCode = "1";
    req.IssueNumber = "1";
 
    //Add Orders
    List<GroupOrder> orders = new List<GroupOrder>();
 
    GroupOrder order1 = new GroupOrder();
    order1.MaxAmount = 1;
    order1.OrderKey = "1";
    orders.Add(order1);
 
    GroupOrder order2 = new GroupOrder();
    order2.MaxAmount = 2;
    order2.OrderKey = "2";
    orders.Add(order2);
 
    //Now attach the list to the request
    req.Orders = orders.ToArray();
    req.ClientIPAddress = "1";
    req.MasterOrderKey = "1";       //Unique alpha numeric identifier for master  order record. Exeption will occur if MasterOrderID & MasterOrderKey are provided.
 
    //Send Request to Server and Get Response
    ChargeGroupOrderCreditCardTokenResponse res = api.ChargeGroupOrderCreditCardToken(req);
 
    //Now examine the results:
    Console.WriteLine("Amount: {0}", res.Amount);
    Console.WriteLine("AuthorizationCode: {0}", res.AuthorizationCode);
    Console.WriteLine("Payments: {0}", res.Payments);
}
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 ChargeGroupOrderCreditCardTokenRequest()
 
    req.CreditCardToken = "1"
    req.BillingName = "1"
    req.BillingAddress = "1"
    req.BillingAddress2 = "1"
    req.BillingCity = "1"
    req.BillingZip = "1"
    req.CvcCode = "1"
    req.IssueNumber = "1"
 
    'Add Orders
    Dim orders As New List(Of GroupOrder)()
 
    Dim order1 as new GroupOrder()
    order1.MaxAmount = 1
    order1.OrderKey = "1"
    orders.Add(order1)
 
    Dim order2 as new GroupOrder()
    order2.MaxAmount = 2
    order2.OrderKey = "2"
    orders.Add(order2)
 
    'Now attach the list to the request
    req.Orders = orders.ToArray()
    req.ClientIPAddress = "1"
    req.MasterOrderKey = "1"
 
    'Send Request to Server and Get Response
    Dim res As ChargeGroupOrderCreditCardTokenResponse = api.ChargeGroupOrderCreditCardToken(req)
 
    'Now examine the results:
    Console.WriteLine("Amount: {0}", res.Amount)
    Console.WriteLine("AuthorizationCode: {0}", res.AuthorizationCode)
    Console.WriteLine("Payments: {0}", res.Payments)
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->CreditCardToken = "1";
    $req->BillingName = "1";
    $req->BillingAddress = "1";
    $req->BillingAddress2 = "1";
    $req->BillingCity = "1";
    $req->BillingZip = "1";
    $req->CvcCode = "1";
    $req->IssueNumber = "1";
 
    //Add Orders
 
    $order1->MaxAmount = 1;
    $order1->OrderKey = "1";
 
    $order2->MaxAmount = 2;
    $order2->OrderKey = "2";
 
    //Now attach the list to the request
    req.Orders = array(order1,order2);
    $req->ClientIPAddress = "1";
    $req->MasterOrderKey = "1";
 
    //Send Request to Server and Get Response
    $res = $api.ChargeGroupOrderCreditCardToken($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
    ChargeGroupOrderCreditCardTokenRequest req = new ChargeGroupOrderCreditCardTokenRequest();
 
    req.setCreditCardToken("1");
    req.setBillingName("1");
    req.setBillingAddress("1");
    req.setBillingAddress2("1");
    req.setBillingCity("1");
    req.setBillingZip("1");
    req.setCvcCode("1");
    req.setIssueNumber("1");
 
    //Add Orders
    ArrayOfGroupOrder orders = new ArrayOfGroupOrder();
 
    GroupOrder order1 = new GroupOrder();
    order1.setMaxAmount(1);
    order1.setOrderKey("1");
    orders.Add(order1);
 
    GroupOrder order2 = new GroupOrder();
    order2.setMaxAmount(2);
    order2.setOrderKey("2");
    orders.Add(order2);
 
    //Now attach the list to the request
    req.setOrders(orders);
    req.setClientIPAddress("1");
    req.setMasterOrderKey("1");
 
    //Send Request to Server and Get Response
    ChargeGroupOrderCreditCardTokenResponse res = api.getExigoApiSoap().chargeGroupOrderCreditCardToken(req, auth);
 
    //Now examine the results:
}
catch (Exception ex)
{
    System.out.println("Error: " + ex.getMessage());
}