Laserfiche Process Automation to Payflow Pro Setup Guide

Payflow Pro for Laserfiche Workflow Configuration Guide

Velosimo Configuration

  1. Go to https://connect.velosimo.io and login with your email address
  2. Using the Velosimo menu, navigate to Data -> Objects
1920
  1. Under the Objects go to the Payment -> Settings datatype
1920
  1. The Settings datatype contains three entries to configure for your environment. For each entry go to the right row menu and go to Edit.
1920

a. Editing the PAYFLOW_PRO_INFO settings:

1093

Setting

Value

partner

Paypal partner name. This is the same partner named as used to login to the Paypal Manager.

vendor

Paypal vendor name. This is the same vendor name as used to login to the Paypal Manager.

user

Paypal user. This is the same user name as used to login to the Paypal Manager.

password

Paypal user password. This is the same password as used to login to the Paypal Manager. Password cannot contain special characters or it will not work (Paypal limitation).

mode

TEST or LIVE

url

Leave set to https://payflowlink.paypal.com

b. Editing the LASERFICHE_WORKFLOW_INFO settings:

802

Setting

Value

onPaymentReceive

The name of the Laserfiche Workflow to call when the payment is completed. The workflow will be sent the following parameters:

referenceId
transactionId
transactionStatus

c. Editing the PAYMENT_EMAIL settings:

827

Setting

Value

subject

The subject of the payment email sent

  1. Next, navigate to Gateway -> Connectors.
1920
  1. Under Connectors go to Connections and Edit the Laserfiche Workflow connection.
1920
  1. Change the Url value to the URL of your Laserfiche Workflow API. Your Laserfiche Workflow API must be accessible to the Velosimo Cloud environment. All requests from Velosimo will come from the following IPs 54.70.20.215, 35.164.131.175, 3.222.241.24. Click Save when finished editing the URL.
1047
  1. Next click the checkmark icon on the top menu to access the Authorizations and go to Authorize on the Laserfiche Workflow authorization.
1920
  1. Enter the username and password of the Laserfiche Workflow user to use for authentication to Laserfiche Workflow and click Save.
850
  1. Next go to Workflows -> Email Channels using the Velosimo menu
1920
  1. Under Email Channels select SMTP Account and then go to Edit
1920
  1. Next click the Edit this SMTP Provider button
1920
  1. Change the Host, Port, and Domain (optional) to your SMTP server information. All requests from Velosimo will come from the following IPs 54.70.20.215, 35.164.131.175, 3.222.241.24. Click Save once finished.
1920
  1. Next set the Username and Password fields to the email user you wish to use for sending emails against your SMTP server. You can optionally configure the Send email as field to better style the emails From field. Once complete click Save.
1920

Styling the Payment email

  1. Navigate to Transforms -> Templates
1920
  1. Edit the Payment Email Body template by going to Edit on the right menu
1920
  1. The Payment Email Body template is an ERB template, which is essentially HTML with some scripting capabilities using Ruby. To update the style of the email simple edit the HTML within the Code section and click Save once complete.
1920
  1. The template will support any HTML and is currently using Semantic UI. See https://semantic-ui.com/ for more information on Semantic.

The template will support variable data sent from Laserfiche Workflow. You have full control over the template data sent from Laserfiche Workflow by using <%=data[“<laserficheWorkflowAPIParameterName>”]%> within the HTML. laserficheWorkflowAPIParameterName will map to the name of the input parameter sent to Velosimo from your Laserfiche Workflow. The Laserfiche Workflow configuration section will cover this in more detail.

660

Payflow Pro Configuration

  1. Go to https://manager.paypal.com and login with your credentials
  2. On the main page go to Hosted Checkout Pages
1909
  1. Next click setup
1909
  1. On the Set Up page configure the options you would like enabled and enter the correct Velosimo URLs into the fields from the table flow.
1905

<payment_app_name>: Application regist name
<security_token>: Application ID

Field

URL

Cancel URL

https://connect.velosimo.io/app/<payment_app_name>/laserfiche/payflowpro/<security_token>/cancel_payment?X-Tenant-Access-Key=A459798590&X-Tenant-Access-Token=G1wycC97U4W1B2qXqSDS

Error URL

https://connect.velosimo.io/app/<payment_app_name>/laserfiche/payflowpro/<security_token>/payment_error?X-Tenant-Access-Key=A459798590&X-Tenant-Access-Token=G1wycC97U4W1B2qXqSDS

Return URL

https://connect.velosimo.io/app/<payment_app_name>/accela/payflowpro/<security_token>/payment_confirmation?X-Tenant-Access-Key=A459798590&X-Tenant-Access-Token=G1wycC97U4W1B2qXqSDS

Silent Post URL

https://connect.velosimo.io/app/<payment_app_name>/laserfiche/payflowpro/<security_token>/process_payment?X-Tenant-Access-Key=A459798590&X-Tenant-Access-Token=G1wycC97U4W1B2qXqSDS

Check the checkbox for ‘Void transaction when my server fails to receive data sent by the silent post’

Silent Post fails

https://connect.velosimo.io/app/<payment_app_name>/laserfiche/payflowpro/<security_token>/process_payment?X-Tenant-Access-Key=A459798590&X-Tenant-Access-Token=G1wycC97U4W1B2qXqSDS

  1. Click Save

Laserfiche Workflow Configuration

Sending a Payment

  1. To send a payment from a Laserfiche Workflow you will use the HTTP Form Post component. In the workflow you wish to send payment from, add the HTTP Form Post component to the workflow and then go to the Web Services configuration of the HTTP Form Post.
1285
  1. Configure the HTTP Form Post with the following information:
    a. Web Service - select Manage Web Services from the dropdown list and add a new entry for Velosimo.
1283

Field

Description

Name

Velosimo

Type

Custom

URL

https://connect.velosimo.io

        b. Request - Enter the request information
579

Remember, the <security_token> is the Application ID.

Field

Description

URI

/app/<payment_app_name>/laserfiche/payflowpro/<security_token>initialize_payment_email

Method

POST

        c. Form Data - map any data into the variables sent to Velosimo
1286

Field

Description

referenceId

Unique id for this transaction. Can be any value you want to generate. The referenceId sent here will come back in the Receive Payment workflow. You can use the referenceId to tie the receive payment to the send payment.

amount

Amount to charge

email

Email address of the receiving user

X-Tenant-Access-Key

A459798590

X-Tenant-Access-Token

G1wycC97U4W1B2qXqSDS

The next set of variables are used in the Payment Email Body template in Velosimo and are customizable. You can send any variables you would like to send here and use in the email body template. The fields below are used in the default template, but can easily be customized by you.

fullName

Name of the receiver. Variable is used in the Payment Email Body template in Velosimo.

application

Type of application. Variable is used in the Payment Email Body template in Velosimo.

dueDate

Due date of the payment. Variable is used in the Payment Email Body template in Velosimo

  1. Run the workflow to test and a payment email will be sent to the email address

Receiving a Payment

  1. As soon as a successful payment is made in Payflow Pro a call will be made to a receiving Laserfiche Workflow per the Velosimo configuration. The workflow will be sent with three parameters.
656

Field

Description

referenceId

Id sent during the send payment process

transactionId

Paypal Payflow Pro transaction id. You can use this value to lookup the transaction in Payflow Pro Manager.

transactionStatus

Status of the transaction as sent by Payflow Pro

  1. Should you wish to use more information from the transaction in your workflow than sent you can make an HTTP Form Post call from within your workflow to a Velosimo API to get more detail about the transaction. To get more detail configure an HTTP Form Post as follows:

        a. Request
579

Field

Description

URI

/app/<payment_app_name>/payment/payment/<security_token>/payment_detail

Method

POST

        b. Form Data
858

referenceId

Id for this transaction

asJSON

true

X-Tenant-Access-Key

A459798590

X-Tenant-Access-Token

G1wycC97U4W1B2qXqSDS

  1. The Response from the HTTP Post will be a JSON object that looks as follows:
{
   "referenceId":"f23cf9ed1a684",
   "transactionStatus":"Approved",
   "transactionData":{
      "referenceId":"cd187f4a-e84b-45c4-871d-9c92f6a6bea0",
      "amount":"100.00",
      "user":"velosimo",
      "email":"[email protected]",
      "fullName":"Kris Trujillo",
      "application":"Garage Sale Permit",
      "dueDate":"March 1, 2022",
      "app_slug":"laserfiche",
      "path":"payflowpro/process_payment",
      "_source":"laserfiche",
      "_provider":"payflowpro",
      "_operation":"process_payment",
      "paymentLink":"https://connect.velosimo.io/app/scpaysupp/laserfiche/payflowpro/initialize_payment?amount=100.00\u0026referenceId=f23cf9ed1a684",
      "SECURETOKENID":"cd187f4a-e84b-45c4-871d-9c92f6a6bea0",
      "SECURETOKEN":"4tPE9SgyWVkqJyzYtsEhjrwAQ",
      "BILLTOCITY":"Herriman",
      "AMT":"100.00",
      "BILLTOEMAIL":"[email protected]",
      "BILLTOSTREET":"12537 S Brundisi Way",
      "VISACARDLEVEL":"12",
      "SHIPTOCITY":"Herriman",
      "TENDER":"CC",
      "NAMETOSHIP":"Kris Trujillo",
      "ZIP":"84096",
      "BILLTOLASTNAME":"Trujillo",
      "EMAILTOSHIP":"[email protected]",
      "BILLTOFIRSTNAME":"Kris",
      "RESPMSG":"Approved",
      "TYPE":"S",
      "STATETOSHIP":"UT",
      "TAX":"0.00",
      "NAME":"Kris Trujillo",
      "BILLTOZIP":"84096",
      "PNREF":"A10AB1D0E550",
      "ZIPTOSHIP":"84096",
      "TRXTYPE":"S",
      "SHIPTOCOUNTRY":"US",
      "SHIPTOSTREET":"12537 S Brundisi Way",
      "CITY":"Herriman",
      "HOSTCODE":"A",
      "LASTNAME":"Trujillo",
      "STATE":"UT",
      "CITYTOSHIP":"Herriman",
      "COUNTRYTOSHIP":"US",
      "AVSDATA":"YNY",
      "ACCT":"1111",
      "AUTHCODE":"850PNI",
      "PHONE":"8018793789",
      "FIRSTNAME":"Kris",
      "RESULT":"0",
      "POSTFPSMSG":"No Rules Triggered",
      "IAVS":"N",
      "BILLTOSTATE":"UT",
      "BILLTOCOUNTRY":"US",
      "EXPDATE":"0123",
      "BILLTOPHONE":"8018793789",
      "EMAIL":"[email protected]",
      "CARDTYPE":"0",
      "PREFPSMSG":"No Rules Triggered",
      "SHIPTOZIP":"84096",
      "PROCAVS":"A",
      "COUNTRY":"US",
      "AVSZIP":"N",
      "ADDRESS":"12537 S Brundisi Way",
      "BILLTONAME":"Kris Trujillo",
      "ADDRESSTOSHIP":"12537 S Brundisi Way",
      "AVSADDR":"Y",
      "SHIPTOSTATE":"UT",
      "METHOD":"CC",
      "TRANSTIME":"2022-03-15 15:06:16",
      "detailURL":"https://manager.paypal.com/getStandardDetails.do?subaction=transDetailsWithSB\u0026reportName=SettlementReport\u0026id=A10AB1D0E550",
      "type":"Credit Card",
      "payee":"Kris Trujillo",
      "payeeAddress":"12537 S Brundisi Way"
   },
   "transactionId":"A10AB1D0E550"
}

Laserfiche Forms Configuration

912
  1. Go to laserfiche.velosimo.com
  2. Go to Design and select your form
  3. Open the details on the form diagram
1660
  1. Select Start and the On Event Completion tab
1909
  1. There are two options with what to do after submitting the form:
    a. Show a follow up message - Customize an email to be sent after submitting the form
556
        b. Redirect to website - Enter a URL to redirect to once the form is submitted
543