Complete Rental System Manual

Introduction : Welcome to The complete Rental system .
Welcome and thank you for the interest you put in this product.
The 3rd version included Paypal transactions and was built with even more solid and security in mind, i did spent a few month developing a solution to offer validated paypal transactions as well as fine-tuning tuning every other components, See section “Paypal Transactions” for further information on how to enable it.
The Menu offer a intuitive way of settings the components to offer, i hope, a better understanding and easiness of your sconfig.
But don’t get me wrong, if this system can do this and that and even this plus that, there is a price to it : the learning curve. So if you think this system is too complex, then maybe its not the right system for you. Or maybe you should just give it up some time, because in the end, you’ll see that everything fall in place accordingly to the needs.
In the 4th version, “Presence monitoring” & “auto notification to tenants” where added as well as a few reports.
The Rental Server was always conscious of the resource of the system (ie. not writing Notecard constantly) by writing the less possible amount of notecard, but now got even more conscious as with 5.0+ by writing the necessary data to linkset instead of Notecard,
There is now 5 reports to choose from :
These 5 reports are “Rentals Config” that will help you validate and setup all your rentals.
“Rentals” provide all the needed information about your parcels in one report,
“Transactions” will show you the last 300 Transactions (*see note about the API),
“Monitoring” will show you the last 30 days of presence in the region.
And “Exception” that will zoom only on the parcels with exceptions.
There are also hidden button in the Server to help test things up if you want to use the API / or check texturing the cards.
The Rental System allow for up to 64 rentals per regions maximum at the moment, This is because of some limitations in the queuing messages.
Although it could be possible to manage those caveats in other ways, it isn’t done for now as frankly anyway, 64 per regions is probably enough considering resources managements. If ever you need more, than just ask, i might as well just do it.
I am also available, just leave me an IM, or better yet come in “Element” (see in world for the links). You have better chance to catch me there.
I’ll try my best to help you get the basics for setting up your rentals.
If you are upgrading from previous versions see section “*Upgrading / RentalSystemUpdater” in the manual
Some additional notes for the 5.0 Release
You might want to copy the actual “!Stats” and “!MonitorData” Notecard inside the server as these will be deleted,
The Region Monitoring will be upgraded to the linkset and the Notecard “!MonitorData” will be deleted.
The transaction Notecard will be deleted (!Stats). The Transactions wont be transfered to the linkset (see section “The Statistics”)
Upgrading
For Upgrade, see the section “Upgrading / RentalSystemUpdater”
What is in the Box
The system components are:
RentalBox : you place one on each parcel you want to Rent
Rental Server : one Rental server per region
RentalKiosk : can have more than one per region, will offer the users to browse the current rental in the region.
MapKiosk : can have more than one per region, should be place beside a Rental Kiosk, will display the rental on the map.
RentalSystemUpdater : you don’t need this one if its your first time install, only when upgrading your current version to the latest.
Pin* : These can be used in case you have been using version prior 3.00 and are using more than 40 rentals on a region, see below for instructions.
!PaypalConfig : If you are upgrading from version prior to 3.00, you will need to add the file in your server.
ReadMe : The Readme file
Manual : The manual of “Complete Rental System”

** NOTE BEFORE USING **
If you get no response when clicking on COMPONENT, it mean the script cannot be compile on your region,
there are many opensim fork versions . This has been tested and running under the latest OpenSim 0.9.3.0.
If it used to work, but no longer, see the section about security, you might just have forgot to set your new server keys.
Make sure your system meet the Requirement
Requirement
version 5.0+ Require the use of LinksetData which is typically version 0.9.3.0. Make sure your OpenSim version support LinksetData.
You need these to run this system, you must be a ESTATE_MANAGER,ESTATE_OWNER
osSetDynamicTextureDataBlendFace ${OSSL|osslParcelOG}ESTATE_MANAGER,ESTATE_OWNER
osSetDynamicTextureDataFace ${OSSL|osslParcelOG}ESTATE_MANAGER,ESTATE_OWNER
osGetNotecard ${OSSL|osslParcelO}ESTATE_MANAGER,ESTATE_OWNER
osMakeNotecard ${OSSL|osslParcelO}ESTATE_MANAGER,ESTATE_OWNER
I also recommend downgrading the right of osSetParcelDetails to Estate owner only:
config-include/osslEnable.ini :
Allow_osSetParcelDetails = ESTATE_MANAGER,ESTATE_OWNER
How it works
There are two types of rentals : RentOwner and RentGroup.
You can use both of them in your regions .
RentOwner will allow the tenant to become the owner of the parcel.
and RentGroup will grant the tenant the right allowed on the group only, not becoming the owner.
The first method is more adapted to people who want to be able to put up their own house, and set everything, no general themes, like renting land in SL.
The second method is more adapted for the area you want to rent as is, with the house and surroundings, themes, etc. Like the Linden Houses.
RentOwner
This type of rental will allow the tenant to be the owner of the land.
Preparation:
- Set the parcel to you (owner) no group.
- Set the “SendGroup” in settings to on or off, depending on if you want the tenant to be added to a group automatically. This group has no impact on his land rental.
- Place the Rental Box Outside the parcel you want to rent (sell) at the parcel land limit (just beside the neighbor parcel that is yours (you stay owner of)).
- Edit Linked “the Rental Box”, select the transparent ball, and move it inside the parcel,
so that the Rental Box stays outside the parcel you want to rent and the ball inside the parcel.
That is done to prevent the new owner being able to “return” your rental box, and still give the right information about the parcel being rent. - Drop a snapshot or texture in the Rental Box (don’t forget to get back in not linked mode). This texture will be used for the Rental Kiosk when displaying this rental.
You can also change the Access to the Rental to either NONE, PUBLIC or GROUP, None would be only you, not a good way to Rent!
Set to Public anyone can Rent. 🙂
If you want to restraint the Rental to only person in a particular group, set the rental to that group, then in the settings :
set The Access to the Rental to GROUP. (sendGroup can also be turned off since they already have the group).

The surrounding parcels or regions could be for example the public area surrounding and in between your rental parcels.
When the tenant rent, the land will become his (don’t worry, you stay the estate owner) and he’ll be able to do whatever he wants (that you’ve allowed in the estate) on the parcel. He can also return everything that is already on the land. Hence the reason you place the RentalBox outside of the parcel.
When the land expires or when you or he cancels the rent, he loses the ownership of the parcel. The parcel comes back to you.
The tenant can also add more tenant in his tenant list, that will give them access to the rental menu so they can both manage it.
RentGroup
With this type of rental, you stay the owner of the parcel.
Preparation:
- Assign this parcel a unique group, you will create this group as private, and deed it to the parcel.
You’ll give the right to rezz to that group and everything you want the tenant to be able to do on the parcel.
I would recommend at least these right for ‘everyone’ in the group:
-> Change Music & media settings
-> Always allow ‘fly’
-> Always allow ‘Create Objects’
-> Ignore landing point
-> Allow ‘Set home to here’ in group land
-> Manage parcel access lists
-> Manage parcel Ban lists - Set the “SendGroup” in settings to on or off, depending on if you want the tenant to be automatically added to the group,
so he can use his land right away, else you will have to do it manually.
Note: if you set the same group for all your parcel to rent, I would suggest you leave the SendGroup to Off, you ‘ll do them manually. - Simply place the Rental Box on the parcel. Make sure the Rental box is assigned to this same group ( not deeded).
- Set the Access to the Rental to Public, else nobody will be able to Rent
- Drop a snapshot or texture in the Rental Box. This texture will be used for the Rental Kiosk when displaying this rental.

Rental Server Main Menu
Reports :See section “Rental Server Reports”
Settings : See section “Rental Server Menu (Server Settings)”
Info : show a summary of the server settings

Rental Server Menu (Server Settings)
Only you can access the server menu or Group if Access is set to Group..
See the section “Paypal Transactions” to know more about how to enable Paypal.
Pricing :
Set how you define your pricing and default price for your rental. You can also override the price on each rentals.
->$PerSqm : will set the price per Square Meter of the parcel
->$PerPrim : Will set the price per Prim Available on the parcel
->$Fixed : will set the price at the fixed amount you entered
$Price : The value of the price, Ex : $Price x SQM , $Price x Prim, $Price ( unit of Price Based on)
Price Based on : Indicate which money is used to calculate the price, Either ‘Money system’ or ‘Real Money’ (paypal).
Accept Money system payment : on or off , Whether or not the tenants can pay with Money System.
Accept Real Money payment (paypal): on or off , Whether or not the tenants can pay with paypal.
Max Prim (*1): Set the maximum prim for all rental box (0 = Use available prim on the parcel)
Exchange Rate : Indicate how many ‘Money system $G’ you can get for 1$ Real money
Stats :
If you want to keep statistics of your Rental:
->None : Statistics will not be kept
->Linkset : Statistics will be written in the Linkset. Only 300 transactions are kept. (see section down below about the statistics further down)
->ServerURL : Statistics will be written in your MySql Database, This will only work if you have installed the necessary API on your server machine.
(See the Section about the statistics further down “The Statistics on MySql*”)
Notification : See section “Rental Server Notification”
ResetData: This will , erase the current data in the server and obtain new data, also redrawing all the card for each parcel. (*4)
FactoryReset : Settings are restored to default factory settings. ATTENTION, you will loose all your current settings.
Reset Invoice : This will reset invoice sequence to 1. When you get past 999999, you must change the Invoice Prefix in paypal config and Reset Invoice.
Redraw Bar : Per default, at each hour, each Rental Box will get his meters refreshed. You can send the command to do it now. Rentals will still be refreshed each hour.
Rental Period : Set the maximum allowed time for rent. I would suggest setting it to 4 if no money is involved, or 8 when money is involved. Max 72
$Currency : Set the symbol used to describe the system money currency. ( default is $G )
Access : Who can access the Server : NONE (only you) or GROUP (people who has the same group as the Server)
Restrict2Grid : If set to ON, only native avatar from your grid will be able to rent.
The server holds the data of each parcel, those will be used by the Rental Kiosk, and our future tools.
The data kept is:
The rentals. (each parcel, their location, price settings, etc.)
The texture card displayed on the rental kiosk.
The TOS: file “!TOS” . You will have to put your own TOS instead of this one.
Rental Box Menu (Rental Box Settings)

Only you can access the Rental Box Settings (or your admins)
Rentname : All the rent is done under that name, so each parcel should have a different name. It is the description of the Rental Box.
RentType : Will set the type of Rent for the Renter Box (see notes above)
RentGroup : This is a RentGroup Parcel
RentOwner : This is a RentOwner Parcel
SendGroup : Depending if this is set to on or off, will send the group associated with the RentalBox when the rent is done, and eject at the end or cancellation.
ItemNumber : Item number that identifies this RentName in short , less than 8 character. Default is first 8 character of Rentname.
SetTenantId: in case you want to rent for someone else, because he’s not there, you can rent yourself, then go there, and set manually
you will enter: {TenantId}~{Tenant name}
Start Date: Enter a new starting date for the rental (no charge applied)
End Date: Enter a new Ex piracy date for the rental (no charge applied)
Pricing : Pricing for this parcel
->$Server : keep the method define on the Server
->$PerSqm : or use the method per Square Meter
->$PerPrim : or use the method per Prim
->$Fixed : or use a Fixed Price
Note: To use the price defined on the server, you should set the Method to $Server, set the Price and MaxPrim to -1
Price : Override the price set on the server (-1 to keep the value of the server)
Max Prim (*1) : Set the maximum prim for this Parcel (-1 to keep the value of the server, 0 = Use available prim on the parcel)
Access : Who can access the Rental Box : NONE (only you), PUBLIC (everyone) , or GROUP (people who has the same group as the RentalBox)
Rental Box Menu
The menu offered to everyone (See access in settings)
when not Rented Give access to:
Rent : To rent the parcel.
TOS : to get the TOS. (See the server setting for the TOS)
Info : Give information about the property, sqm, price, etc.. *6
When Rented Give access to:
Add Time : The tenant can add time on is rental, the maximum expendable is based on the maximum week set on the server. (either 4 or 8 weeks)
Cancel Rent : The tenant can cancel his rent at any moment, there is no refund. You will have to process that part manually if you want to give money back.
See the details about the type of rental to see what happen when the rent is made.
Resend Group: Depending on if the “SendGroup” is set to on or off, this option will allow the tenant to get the group again.
Tenants : You can add more than one tenants for a parcel (the original tenant do not have to be in this list)
Add Tenant : add a tenant in your tenant list.
Del Tenant : remove a tenant from your tenant list.
List Tenant : List your current tenant list.
Renting and canceling a Rent
Renting
If the amount of the transaction is 0, then no money is involved, else it is assumed to be the currency you’ve setup in region.
When the tenant presses the rent, he is offered a menu to add time to the rent, like “1 week”, 2 week”, etc.
This can be set to a maximum of 1 or 72 weeks from the server. If The maximum exceed 8 weeks, the choice is offered in months like “1 month”, “2 months”, etc..
A menu is then displayed to confirm the rent. If he cancels, then no rent is done.
if no money is involved, then no additional step is required. The transaction is completed.
if money is involved, then the tenant can pay with either “Money system ($G) or Paypal $ depending on your Server Settings,
if he pay with Money System :
. the Rental box will become payable, the tenant has 30 seconds to pay, after that (may take a few seconds), the Rental box become rented.
. if the tenant changed the amount like giving less than what asked, the rental is not giving, he loses his money, you ‘ll have to see with him how you proceed from there.
if he pay with Paypal :
. The Rental box become unresponsive throughout the process
. A paypal payment web page is offered to open, he must click on it ( a timer of 5 minutes will report the transactions as Timed Out, you ‘ll have to see with him how you proceed from there. )
. After he completed the paypal payment process, the transaction will be reported as completed and the box become responsiveness again.
. Note: if you enabled paypal without installing the IPNListener (See paypal Transactions), the tenant is offered the paypal payment web page , but there is no validation past that point,
the transaction is considered completed, and you will have to verify manually in your paypal account if he really paid or not, and cancel the rent if he did’nt.
when the transaction is completed :
the group is given depending on your “SendGroup” setting.
The rental box is now locked to either you or the tenant. Anyone else is denied.
The tenant’s name is displayed on the Rental Box, along with a Meters displaying in % the remaining time.
The color of the Rental Box goes from Green to Blue.
When the Rental becomes expired, the Rental box goes to RED and you’ll have to cancel the rent manually at your disposal, You may leave a few days of grace.
This display is refreshed every hours, at the minute.
Cancel Rent
When the tenant, or you the owner decides to cancel the rent.
A menu is displayed asking the avatar to Confirm if he really want to Cancel the Rent. No money is being given back, so if you intend to do something to compensate, you will have to do it manually. (you can take a look at the Blackbox (*2) or the statistics to see the money involved)
The tenant as well as all other tenants in the list get removed from the group if group was set to on.
Make sure he/they really are ejected from the group. in case you do it for him (SendGroup set to OFF)
Rental Server Menu (Reports)
Each time you select a report , you can choose to output it on “IM” or “Notecard”.
When you output to IM, the report will be printed on the IM chat, you can from there if you want,
select the lines of the report and copy paste them in a Notepad or something else
that use non TT type to get a better output.
*Note on IM if the report is too big you will get error “Out of Heap”, in that case you will have to Reset the scripts and ouput to Notecard instead)
If you output to Notecard, the notecard is sent to you and also kept in the server
under the name “{Reportname}{YYYY-MM-DD hh:mm:ss}”,
you will want to clean that up from time to time.
You have 5 Reports to choose from.
RentalsConfig
Display a report of all rentals with their configuration, (usefull to double check your current rental settings)

Rentname…….. : The Rental Name
ParcelName…… : The name of the parcel ( first characters only)
Desc……………..: Description of the parcel ( first characters only)
Sqm ……………..: The size of the parcel in Square meters
GrpOwn ………..: Is the parcel own by a group ? (useful to check the Rental type)
Access………….: The access type for that Rental
RentType ……..: This unit Type (RentOwner or RentGroup)
SendGrp ……….: Send the Group when Renting
PriceType ………: Price type
Price ……………: Price
MaxPrim ………..: Maximum prim available for the tenant
$G ……………….: Price in unit System / week
$………………….: $ Price in Real money / week
Rented …………: Is the unit currently rented (yes / No)
RemDays……….: Number of remaining days
Rentals
Display detailed information for all your Rentals

Rentname…….. : The Rental Name
Sqm ……………..: The size of the parcel in Square meters
RentType ……..: This unit Type (RentOwner or RentGroup)
PriceType ………: Price type
Price ……………: Price
Pc.Prim………….: The maximum prim available on the parcel
Sys.Used………..: System Allocated prim on the parcel ( the prim you used to setup the parcel when using RentGroup)
MaxPrim ………..: Maximum prim available for the tenant
Used……………..: The prims the tenant is using
Free ……………..: The number of prim available for the tenant
$G ……………….: Price in unit System / week
$………………….: $ Price in Real money / week
Rented By………: Name of the tenant.
RemDays……….: Number of remaining days
Minutes…………: Number of minutes spent on the region by the tenant and all his sub-tenants (only if Monitor presence is enabled, *see section Monitor Presence)
LastDate……….: The Last date the Tenant came in the region (or one of his sub-tenants) (only if Monitor presence is enabled *see section Monitor Presence
Excp…………….: Exceptions : will display the codes of the rental unit exceptions
P=Prim exceeded,
E=Expired,
R=presence Requirement,
J=eJected (this mean the tenant as been ejected)
d2Ejt…………….: Number of Days to Eject . Remaining days before ejection
Transactions

Display the transactions historic. You can then use Excell or any other spreadsheet to cumulate your historic.
The system keep the last 300 transactions if you selected to keep them (see configs section).
If you want to keep more, you should periodically output this report to your spreadsheet or install the Database API (see section “The Statistics on MySql “)
Monitoring

Display the monitoring Data : Time spent for each avatar that visited the region,
Note that we keep only 30 days, so if you want to keep all records you should output this report regularly for your records.
If you want something more complete about the visitors monitoring, We have the “Region Monitor” at the Valland Shop
that keep more detailed data about your visitors and can also output the data to a Database with an API.
Exceptions
Display the Detailed information (same as “Rentals”) but only for the Rental units having Exceptions
When you select this report, you will also be asked if you want to notify the tenants.
If you want this report to be executed automatically each day, see “Notification section”.
if you selected to notify tenants and Auto Eject is enabled and he is passed the days to eject, the tenant will be ejected.
Rental Server Notification
You can automatically output the “Exceptions Rapport”. This report can also be processed manually from the “Reports” Menu at any time,
in that case, you will be asked to output IM or Notecard and if you want to notify Tenants.
Enable Notification : Enable the processing of the automatic Notification (Exception report), yes or no. If set to no, you can still process the report manually.
Monitor time : whether or not you want to monitor presence of the tenants. See Section “Monitoring presence”
Notify tenant : whether or not to notify the tenants when this report is processed
SetTime : select at which hour (UTC time) you want this report to be processed.
The current UTC time is displayed at the top of this menu so you can figure out the hour you want.
SetAdmin : Select who’s gonna receive the IM or Notecard. Default value is “owner”, which mean, the owner of the Rental server will receive the report.
-> IM : output this report to IM for the specified Admin.
-> Notecard : output this report to Notecard, the specified Admin will receive the Notecard and the report will be save in the Server as “{Reportname}{YYYY-MM-DD hh:mm:ss}”,
WeekBack : How many weeks to go back for “Required presence”, maximum 4 (see section “Monitoring presence”)
Must be Present : How many minutes are required to be present in the given time (week back) . Set to 0 for no requirement. (see section “Monitoring presence”)
AutoEject : Number of days before auto-ejecting the tenant. Set to 0 if you don’t want automatic ejection, you will do them manually.
Monitoring presence
If you enable the “Monitor time” in the notification settings.
the time presence for Each avatar coming in the regions will be stored in the server.
The server keep the last 30 days for each avatar and the number of seconds spend on the region per day.
This data is used by the reports “Rentals” and “Exceptions”.
When enabled, 2 columns are added to the report : “Minutes” and “Last date”,
The minutes displayed are the combined minutes spent in the region by the tenant and each sub-tenant of his parcel.
The Last date is the latest date he or his sub-tenants were present in the region.
If you specified a Presence Requirement and the requirement is not met, this will cause an Exception.
if you did not specified any requirement (Must be Present set to 0), the Minutes and Last date will still be presented but no exception will occur.
Any data past the 30 days limit is eliminated.
The exceptions
There is 3 type of Exceptions :
->P=Prim exceeded,
->E=Expired,
->R=presence Requirement,
When you output the report : if you specified to notify the tenants, they will receive the notification message accordingly.
The auto ejection
The Ejection will be done only if
-> You specified to Notify the tenant.
-> there is an exception for either “Rental Expired”, or “Required presence”. “Prim exceeded” wont give an eject.
-> AutoEject is not set to 0
-> the numbers of day the exception as been on exceed the number of “AutoEject days”
When a tenant is ejected, all the settings on the rental box is set back to “Available” and rental is immediately available.
you will still have to return the prims manually if they are still there. (for now)
The Rental Kiosk
Display all the rental in the region, displaying the card info (*3) of the rental and the snapshot.
the buttons:
Previous: display previous rental (will circle to the last one)
Next: display the next rental (will circle to the first one)
Button Menu: will display the menu:
TOS: will give the user the TOS (see Server settings)
INFO: will give the Info of the Rental unit 6 Settings (only for the owner): Delete the rental : will delete the info of this rental from the server (4)
Access : Who can access the Kiosk : NONE (only you) , PUBLIC (everyone) or GROUP (people who has the same group as the Kiosk)
Teleport To: will teleport the user to the rental box.

The Map Kiosk
Display all the rental in the region on the map.
You will need to drop in a Texture of your region.
Button Menu: Will display the menu:
TOS: will give the user the TOS (see Server settings)
INFO: will give the Info of region
Settings : (only for the owner) set the coordinate zoom in if wanted.
->Full : Display Texture fully + All region
->Clipped : Display Texture fully + region clipped (in case you already provided a zoomed texture of the map)
->ClippedMap : Display clipped Texture + region clipped (in case you provided a full region texture)

EnterClip :
This is useful in case you have a Var Region, far greater than the section you allowed for rentals,
for example, a region of 2048×2048, but you put all your rental in a 562×562 section of it.
Then these settings will allow you to only display the 562×562 section.
Enter coordinate to clip the region as follow:
x,y,wx,hy
x = starting x position
y = starting y position
wx = Width in the x axis
hy = height in the y axis
Ex: 384, 384,562,562
Access : Who can access the Map Kiosk : NONE (only you) , PUBLIC (everyone) or GROUP (people who has the same group as the Map Kiosk)
Refresh map : Will refresh the actual map. Normally the Map is refreshed at every hour, as well as all the display meters on Rentals.
Factory Reset : Will Reset the settings to factory value.

The Transactions Statistics
The transactional statistics are taken at the moment of the Rent and kept for statistical analysis.
- RegionName : Name of the region where the rent occurred
- RentName : Name of the Rental Box
- InvoiceRentId : Unique Id set when a Rent is done (this is the invoice number)
- RentType : The Type of Rent : RentGroup or RentOwner
- PriceType : Pricing Type
- Price : Price
- MaxPrim : Maximum prim set at the parcel
- Sqm : number of Sqm for the parcel
- PrimTotal : Number of Prim total
- PrimFree : Number of prim free
- PricePerWeekSystem : Price per week in System money
- RentalTimeStamp : Date this action is triggered
- RentalDateStart : Starting date of Rental
- RentalDateExpirency : Expire Date
- TenantName : Avatar Name
- TenantId : Avatar Id
- RentalAction : Rent, Add Time or Cancel
- NbDays : Number of Days Rented, or Added or Canceled Will be negative if cancellation
- AmountSystem : Total of the transaction. in System money , Will be negative if cancellation.
- PricePerWeekReal : Price per week in Real money
- AmountReal : Total of the transaction. in Real Money, Will be negative if cancellation.
- PaymentMethod : System or Paypal
- ItemNumber : a shorter code identifying the Rental
- Invoice : Invoice number if paid through paypal
If you choose to keep them, see “Rental Server Menu (Server Settings)”,
this data is either written to the database if you installed the MySql Api (see “The Statistics on MySql (API)”)
or kept in the LinkSet
Only the last 300 transactions are kept in the LinkSet so if you want to cumulate them for your statistics,
you should come regularly to reports its content. or install the MySql Api.
The Statistics on MySql (API)

If you want your statistics available on your MySql server, you will need the WebApiCoreRental ,
you can get it here: https://github.com/valr300/WebApiCoreRental
and follow the instructions from there.
The stats on MySql populate many tables and views that you can query from your Workbench or any other data tools:
The tables:
->Rentals : Contain all rentals you have defined
->RentalStats : the detailed statistic of each rents that were made.
The views :
->Rentals_Details : Display all your rental parcel .
->Stats_Rented : Display your currently rented parcels and remaining days
->Stats_Details : Display each rents that were made.
->Stats_RentedDetails : currently rented parcels (less info)
->Stats_Last : Last transaction date per rentals
Testing the API
To test the API, do all steps as described here https://github.com/valr300/WebApiCoreRental
Make sure you’ve setup your ServerURL (see settings section).
Then click in the texture written “Click to test Server URL api” inside the Server.
This will for each press, send data for the first rental and you will see the output return
from your API services so you can see whats going on if need be.

Multiple Admins
You can now have more than one avatar helping you in the management.
To add avatar in your management teams, simply add their uuid in the “!Admins” Notecard in the server.
This will give them the same right as you to manage the rentals, server and kiosks.
ex:
uuid1
uuid2
Security
The Complete Rental system 3.00+ offer some additional security for your transactions.
There is already some security protocol implemented, but in order to make it even more secure, some additional features have been added,
You can drop a Notecard “!ServerId” containing your server Key in each of your components: rentals, MapKiosk & Kiosk, this will force them to communicate only with that server. If you don’t, because it doesn’t really matter if your rentals are set for free anyway, the rentals will still continue to work with the server in place.
Taking this further step will ensure your Rentals are communicating with your actual server.
This has however the inconvenient effect that if further along the route you decide to replace your server with a fresh one, then you will need to re-enter this new key in your components, because you’ll soon find out that even the menu do no longer respond. In that case your only way out is to remove the “!ServerId” Notecard or even better change it for the new server key.
So i would recommend doing this step when your “Rental setup” is mature.
Paypal Transactions
You can allow payment with the Money System and or Paypal, in the server Settings with the “Accept Money system payment” and “Accept Real Money payment (paypal)”.
Default is “Accept Money system payment” only. You will need to enter the Exchange Rate, which is actually set as 230 (calculated based on gloebit, as of 2024-06-13)

You will want to change this whenever the prices vary.
By default your pricing is calculated base on the money system , but you can change it for real money, It doesn’t change a lot, but the way you interpret your rental cost.
In the Server Settings :
Price Based on : Indicate which money is used to calculate the price, Either ‘Money system’ or ‘Real Money’ (paypal).
Accept Money system payment : on or off , Whether or not the tenants can pay with Money System.
Accept Real Money payment (paypal): on or off , Whether or not the tenant can pay with paypal.
Exchange Rate : Indicate how many ‘Money system $G’ you can get for 1$ Real money
Paypal Requirement :
In order to provide validated paypal transactions or IPN Listener (Internet payment notification) as it is called.
You must install the ipn Listener on your server. you can find it on this git : https://github.com/valr300/OSPaypalIpn (or in the package “OSPaypalIpn” found at the valland Shop)
See the Readme there that will provide instructions on how to set that up.
You can also enable Paypal transactions without installing the IPN Listener, you will just need to make sure your “notify_url” and “InworldIpn_url” are left empty in the !PaypalConfig notecard in the server.
The caveat to this is that the payment wont be validated, that mean the tenant is offered the paypal payment web page , but there is no validation past that point,
in fact at that point the transaction is considered completed, and you will have to verify manually in your paypal account if he really paid or not, and cancel the rent if he did’nt.
*Upgrading / RentalSystemUpdater
These are the instruction for those who already had The Rental System installed and configured. If this is not your case, you can skip this section.
if you are upgrading from 4.04 to 5.00 you can simply use the “Server” option from the RentalSystemUpdater., as no other changes as been made.
then you will have to “Reset Data” from the settings, and everything will be fine.
If you already had installed the Rental System from previous release 2.01 onward , you can use the RentalSystemUpdater, to upgrade your currently rezzed rentals, or if you dont have many rentals, you can also, just drop the new components and reconfigure them.
If you are installing for the first time, you can skip this section.
Simply drop the “RentalSystemUpdater” on the floor and touch to get the menu.
It update all components in the same region as the updater,
a message is displayed for each component updated, you may count them to make sure everything got updated.

select which component to update in this order :
“RentalBox”
“Kiosk”
“MapKiosk”
“Server”
** RentalBox and Server are updated from version 1.11 downward, but Kiosk and Mapkiosk only from 1.12 and upward
so if you are updating from 1.11 or less to 1.12, you will still have to remake your settings on the Mapkiosk and or Kiosk.
If you are upgrading from Anything prior to 2.01, you will need to run the “RentalSystemUpdaterPrior2.01” and upgrade all components
then you will need to run the “RentalSystemUpdater” included in this release.
To Upgrade to 2.03 , you will need to upgrade the server first, do a “Reset Data” on the server, then the Rental box, and the others.
If you are upgrading from version prior to 3.00, you will need to add the “!PaypalConfig” file in your server. You’ll find a copy of it in the Box.
if you are upgrading from version 3,00 to 4.00, simply use the provided “Updater” for the Rental Box and MapKiosk components,
for the Rental Kiosk, you should use the Rental Kiosk provided in this release as it fix the teleport button.
same for the server itself, as a new textures as been applied (for testing purpose). You will need to re-enter your setup on the server if you do so.**
** If you prefer and know how, you could simply apply the texture “TextureClickHere” included in the boxed content
to the linked prim “TextureMaker” inside the server on face 3. (you can look on the new one to know where to apply)
do a ResetData in the server settings menu when all your component are updated..
(*1) a Note about the Maximum Prim
When you set the Maximum Prim to 0, that means all the prim left on the parcel are available.
The maximum prim available is calculated with the maximum prim the parcel can give less the ones you installed on it yourself, we call those “system prim” .
The Maximum prim is checked and displayed in the Rentals and Exception Reports. (See Section “Reports”)
Although the reports will tell the prim are exceeded on a parcel, you will have to enforce this rule manually with the tenant.
Setting the Maximum prim will also affect the price if the price is set to $PerPrim.
The prim used to calculate $PerPrim is the prim left available on the parcel before the tenant come in. ie The real prim amount less your system prim used on the parcel for your theme.
(*2) the black box
Inside the Rental Box, there is a Prim, “BallPos”, that will contain in its description the cumulative previous, cancellation (days and money involved) plus in case the tenant didn’t give the right amount, the amount he gave. You got to see this info as soon as possible because it can only retain up to 127 character maximum.
Note that if you enabled the statistic, you would see the cancellation information there but not the incorrectly given amount as it does not trigger a Rent.
(*3) A note about the drawing of the cards for the parcel:
The font used for drawing the cards are:
Cambria (windows Font)
Ubuntu (Italic) (https://fonts2u.com/ubuntu-bold-italic.font)
If you do not have these fonts installed on your system, the default fonts will be used.
(*4) A note about the cards.
The cards are the texture with the information of the parcel written on them.
This system tries to be the lesser Asset extensive it can be.
We assume the name; the description and the size of the parcel won’t change from the time you set them up.
So, if for example you were to make a change to the parcel name, its description or the size of the parcel, the cards will need to be redrawn as we don’t process those changes automatically.
Prices change won’t need a Manual redraw they will be re-processed automatically.
Any other information changed on the parcel, Rental name, price, max Prim etc., will trigger the redraw automatically.
To redraw a Card,
you can select “Delete the Rental” from the menu settings of the Rental Kiosk to force the server to redraw this card.
or if you happen to make changes to most parcels, “Reset Data” on the server to redraw all Cards.
Testing the Cards
You can check if your system is doing the “Cards correctly” by clicking the “Card Texture” inside the server.
Each time you click you should see a test written on the card.
If the cards does not show, make sure you’ve setup these correctly in your config-include/osslEnable.ini :
osSetDynamicTextureDataBlendFace ${OSSL|osslParcelOG}ESTATE_MANAGER,ESTATE_OWNER
osSetDynamicTextureDataFace ${OSSL|osslParcelOG}ESTATE_MANAGER,ESTATE_OWNER
(*6) Displayed Info of Rented parcels (Security)
Price paid and who’s paying are not displayed on “Info” menu when rented,unless you are the tenant, or the owner.
on the Kiosk, the Card will display the price of the rental unit or
the Server pricing if the currently defined price for the rental is set to 0 and the unit is rented.