17
Copyright © 2016, 2017, Oracle and/or its affiliates. All rights reserved. TPM – Yardi Voyager 7S Technical Manual Version 1.0 May 2, 2017

TPM – Yardi Voyager 7S Technical Manual · Page 3 Overview Description This document contains a comprehensive explanation of the Yardi Voyager 7s/Oracle Textura Payment Management

  • Upload
    others

  • View
    5

  • Download
    0

Embed Size (px)

Citation preview

Page 1: TPM – Yardi Voyager 7S Technical Manual · Page 3 Overview Description This document contains a comprehensive explanation of the Yardi Voyager 7s/Oracle Textura Payment Management

Copyright © 2016, 2017, Oracle and/or its affiliates. All rights reserved.

TPM – Yardi Voyager 7S Technical Manual

Version 1.0 May 2, 2017

Page 2: TPM – Yardi Voyager 7S Technical Manual · Page 3 Overview Description This document contains a comprehensive explanation of the Yardi Voyager 7s/Oracle Textura Payment Management

Page 2

Table of Contents TPM – Yardi Voyager 7S Technical Manual ................................................................................... 1

Overview ........................................................................................................................................ 3 Description .................................................................................................................................. 3 Yardi Voyager 7S Subcontracts and Subcontract Change Orders exported to TPM ................. 3 Yardi Voyager 7S Subcontract Compliance exported to TPM ................................................... 3

Yardi Voyager 7S AP Invoices imported from TPM ................................................................. 3 Yardi Voyager 7S AP Invoice Reversals imported from TPM .................................................. 3 Yardi Voyager 7S AP Payments imported from TPM ............................................................... 3

Design Methodology...................................................................................................................... 4 Automated Solution for Import Interfaces .................................................................................. 4

Key Features .................................................................................................................................. 4 Main Features covered in the scope of this integration .............................................................. 4

Yardi Objects ................................................................................................................................ 5

Field Mappings .............................................................................................................................. 6 Subcontracts ................................................................................................................................ 6 Change Orders ............................................................................................................................ 7

Compliance ................................................................................................................................. 7 Invoices ....................................................................................................................................... 8 Invoice Rejections (reversals) ..................................................................................................... 8

Payments ..................................................................................................................................... 9

Job Streams ................................................................................................................................... 9 Subcontracts ................................................................................................................................ 9 Change Orders .......................................................................................................................... 10

Compliance ............................................................................................................................... 10 Invoice....................................................................................................................................... 11 Invoice Rejections (Reversal) ................................................................................................... 11

Payments ................................................................................................................................... 12

TexturaLink................................................................................................................................. 13 System Requirements: .............................................................................................................. 13

Installation: ............................................................................................................................... 13 Configuring TexturaLink .......................................................................................................... 14 TexturaLink Configuration Parameters .................................................................................... 14 TexturaLink Home Screen ........................................................................................................ 16

Page 3: TPM – Yardi Voyager 7S Technical Manual · Page 3 Overview Description This document contains a comprehensive explanation of the Yardi Voyager 7s/Oracle Textura Payment Management

Page 3

Overview

Description This document contains a comprehensive explanation of the Yardi Voyager 7s/Oracle Textura Payment Management Interface. There are five components of this interface:

1. Yardi Voyager 7S Subcontracts and Subcontract Change Orders exported to TPM

2. Yardi Voyager 7S Subcontract Compliance exported to TPM

3. Yardi Voyager 7S Accounts Payable Invoices imported from TPM

4. Yardi Voyager 7S Accounts Payable Invoice Reversals imported from TPM

5. Yardi Voyager 7S Accounts Payable Payments imported from TPM.

Yardi Voyager 7S Subcontracts and Subcontract Change Orders exported to TPM

Job cost subcontracts and subsequent change orders against those subcontracts on properties setup in Yardi to use the Textura integration will be extracted from Yardi and imported into TPM. Requests initiated from TexturaLink will use Yardi’s Get Job Cost web service method and import records using the insert contracts web service for TPM.

Yardi Voyager 7S Subcontract Compliance exported to TPM

Compliance requirements tracked on a subcontract for a Textura managed property in Yardi will be imported into TPM. These records will initiate holds or releases in TPM based on the status as it is tracked in Yardi. Requests initiated from TexturaLink will use Yardi’s Get Job Cost web service method and import records using the import compliance web service for TPM.

Yardi Voyager 7S AP Invoices imported from TPM

Subcontract Invoices are created in the Oracle Textura Payment Management system and exported to the Yardi Voyager 7S Accounts Payable system. The import of Invoice voucher data is initiated by TexturaLink either on a scheduled basis or on-demand using web services. Standard progress invoices are imported using Yardi’s Import Payables method and will create an unposted batch in Yardi. For retention release invoices, Yardi’s Get Retention amounts service is used to identify the invoice IDs of AP invoices posted against a contract that is holding retention. The Import Retention Payables service will be used to create retention release invoices in Yardi.

Yardi Voyager 7S AP Invoice Reversals imported from TPM

Subcontract Invoices are created in the Oracle Textura Payment Management system and exported to the Yardi Voyager 7S Accounts Payable system once they are approved in TPM. If a subcontractor invoice that was previously approved and exported from TPM is later rejected by the GC, TPM will send an invoice rejection record to reverse the existing payable. Once the subcontractor resubmits the invoice, we will create a new invoice with a unique revision number appended to the end of the original invoice number. This process uses the GetPayables service to identify the Yardi invoice ID for the invoices that should be rejected, then the ReversePayables method to reverse the entry.

Yardi Voyager 7S AP Payments imported from TPM

AP Payments are created in the Oracle Textura Payment Management system and exported to Yardi Voyager 7S Payment Processing where the payments are applied to matching invoice vouchers in Accounts Payable. The import of Payment data is initiated by TexturaLink either on a scheduled basis or on-demand using web services. The import checks web service is used to import payments against AP invoices in Yardi.

Page 4: TPM – Yardi Voyager 7S Technical Manual · Page 3 Overview Description This document contains a comprehensive explanation of the Yardi Voyager 7s/Oracle Textura Payment Management

Page 4

Design Methodology

Automated Solution for Import Interfaces Due to the need for an automated solution, the following design methodology was adopted:

1. All data to be imported into Yardi will use Yardi’s SOAP based vendor invoicing web services

initiated by requests from TexturaLink

2. All data extracted from Yardi will use Yardi’s SOAP based job cost web services initiated by

requests from TexturaLink

3. All integration points can be scheduled or invoked by a user using TexturaLink.

Key Features

Main Features covered in the scope of this integration Following is a list of some of the main features covered in the scope of this document:

1. Subcontract, Change Order, and Compliance Extracts

Properties must be set to use the Textura Interface in Yardi setup

Only orders for Jobs that are setup in TPM will be extracted

Page 5: TPM – Yardi Voyager 7S Technical Manual · Page 3 Overview Description This document contains a comprehensive explanation of the Yardi Voyager 7s/Oracle Textura Payment Management

Page 5

Subcontract items use the contractid concatenated with the database id of that record in Yardi as the subcontract item number key for TPM. This field is represented as UniqueMark on the XMLresponse from the Yardi service.

2. Subcontract Invoice Import

The system will allow import of Invoices to create AP invoice batches in Yardi. The number of batches created is configurable in TexturaLink. The options are to create a separate batch for each incoming invoice, or to create a separate batch for each job number on the incoming invoice feed. Batches are broken out this way because the Yardi service will fail the entire import if any record fails validation, providing the option to break out the batches more granularly will result in more successful postings with each import job.

Separate invoice lines are created in Yardi for each invoice line in the import feed that is holding retention.

If Retention on an Invoice has to be released, a Retention Invoice will be sent from Textura and imported into Yardi Voyager 7S. The import will create a new payable record for each invoice it is releasing retention from and append an R to the front of the original invoice number.

For Retention Release invoices, the user defined field #10 is used to store the Textura generated invoice number. This value is used when applying payments to the retention release invoices.

For Invoice reversals (rejections), the invoice will be deleted if it is in an unposted batch, or reversed if it is in a posted batch as long as no payment has been applied to that invoice.

3. Subcontract Payment Import

Payments can be made against original Invoice as well as Retention Invoice.

For each funding organization set up in TPM, the ERP Bank code field must be set with the corresponding Bank ID in Yardi.

Yardi Objects

Object Name Object Type Notes

Import_Payable Web Service Used to import AP Invoices into Yardi

GetPayables Web Service

Used to find all retention release invoices in Yardi affiliated with a single TPM draw for payment processing

GetRetentionAmounts Web Service Used to obtain invoice IDs of invoices holding retention for a specific subcontract

GetJobCost Web Services Used to extract job cost data from Yardi (Subcontracts, Change Orders, Compliance)

ReversePayable Web Services Used to reverse a previously exported payable

Page 6: TPM – Yardi Voyager 7S Technical Manual · Page 3 Overview Description This document contains a comprehensive explanation of the Yardi Voyager 7s/Oracle Textura Payment Management

Page 6

Field Mappings

Subcontracts Header

Service Yardi Field TPM Field Notes

GetJobCost StartDate Contract Date If no start date, then use current date

GetJobCost Description Description

GetJobCost ContractId Subcontract Number

GetJobCost RetentionPercent

Default Retention Percentage

GetJobCost JobId - PropertyId Project Number

JobId – PropertyId combined, example: 1000-TEX001

GetJobCost OriginalContractAmount Subcontract Amount

GetJobCost VendorId Vendor Id

Details

Service Yardi Field TPM Field Notes

GetJobCost CostCode Account Code

GetJobCost CategoryId Category Code

GetJobCost Contract Amount Component Amount

GetJobCost DetailRemark Component Description

GetJobCost RetentionPercent

Component Retention Percentage

GetJobCost JobId - PropertyId Project Number

JobId – PropertyId combined, example: 1000-TEX001

GetJobCost UniqueMark Subcontract Item Number

Unique database id from Yardi database concatenated with contractid

GetJobCost Property Id SubJob Number

GetJobCost VendorId Vendor Id

Page 7: TPM – Yardi Voyager 7S Technical Manual · Page 3 Overview Description This document contains a comprehensive explanation of the Yardi Voyager 7s/Oracle Textura Payment Management

Page 7

Change Orders Header

Service Yardi Field TPM Field Notes

GetJobCost Dateof Change Order Date If no date of, then use current date

GetJobCost ContractCOID Change Order Number

GetJobCost Description Change Order Title

GetJobCost ParentContractId Subcontract Number

GetJobCost VendorId Vendor Id

Details

Service Yardi Field TPM Field Notes

GetJobCost CostCode Account Code

GetJobCost CategoryId Category Code

GetJobCost Contract Amount Component Amount

GetJobCost DetailRemark Component Description

GetJobCost RetentionPercent

Component Retention Percentage

GetJobCost JobId - PropertyId Project Number JobId – PropertyId combined, example: 1000-TEX001

GetJobCost UniqueMark Subcontract Item Number

Unique database id from Yardi database concatenated with contractid

GetJobCost Property Id SubJob Number

GetJobCost VendorId Vendor Id

Compliance

Service Yardi Field TPM Field Notes

GetJobCost JobId - PropertyId

Project Number JobId – PropertyId combined, example: 1000-TEX001

GetJobCost contractId Subcontract Number

GetJobCost VendorId Vendor Id

GetJobCost Name Description

GetJobCost Expires Expiration Date

Status If there is an expiration date, set status to received. If not, set status to not received

Page 8: TPM – Yardi Voyager 7S Technical Manual · Page 3 Overview Description This document contains a comprehensive explanation of the Yardi Voyager 7s/Oracle Textura Payment Management

Page 8

Invoices Header

Service TPM Field Yardi Field Notes

Import_Payables Vendor ID VendorID

Import_Payables Invoice Number InvoiceNumber

Import_Payables Invoice Date InvoiceDate Current Date

Import_Payables Draw Period To Date PostMonth

Set to the first of the month of the invoice draw date

Import_Payables Draw Number Notes

Import_Payables Subcontract Number ContractID

Import_Payables Invoice Net Amount TotalAmount

Invoice Net amount unless it is a Retention Release invoice, then Total Retention release amount

Details

Service TPM Field Yardi Field Notes

Import_Payables Item Gross Amount Amount

If retention release, item retention release amount is used

Import_Payables AccountID Not Mapped

Import_Payables SubJob Number PropertyId

Import_Payables Subcontract Item Number ContractID

Import_Payables Project Number JobID

Import_Payables Category Code CategoryId

Import_Payables

Item Retention Held

RetentionAmount

Will create a separate invoice line for each line's retention held amount

Import_Payables Account Code CostCode

Import_Payables Draw Number Notes

Invoice Rejections (reversals)

Service TPM Field Yardi Field Notes

ReversePayable Invoice Number InvoiceNumber

ReversePayable Current Date PostMonth Set to the first of the month of the invoice draw date

ReversePayable InvoiceId As returned from the GetPayables response

Page 9: TPM – Yardi Voyager 7S Technical Manual · Page 3 Overview Description This document contains a comprehensive explanation of the Yardi Voyager 7s/Oracle Textura Payment Management

Page 9

Payments Header

Service TPM Field Yardi Field Notes

Import_Check ERP Bank Code BankID

Import_Check Check Number CheckNumber

Import_Check Disbursement Date PaymentDate

Import_Check Payee Name Notes

Import_Check Vendor Id PayeeID

Import_Check Check Amount TotalAmount

PostMonth Set to the first of the month of the payment date

Details

Service TPM Field Yardi Field Notes

Import_Check Check Amount Amount

Import_Check Invoice Number InvoiceNumber

Import_Check Project Number PropertyId PropertyId portion of Project Number in TPM

Job Streams

Subcontracts

Page 10: TPM – Yardi Voyager 7S Technical Manual · Page 3 Overview Description This document contains a comprehensive explanation of the Yardi Voyager 7s/Oracle Textura Payment Management

Page 10

Change Orders

Compliance

Page 11: TPM – Yardi Voyager 7S Technical Manual · Page 3 Overview Description This document contains a comprehensive explanation of the Yardi Voyager 7s/Oracle Textura Payment Management

Page 11

Invoice

Yardi Invoice Import Process

Text

ura

Lin

kYa

rdi W

eb

Se

rvic

es

Yard

i

Phase

GetRetentionAmounts Method

@ContractId

Invoice Json

Retention Release?

Import Payables Method

NO

YES

Invoice IDs

Import Payables Method

New “R” invoice for each Invoice

holding retention

Unposted AP Invoice Batch

Unposted AP Invoice Batch

Import Textura Invoice # to UDF 10

Invoice Rejections (Reversal)

Yardi Invoice Rejection Process

Text

ura

Lin

kYa

rdi W

eb S

ervi

ces

Yard

i

Phase

GetPayables@VendorId, @PropertyId

Invoice Rejections

Json Invoice IDs by JSON

Invoice Number

Reverse Payables Method

@InvoiceId

Reverse Posted Invoice / Deletes unposted Invoice

Retention Release?

NO

Invoice IDs where JSON

InvoiceNumber equals UDF #10

value

YES

Reverse Payables Method

@InvoiceId

Reverse Posted Invoice / Deletes unposted Invoice

Page 12: TPM – Yardi Voyager 7S Technical Manual · Page 3 Overview Description This document contains a comprehensive explanation of the Yardi Voyager 7s/Oracle Textura Payment Management

Page 12

Payments

Yardi Payment ProcessTe

xtu

raLi

nk

Yard

i We

b

Serv

ice

sYa

rdi

Phase

GetPayables Method@ContractId

Payment Json

Retention Release?

Import Checks Method

NO

YES

Invoice Numbers

Import Check Web Service

Applies payment to retention release invoices

Find invoices where UDF 10 equals Textura

Invoice Number

Page 13: TPM – Yardi Voyager 7S Technical Manual · Page 3 Overview Description This document contains a comprehensive explanation of the Yardi Voyager 7s/Oracle Textura Payment Management

Page 13

TexturaLink The TexturaLink application is installed on a dedicated server or virtual machine in the client’s environment. TexturaLink connects to the Yardi Voyager 7S application using web service requests and the Textura user created during the setup of the integration package.

System Requirements: Java 8 or above

Windows 7 (64 bit), Windows Server 2008 (64 bit) and later

At least 5gb of RAM

10gb of free hard drive space

Installation: 1. Navigate to http://services.texturacorp.com/ebis/texturalink/installer/ to download the installer

2. Enter a valid TPM username and password, and click Next.

3. Choose the Yardi adapter in the left dropdown list.

Note: The current version will be auto-selected.

4. Click Next.

5. Choose the installation location, and click Next.

6. Change the Log Level to Debug.

Page 14: TPM – Yardi Voyager 7S Technical Manual · Page 3 Overview Description This document contains a comprehensive explanation of the Yardi Voyager 7s/Oracle Textura Payment Management

Page 14

7. Check the box to Setup Windows Service, and click Next.

Note: This will proceed with the installation.

8. Click Finish to close the installer.

9. Open the Windows Task Manager, and click on the Services tab. Right click on textura-yardi-lib

and select Start. This will start the service.

10. Open a browser and enter http://localhost:9999 to open TexturaLink. It may take a few minutes

to start. Localhost can be replaced with the actual server name for users to connect to

TexturaLink from outside the TexturaLink server.

Configuring TexturaLink Click on the Textura Org User tab to enter the Textura TPM username and password

TexturaLink will use to connect to TPM. Click on Create New to enter the

credentials then click on Save.

Click on the Configurations tab

The following configuration properties will need to be added:

TexturaLink Configuration Parameters Object Name Description Point of Use

erp.group.invoices.by Choose all, project, or single to determine how many batches should be created with each import.

All—Creates one batch for entire import file

Project—Creates a separate batch for each project on an import file

Single—Creates a separate batch for each record on an import file

Invoice

Page 15: TPM – Yardi Voyager 7S Technical Manual · Page 3 Overview Description This document contains a comprehensive explanation of the Yardi Voyager 7s/Oracle Textura Payment Management

Page 15

Object Name Description Point of Use

erp.group.payments.by Choose All or Single to determine how many batches should be created with each import.

All—Creates one batch for the entire import file

Single—Creates a separate batch for each record on an import file

Payments

Erp.database.server Stores the name of the database server hosting the Yardi database

All

Erp.Service.url The URL of the Yardi application All Erp.Username Username of the Yardi user setup for

the integration All

Erp.entity “Textura” All Erp.Password Password for ERP. All Erp.interface.license License key for Textura Integration.

Note: This will change once a year. All

Textura.Service.url Textura environment URL for TexturaLink.

All

Link.local.filepath Folder location for storing audit log files from TexturaLink

All

Schedule.cron.export.getprojects Enter cron expression to enable the schedule for the Get Projects service

Get Projects

Schedule.cron.import.new.contracts Enter cron expression to enable the schedule for importing subcontracts

Import Subcontracts

Schedule.cron.import.changeorders Enter cron expression to enable the schedule for importing change orders

Import subcontract change orders

Schedule.cron.import.compliances Enter cron expression to enable the schedule for importing compliance records

Import Compliance

Schedule.cron.export.invoices Enter cron expression to enable the schedule for receiving invoices

Invoices

Schedule.cron.export.rejections Enter cron expression to enable the schedule for receiving invoice cancelations

Invoice Rejections

Schedule.cron.export.payments Enter cron expression to enable the schedule for receiving payments

Payments

Click on the Login User tab to create usernames and passwords for TexturaLink

users. Any user that will need to run jobs manually should be set as a

ROLE_ADMIN.

Page 16: TPM – Yardi Voyager 7S Technical Manual · Page 3 Overview Description This document contains a comprehensive explanation of the Yardi Voyager 7s/Oracle Textura Payment Management

Page 16

TexturaLink Home Screen

Page 17: TPM – Yardi Voyager 7S Technical Manual · Page 3 Overview Description This document contains a comprehensive explanation of the Yardi Voyager 7s/Oracle Textura Payment Management

Legal Notices

Page 17

TPM – Yardi Voyager 7S Technical Manual

Copyright © 2016, 2017, Oracle and/or its affiliates. All rights reserved.

Oracle and Java are registered trademarks of Oracle and/or its affiliates. Other names may be trademarks of their respective owners.

Intel and Intel Xeon are trademarks or registered trademarks of Intel Corporation. All SPARC trademarks are used under license and are trademarks or registered trademarks of SPARC International, Inc. AMD, Opteron, the AMD logo, and the AMD Opteron logo are trademarks or registered trademarks of Advanced Micro Devices. UNIX is a registered trademark of The Open Group.

This software and related documentation are provided under a license agreement containing restrictions on use and disclosure and are protected by intellectual property laws. Except as expressly permitted in your license agreement or allowed by law, you may not use, copy, reproduce, translate, broadcast, modify, license, transmit, distribute, exhibit, perform, publish or display any part, in any form, or by any means. Reverse engineering, disassembly, or decompilation of this software, unless required by law for interoperability, is prohibited.

The information contained herein is subject to change without notice and is not warranted to be error-free. If you find any errors, please report them to us in writing.

If this is software or related documentation that is delivered to the U.S. Government or anyone licensing it on behalf of the U.S. Government, the following notice is applicable:

U.S. GOVERNMENT END USERS: Oracle programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, delivered to U.S. Government end users are “commercial computer software" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations. As such, use, duplication, disclosure, modification, and adaptation of the programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, shall be subject to license terms and license restrictions applicable to the programs. No other rights are granted to the U.S. Government.

This software or hardware is developed for general use in a variety of information management applications. It is not developed or intended for use in any inherently dangerous applications, including applications that may create a risk of personal injury. If you use this software or hardware in dangerous applications, then you shall be responsible to take all appropriate failsafe, backup, redundancy, and other measures to ensure its safe use. Oracle Corporation and its affiliates disclaim any liability for any damages caused by use of this software or hardware in dangerous applications.

This software or hardware and documentation may provide access to or information on content, products and services from third-parties. Oracle Corporation and its affiliates are not responsible for and expressly disclaim all warranties of any kind with respect to third-party content, products, and services. Oracle Corporation and its affiliates will not be responsible for any loss, costs, or damages incurred due to your access to or use of third-party content, products, or services.