Convert existing transaction to stored customer.
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
-
ReceiptNote
SendReceipt
Notes
Description
OrderID
Enabled
Schedule
Next
NumLeft
Amount
CustomData
Source
User
Card Number
Card Expiration
Account Number
Routing Number
| 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 |
| string | Returns the CustNum of the new customer. |
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();
}
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());
}
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)
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 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>
| Version | Change |
| 1.0 | Method added in soap v1.0 |