Web form payment gateways

You can create your own web form to take payment information and send it to a payment gateway provider. Because you are using a separate form that connects directly to the provider, no sensitive credit card information is stored, transmitted, or processed by Infor Public Sector.

The web form gateway was created for use in Infor Rhythm for Civics. See the Infor Rhythm for Civics Administration Guide for more information.

To define a web form gateway you must create an HTML form that will be used to collect payment information. You must also define the various web requests that are used to initiate transactions with the provider.

When you select Web Form from the Payment Server Gateway list while adding a merchant account, two additional tabs are displayed: Client Form and Payments.

Client Form tab

Use the Client Form tab to define the web form that is used to take the customer's payment information. Define your form in the Contents field. This is a standard HTML form, and should include the URI of the processor and the post action to send to the processor.

The form can include template variables, which are placeholders for values from your database. The properties of the MerchantAccount, DrawerTransaction, and PaymentServerTransaction objects are listed in a tree to the right of the Contents field. You can double-click a property in the tree to add it to your form as a template variable.

Alternatively, you can specify a formula in the Contents Configuration Formula field. For example, you may want your HTML form to include a list of fees that the customer is trying to pay. You can use a template variable to represent a single fee, but not an array of fees. To get an array of fees you can write a formula that drills into the RegisterTransaction object.

Use the Response Mapping grid to define the response mappings for the hosted page gateway. A response mapping takes either a hard-coded value or a property from the response to the web request and maps it to a destination. The mapped value is stored as a custom property on the payment server transaction. The specified destination will be the name of the custom property.

To use a hard-coded value for a response mapping, enter it in the Value column. To use a property from the response, enter it in the Source column. Again, you also have the option to specify a response mapping formula in the Mapping Configuration Formula field.

After they're mapped, you can use the custom properties of the payment server transaction in template variables. This example shows how to retrieve a custom property called "url":

{{oPaymentServerTransaction.CustomProperties.Get("url")}}

Payments tab

Use the Payments tab to define web requests for the various types of cashiering transactions. The Payments tab has these subtabs, each of which defines a web request for a different stage of the payment process:

  • Prepare Payment
  • PreAuthorize Payment
  • Void Payment
  • Authorize Payment
  • Inquire Payment
  • Reverse Payment
  • Inquire Reversed Payment

Each subtab has the same layout.

  • The Configuration Formula field overrides all of the other setups on the subtab. If your configuration is too complex you can use a formula instead.
  • The Contents Configuration Formula field overrides the Contents field.
  • The Format list specifies Json or Xml.
  • The Host Address field specifies the endpoint to use for web requests. This is the URL of the service that you're connecting to. The host address can include template variables.
  • The Request Method list specifies the method of the web request, such as Get or Post.
  • The Mapping Configuration Formula field overrides the Response Mapping grid.
  • The Condition Configuration Formula field overrides the Success Conditions grid.
  • The Time Out field specifies the number of seconds before the web request times out.
  • The Headers grid defines headers for the web request.
  • The Contents field defines the contents of the web request for this transaction type. For example, this might be a SOAP message or a chunk of XML. As with the Contents field on the Client Form tab, you can include template variables in the request contents.
  • The Response Mapping grid defines the response mappings for the web request. These work the same as the response mappings on the Client Form tab. Use XPath or JSONPath syntax for the Source column, depending on the response format.
  • The Success Conditions grid defines conditions that evaluate the response and determine whether the request is a success. The value in the Name column refers to a destination in the Response Mapping grid.