developer:soap-1.4:methods:converttrantocust

Soap API v1.4

convertTranToCust

Convert existing transaction to stored customer.

Description

This method copies the credit card/check data, card holder name and address information from an existing transaction and uses it to create a new customer record to be stored in the Customer Database. By default, the customer will be created with recurring billing disabled.

The method returns the new CustNum (customer number). Optional customer fields can be created using the UpdateData parameter. See the quickUpdateCustomer method for details on what fields may be set.

Only information entered in the original transaction will be saved. To input additional data, use the updateCustomer or quickUpdateCustomer methods. updateCustomer will replace all existing customer data, while quickUpdateCustomer allows you to update selected fields only.

Possible fields are:

  • FirstName
  • LastName
  • CustomerID
  • Company
  • Address
  • Address2
  • City
  • State
  • Zip
  • Country
  • Phone
  • Fax
  • Email
  • URL
  • ReceiptNote
  • SendReceipt
  • Notes
  • Description
  • OrderID
  • Enabled
  • Schedule
  • Next
  • NumLeft
  • Amount
  • CustomData
  • Source
  • User
  • Card Number
  • Card Expiration
  • Account Number
  • Routing Number

Syntax

string convertTranToCust ( ueSecurityToken Token, integer RefNum, FieldValue UpdateData )

Arguments

Type Name Description
ueSecurityToken Token Merchant security token: used to identify merchant and validate transaction.
integer RefNum Transaction Reference number assigned by the gateway.
FieldValue UpdateData Recurring

Return Value

string Returns the CustNum of the new customer.

Examples

PHP

For directions on how to set up the WSDL link, create “$token” and “$client”, go to PHP Soap How-to.

try {
  // Set RefNum to the Reffernce Num of the 
  //transaction you want to convert to a customer
  $RefNum="123456789";
 
  // Creating customer, saving exact time and verifying customer was created.
  $RecurringBillData = array(
    array('Field'=>'NumLeft', 'Value'=>'10'),
	array('Field'=>'Amount', 'Value'=>'7.40'),
	array('Field'=>'Description', 'Value'=>'Monthly Bill'),
	array('Field'=>'Schedule', 'Value'=>'Monthly'),
	array('Field'=>'Enabled', 'Value'=>'Yes'),
  );
 
  $custnum = $client->convertTranToCust($token, $RefNum, $RecurringBillData);
}  catch(Exception $e) { 
  echo 'Error: ' . $e->getMessage(); 
}

Java

This example uses the USAePay Java library. For directions on how to install the library and create the token/client objects, go to either the Java JAX-RPC Howto or the Java JAX-WS Howto.

try {
 
//Transaction Reffernce Number to convert to a customer
BigInteger RefNum = new BigInteger('123456');
 
//Setting up the Field Value array for updated data specific to the customer
FieldValueArray UpdateData = new FieldValueArray();
UpdateData.add(new FieldValue("Schedule", "weekly"));
UpdateData.add(new FieldValue("NumLeft", "7"));
 
//Converting to a customer
BigInteger CustNum = client.convertTranToCust(token, RefNum,UpdateData);
 
} catch (Exception e) {
	System.out.println("Soap Exception: " + e.getMessage());
}

.NET VB

Dim refnum As String
        refnum = "46978031"
        Dim update(0 To 1) As usaepay.FieldValue
        For i As Integer = 0 To 1
            update(i) = New usaepay.FieldValue
        Next
 
        update(0).Field = "Schedule"
        update(0).Value = "weekly"
        update(1).Field = "NumLeft"
        update(1).Value = "7"
 
        Dim response As String
        response = client.convertTranToCust(token, refnum, update)
        MsgBox(response)

.NET C#

For directions on how to set up the WSDL link and create the “token” and “client” variables, go to the C Sharp .Net Soap How-to.

            string refnum = "46978031";
            usaepay.FieldValue[] update = new usaepay.FieldValue[2];
            for (int i = 0; i < 2; i++) {
 
                update[i] = new usaepay.FieldValue();
 
            }
 
            update[0].Field = "Schedule"; update[0].Value = "weekly";
            update[1].Field = "NumLeft"; update[1].Value = "7";
 
            string response;
 
            try
            {
                response = client.convertTranToCust(token, refnum, update);
 
                MessageBox.Show(string.Concat("Customer Number: ",
                            response));
 
            }
 
 
            catch (Exception err)
            {
                MessageBox.Show(err.Message);
            }

XML

<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" 
xmlns:ns1="urn:usaepay" xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<SOAP-ENV:Body>
<ns1:convertTranToCust>
 <Token xsi:type="ns1:ueSecurityToken">
  <ClientIP xsi:type="xsd:string">192.168.0.1</ClientIP>
  <PinHash xsi:type="ns1:ueHash">
   <HashValue xsi:type="xsd:string">af3e6168796c67107dcd0442e9c5f3827daadb25</HashValue>
   <Seed xsi:type="xsd:string">1340129356664563792</Seed>
   <Type xsi:type="xsd:string">sha1</Type>
  </PinHash>
  <SourceKey xsi:type="xsd:string">422Rg4_Your_Source_Key_ayCiW67</SourceKey>
 </Token>
 <RefNum xsi:type="xsd:integer">52512930</RefNum>
 <UpdateData SOAP-ENC:arrayType="ns1:FieldValue[5]" xsi:type="ns1:FieldValueArray">
  <item xsi:type="ns1:FieldValue">
   <Field xsi:type="xsd:string">NumLeft</Field>
   <Value xsi:type="xsd:string">10</Value>
  </item>
  <item xsi:type="ns1:FieldValue">
   <Field xsi:type="xsd:string">Amount</Field>
   <Value xsi:type="xsd:string">7.40</Value>
  </item>
  <item xsi:type="ns1:FieldValue">
   <Field xsi:type="xsd:string">Description</Field>
   <Value xsi:type="xsd:string">Monthly Bill</Value>
  </item>
  <item xsi:type="ns1:FieldValue">
   <Field xsi:type="xsd:string">Schedule</Field>
   <Value xsi:type="xsd:string">Monthly</Value>
  </item>
  <item xsi:type="ns1:FieldValue">
   <Field xsi:type="xsd:string">Enabled</Field>
   <Value xsi:type="xsd:string">Yes</Value>
  </item>
 </UpdateData>
</ns1:convertTranToCust>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Change History

Version Change
1.0 Method added in soap v1.0
developer/soap-1.4/methods/converttrantocust.txt · Last modified: 2012/06/19 11:27 by charlie

Page Tools