Archive
Payment and AutoPay Setup widget use
Yardi has two browser forms that can be inserted into a website iframe/div to handle payment processing and auto pay enrollment. You will need special access to use these forms so please speak to your account manager before attempting to use them. These are not located within the API since they contain a user interface though API access is required to gather the required data for calling them. Each widget has it’s own link. Links shown here are for our Sandbox testing environment. Links for production can be obtained from your account manager.
Payment Widget
Link:
https://estoresbx.centershift.com/payment/pay_form.aspx?accountID= <account_guid>&siteID=<site_id>&acctID=<acct_id>& rentalID=<rental_id>&totalDue=<total_due>&cycles=<cycles>
Parameters (all parameters are required)
Name | DataType |
---|---|
accountID | GUID |
Description | This is a GUID you will be assigned when your account for using these widgets is setup. |
siteID | Long |
Description | This is ID for the site that owns the account. |
acctID | Long |
Description | This is the ID for the account containing the rental to be paid. |
rentalID | Long |
Description | This is the ID for the rental to be paid. |
totalDue | Decimal |
Description | This is the amount that will be paid. This amount must match the total due for the number of cycles being paid. This information can be obtained from GetTotalDue or GetTotalDuePastDue. |
cycles | Integer |
Description | This is the number of cycles (months) to be paid. This information can be obtained from GetTotalDue or GetTotalDuePastDue. |
The following can cause errors either initially or after submitting a payment:
- A rental is in auction – If a rental is currently scheduled for auction it cannot be paid for with this widget. Contacting the site will be required.
- The total_due amount passed in does not match the total due for the number of cycles passed in.
- The total_due/cycles passed in does not bring the account current.
- Required data is missing or not of the correct type.
- Payment was attempted but declined by the processor.
- Payment was approved but not able to be posted to the account.
Auto Pay Enrollment Widget
This allows creating a new auto pay or canceling an existing auto pay record.
Link:
https://estoresbx.centershift.com/payment/autopay_form.aspx?accountID= <account_guid>&siteID=<site_id>&acctID=<acct_id>& rentalID=<rental_id>&autoPaymentID=<auto_pay_id>
Parameters
Name | DataType |
---|---|
accountID | GUID |
Description | This is a GUID you will be assigned when your account for using these widgets is setup. |
siteID | Long |
Description | This is ID for the site that owns the account. |
acctID | Long |
Description | This is the ID for the account containing the rental to be paid. |
rentalID | Long |
Description | This is the ID for the rental to be paid. |
autoPaymentID Optional | Long |
Description | This is the ID for the current auto pay record. This should be passed if there is a current record to be cancelled. Otherwise the parameter should be left off the query string entirely. To obtain this ID you can call GetAutoPaySettings |
The following can cause errors either initially or after submitting the request:
- A rental is past due and an auto pay record is to be created. A rental must be current to set up auto pay.
- Required data is missing or not of the correct type.
- An update to the data failed.
SWS VerifyEcommLogin Method
This allows you to verify the login credentials for a customer. A valid return means that the credentials match a profile and returns the profile information. If it doesn’t match, you will receive an error.
Parameters
Name | DataType | Is Required |
---|---|---|
EmailAddress | String | Required |
Description | The email address of the contact. This acts as their username in eStore/eCommerce. | |
OrgID | Long | Required |
Description | The organization’s ID number. | |
Password | String | Required |
Description | The password/eCommerce code of the contact. |
Returned Parameters
Name | DataType |
---|---|
ACTIVE | String |
Description | Indicates if the eStore/eCommerce account is active (“Y”) or not (“N”). |
ECOMM_ID | Long |
Description | The eCommerce ID number for the contacts online access. |
ORG_ID | Long |
Description | The organization’s ID number. |
PASSWORD | String |
Description | No longer returned. |
USER_NAME | String |
Description | The rental contact’s email address. |
Example
As with every method we need to pass in credentials. We do this with the LookupUser request object.
We will assume you have a web reference, let us name it SWS, in your Visual Studio project. At this point we need to define our objects. We will need the standard service object, a Password request object, and a VerifyEcommLogin response object. We can define and create those like this:
// Create a request and response objects
SWS.WSSoapClient service = new SWS.WSSoapClient();
SWS.Password_Request request = new SWS.Password_Request();
SWS.VerifyEcommLogin_Response response;
Here is a sample code of the request object:
// VerifyEcommLogin Request
request.OrgID = 123456;
request.EmailAddress = "j.doe@b.c";
request.Password = "TestPass";
Finally we can call the method and pass across the login object and the request object to retrieve our requested information. It’s a good idea to do this in a Try Catch block.
// Call the method that will load the response object
try
{
response = service.VerifyEcommLogin(user_request, request);
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
Note that if something goes wrong the service will respond with an exception. You will want to capture the message in the exception so it can be debugged.
For a full list of methods see SWS Methods.
SWS GetEcommRentalInfo Method
Retrieves a collection of rental data for a specified eCommerce account. This relies on the eCommerce data in our system, and may not be useful outside that environment.
Parameters
Name | DataType | Is Required |
---|---|---|
EcommID | Long | Required |
Description | The account’s eStore/eCommerce ID number. This is system generated when the customer is enrolled in eStore. | |
OrgID | Long | Required |
Description | The organization’s ID number. |
Returned Parameters
Name | DataType |
---|---|
ACCT_ID | Long |
Description | The account’s ID number. |
CONTACT_ID | Long |
Description | The rental contact’s ID number. |
CURRENTLY_RENTED | String |
Description | Indicates whether the rental is currently rented (“Y”) or not (“N”). |
DEL_EXEMPT | String |
Description | Indicates if the rental is set to be exempt from the delinquency (“True”) or not (“False”). |
ECOMM_ID | Long |
Description | The eCommerce ID for the customers eStore/eCommerce record |
LTD | DateTime |
Description | The lease-thru-date (LTD). |
NEXT_PTD | DateTime |
Description | The day that they will be paid thru if they make a one rental cycle payment. |
PTD | DateTime |
Description | The current paid-thru-date (PTD). |
RENTAL_ID | Long |
Description | The rental item’s ID number. |
START_DATE | DateTime |
Description | The date the customer initiated the rental. |
TOTAL_DUE | Decimal |
Description | The total amount due if there are any outstanding assessments. |
UNIT_ID | Long |
Description | The unit’s ID number. This is maintained through rentals. |
ACCT_NAME | String |
Description | The name on the account. This may differ from the primary contact’s name in some instances, such as a business account or a guardianship account. |
ACCT_TYPE | String |
Description | The system-defined account type. This should be set to “Lead”. Available values:
|
ATTRIBUTE01_VAL | String |
Description | The textual value for the “Attribute01” custom lookup as defined by the site. See eUnitAttr01 for the available values. |
CONTACT_TYPE | String |
Description | The contact’s type. Available values:
|
DEPTH | Decimal |
Description | The depth of the rental item. |
String | |
Description | The rental contact’s email address. This is also used as the username if the site supports eStore. |
FIRST_NAME | String |
Description | The given name for the account/rental contact. |
LAST_NAME | String |
Description | The family name for the rental contact. |
OBJ_PERIOD | Long |
Description | The numeric value for the “Unit of Measure” (UOM) type of rental cycle. |
OBJ_PERIOD_UOM | String |
Description | The description for the “Unit of Measure” (UOM) type of rental cycle. |
OVERLOCK_STATUS | String |
Description | An overlock status of the rental item. This is different from a gate lockout. Available values:
|
RENT_RATE | Decimal |
Description | The current rent rate of the unit. |
RENTAL_STATUS | String |
Description | The rental status of the rental item. |
SITE_ID | Long |
Description | The site’s ID number. |
SITE_NAME | String |
Description | The site’s name. |
UNIT_NUMBER | String |
Description | The unit’s number as assigned by the organization. This is not the UnitID. |
WIDTH | Decimal |
Description | The width of the rental item. |
Example
As with every method we need to pass in credentials. We do this with the LookupUser request object.
We’ll assume you’ve got a web reference, let’s name it SWS, in your Visual Studio project. At this point we need to our objects. We’ll need the standard service object, a GetEcommRentalInfo request object and a GetEcommRentalInfo response object. We can define and create those like this:
// Create a request and response objects
SWS.WSSoapClient service = new SWS.WSSoapClient();
SWS.GetEcommRentalInfo_Request request = new SWS.GetEcommRentalInfo_Request();
SWS.GetEcommRentalInfo_Response response;
Here’s my sample code of the Request object.
// GetEcommRentalInfo Request
request.OrgID = 123456;
request.EcommID = 123456;
Finally we can call the method and pass across the login object and the request object to retrieve our information. It’s a good idea to do this in a Try Catch block.
// Call the method that will load the response object
try
{
response = service.GetEcommRentalInfo(user_request,request);
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
Note that if something goes wrong the service will respond with an exception. You’ll want to take a look at that message returned in that exception so it can be debugged.
For a full list of methods see SWS Methods.