> ## Documentation Index
> Fetch the complete documentation index at: https://docs.slm.m1amdocs.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Account.fetchByWebSessionVid

Use Vindicia’s Hosted Order Automation (HOA) feature to create Subscribe objects that contain sensitive payment information, such as credit-card account numbers. Using HOA, you may have your customers submit their data through a specially designed Web order form, accessed from your server, which allows you to store credit card numbers directly on Vindicia’s servers. Because HOA completely bypasses your server at form submission, your PCI compliance efforts may be mitigated. See Hosted Order Automation in the Subscribe Programming Guide for details on HOA.

Within your HOA implementation, call the `fetchByWebSessionVid` method to retrieve the `Account` object created by HOA on Vindicia’s servers when a customer submits an order form that results in a one-time or recurring bill. You must also create a `WebSession` object on Vindicia’s servers before serving the form to your customer to track the form’s submission to Vindicia. For details, see [The WebSession Object](The_WebSession_Object).

The `WebSession` object’s VID serves as the tracking ID for various activities, from serving the order form to a customer, to returning a success or failure page to that same customer. The success page to which HOA redirects the customer’s browser after successfully processing the data is the order form. On that page, the `WebSession` object’s VID is available to you because HOA passes it during the redirection. In turn, you can pass that VID as the input parameter to this call and retrieve the `Account` object created by HOA. Finally, you can extract the contents of the `Account` object and include them, as appropriate, in the success page to be returned to the customer.

## Input

*srd*: sparse response description, a SOAP string (which must be a JSON object), in which you specify the elements you want returned.This parameter enables the calling system to constrain a `method` call to return only components you specify. This gives you greater control over returned content, and improves response time within the Vindicia platform by reducing the processing needed for the call.

Some fields are required, either practically or in the WSDL, and will be returned regardless of the *srd*. A null *srd* returns the complete response.

*vid*: the `WebSession` object’s Vindicia unique identifier for tracking the submission of the order form.

## Output

*return*: an object of type `Return` that indicates the success or failure of the call.

*account*: an `Account` object created by HOA as a result of an order form submitted by a customer.

## Returns

In addition to those listed in [The Return Object](The_Return_Object), this call returns:

| Return Code | Return String |
| - | - |
| `400` | `Missing required parameter 'vid'.` |
| `404` | `Unable to find requested Account: No matches.` |

## Example

```

// To call the fetchByWebSessionVid on a success web page:

$webSessionVid = …; //passed in by redirected page
$soap = new WebSession();
$response = $soap->fetchByVID($webSessionVid);

if ($response['returnCode'] == 200) {
   $fetchedWs = $response['data']->session;
   // check if the Subscribe API call made by HOA was successful
   $retCode = $fetchedWs->apiReturn->returnCode;

   if ($retCode == 200) {

      // Assuming HOA created an Account object, let's fetch it

      $soapAcct = new Account($soapLogin, $soapPwd);
      $resp = $soapAcct->fetchByWebSessionVid($webSessionVid);

      if ($resp['returnCode'] == 200) {      
         $createdAccount = $resp['data']->account;

         // Get Account contents here to be included in
         // HTML returned to the customer.
         }
      else {
      // Return error message to customer
      }   
   }
   else {
   // return failure page to customer
   }
}
else {
// Return error message to the customer 
}
```

**Parent topic:**[Account Methods](../topics/Account_Methods)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.