Custom payment gateway

If you choose not to use any of the other described gateways, you can create a custom credit card gateway. The same connection parameters that are available for a Payflow Pro gateway are also available for a custom gateway. This includes all of the authorization modes and settings when creating a gateway account (from the Staff site, go to Settings > Finance > Gateway accounts, then select Add new gateway account).

  • Web: A .NET developer can write a custom gateway for iMIS for the web. See the iMIS Developer Resources documentation for information.
  • Advanced Accounting Console: An Xtender developer can use Visual Basic to write a custom gateway for the Advanced Accounting Console. Instructions for customizing the gateway are in the documentation and the control files. The Xtender developer must define and carefully document which of the fields should be populated, if any, and for what purpose.
Installing a custom credit card authorization gateway

Before implementing a custom gateway, the new gateway application must be installed in a test environment. After the custom gateway application is installed you must:

  1. Create a new Credit Card Authorization account.
  2. Set up a Cash account (from the Staff site, go to Settings > Finance > Cash accounts and select Add new cash account) for a Credit Card or Debit Card that uses the newly defined Credit Card Authorization account. See Setting up cash accounts for more information.
Setting up card authorization in iMIS

📘 Note

Only two fields are required for the custom gateway: Account code and Description. The remaining fields are available for connection parameters. Your developer can use the data entered to these fields for other purposes, or not at all. 🚧 Warning

The labels on the fields may not correspond to the data you need to enter. Check with your developer to find out whether these fields require special data for the custom gateway.

Enter gateway information. Do the following to add a payment gateway:

📘 Note

For the Vantiv/WorldPay gateway, some of the following configuration items are addressed in the ASI-hosted DataVault and are not applicable. These configuration items are managed by ASI.

  1. From the Staff site, go to Settings > Finance > Gateway accounts.
  2. 📘 Note

    For access to this navigation item, system administrators must have an authorization level of AR/Cash: 5 -  Table Maintenance.

  3. Select Add new gateway account and select a payment gateway from the Gateway drop-down. Once you save a card authorization account, you cannot change the Gateway field.
  4. 📘 Note

    The Vantiv/WorldPay gateway will only be available for selection in this drop-down if you have a Vantiv/WorldPay license.

  5. Enter an Account code. This value cannot be changed once the record is saved and cannot include spaces.
  6. 📘 Note

    When entering gateway information for Payflow Pro, SecurePay, iATS or Vantiv/WorldPay, your Account code is already predefined. If you want to modify the Account code it must match the entry in the web.config file:

    -For Desktop-based Payflow Pro transactions, enter VERISIGN.

    -For SecurePay, enter SECUREPAY.

    -For iATS, enter IATS.

    -For Vantiv/WorldPay, enter VANTIV.

    -For AutoPay-enabled Payflow Pro transactions, enter DVPAYFLOWPRO.

    If you are not self-hosted, you must contact your host for assistance modifying web.config files.

    The Account code is used to identify which gateway settings should be synchronized with and used by the tokenization engine. This identification happens in the iMIS web.config file (go to C:\AsiPlatform\Asi.Scheduler_[your instance]\web.config). The following Account Codes are available out-of-the-box:

    • VANTIV
    • SECUREPAY
    • IATS
    • VERISIGN
    • DVPAYFLOWPRO

    If you want to use a different Account code, make sure to update the web.config file. The account codes listed in the authorizationAccounts list for DataVaultPaymentGatewayProvider in the web.config file use the tokenization engine for payment processing.

    <paymentGatewayService>
      <providers>
        <add name="PayFlowProPaymentGatewayProvider" type="Asi.PaymentGateway.PayflowProPaymentGatewayProvider, PayflowProPaymentGatewayProvider" authorizationAccounts="VERISIGN,PaymentTech,PAYFLOWPRO" />
        <add name="NoProcessingPaymentGatewayProvider" type="Asi.PaymentGateway.NoProcessingPaymentGatewayProvider, NoProcessingPaymentGatewayProvider" authorizationAccounts="NOPROCESS,DEBIT" />
        <add name="PayPalPaymentGatewayProvider" type="Asi.PaymentGateway.PayPalPaymentGatewayProvider, PayPalPaymentGatewayProvider" authorizationAccounts="PAYPALEC" />
        <add name="MonerisPaymentGatewayProvider" type="Asi.PaymentGateway.MonerisPaymentGatewayProvider, MonerisPaymentGatewayProvider" authorizationAccounts="MONERIS" />
        <add name="TnsPayPaymentGatewayProvider" type="Asi.PaymentGateway.TnsPayPaymentGatewayProvider, TnsPayPaymentGatewayProvider" authorizationAccounts="TNSPAYAC,TNSPAYP" />
        <add name="DataVaultPaymentGatewayProvider" type="Asi.PaymentGateway.DataVaultPaymentGatewayProvider, DataVaultPaymentGatewayProvider" authorizationAccounts="DVPAYFLOWPRO,SECUREPAY,IATS,VANTIV" />
      </providers>
    </paymentGatewayService>
  7. Enter a meaningful description for the authorization account in the Description field. This information displays as read-only data on the CC Auth Account field on the Cash accounts setup page (in the Advanced Accounting Console, go to Finance > Options > Set up tables > Cash accounts).
  8. (Not applicable for Vantiv/WorldPay gateways) Enter a Host Url. You will receive the Host Url from your gateway provider when you register.

    You can use test Host URLs while testing your gateway to verify setup. This ensures a real financial transaction is not mistakenly processed during the testing. Some common live and test Host URLs include:

    • Payflow Pro:
      • Host URL (Test) - pilot-payflowpro.paypal.com
      • Host URL (Live) - payflowpro.paypal.com
    • iATS:
      • North America - https://www.iatspayments.com
      • United Kingdom - https://www.uk.iatspayments.com
      • 📘 Note

        For any countries outside North America, the United Kingdom URL must be used.
    • 📘 Note

      The Host Url is required for the iATS gateway. For more information about Live or Test accounts on the iATS gateway, contact iATS.
    • SecurePay:
      • Credit card transactions:
        • Host URL (Test) - https://test.securepay.com.au/xmlapi/payment
        • Host URL (Live) - https://api.securepay.com.au/xmlapi/payment
      • Direct debit transactions:
        • Host URL (Test) - https://test.securepay.com.au/xmlapi/directentry
        • Host URL (Live) - https://api.securepay.com.au/xmlapi/directentry
    • 📘 Note

      The Host Url is required for the SecurePay gateway. For more information about Live or Test accounts on the SecurePay gateway, contact SecurePay
    • Moneris
      • Host URL (Test) - esqa.moneris.com
      • Host URL (Live) - www3.moneris.com
    • TNSPay (Test) - secure.na.tnspayments.com
    • 📘 Note

      For the most up-to-date live and test Host Url information, contact your gateway provider or refer to your gateway provider's documentation.
  9. (Vantiv/WorldPay gateway only) Enter your Merchant ID in the Vendor field.
  10. (PayflowPro gateway only) Enter your Username in the Vendor field.
  11. (Not applicable for Vantiv/WorldPay gateways) Enter a Username (this is the user name supplied by the gateway):
    • For SecurePay, enter the Merchant ID in this field.
    • For iATS, enter the Agent value in this field.
  12. (Not applicable for Vantiv/WorldPay gateways) Enter the Password you were given by the gateway provider during the sign-up process. Verify your password.
  13. For Moneris gateways, enter the API token (password) you were provided by Moneris.

    📘 Note

    Moneris requires clients using the API key to have their AVS turned on.

  14. Click Save.
  15. From the Advanced Accounting Console, reset IIS.
  16. Recycle the AsiSchedulerPool:

    📘 Note

    If you are not self-hosted, you must contact your host for assistance recycling the AsiSchedulerPool.
    1. Open the IIS administrative utility. Go to Start > Administrative Tools > Internet Information Services (IIS) Manager.
    2. In the left navigation panel, go to Sites > Default Web Site.
    3. Select Content View at the bottom of the screen.
    4. Select the Asi.Scheduler_ [your instance] application for the instance you installed.
    5. Do one of the following:
      • Right-click and select Manage Application > Browse. An ASP.Net page will open.
      • In the Actions pane, select Browse. An ASP.Net page will open.
    6. Close the browser. The Asi.Scheduler_ [your instance] service is now enabled.
  17. For iATS, SecurePay and Vantiv/WorldPay gateways, you must synchronize your payment gateway with the DataVault. Simply adding and saving a payment gateway in iMIS will not synchronize this information with the tokenization engine.
  18. 🚧 Warning

    You must define the DataVault Service address before you attempt to synchronize your payment gateway with the DataVault. If you do not have this address defined, iMIS will be unable to communicate with the DataVault and the synchronization attempt will fail. For more information, see DataVault service address.

    Do the following:

    1. From the Staff site, go to Settings > Finance > Automatic payment gateways.
    2. Click Synchronize gateways with DataVault to synchronize the gateways you defined and saved in iMIS with the ASI-hosted tokenization engine.

Associate an authorization account with a credit/debit cash account code

Before you can use card authorization, you must set up cash accounts:

  1. From the Staff site, go to Settings > Finance > Cash accounts.
  2. Select Add new cash account.
  3. In the Code field, enter the abbreviation you want to assign to the cash account you are creating.
  4. You can use any code you prefer for a credit card, debit card or direct debit:

    For a credit card number to be validated by iMIS, the value, in addition to being a cash account of type Credit Card, must contain one of the credit card types iMIS supports:

    • AMEX
    • VISA
    • MC
    • DISC
    • DINERS
    • CB

    For a direct debit, the first two letters control the country for the direct debit, for example:

    • CA = Canada
    • US = United States
    • AU = Australia

    Make sure the correct payment gateway is linked to the appropriate cash account: iATS or Vantiv/WorldPay can be used for Canadian direct debits, SecurePay is used for Australian direct debits, and Payflow or Vantiv/WorldPay can be used for US direct debits. The default Code prefix is US. The prefix determines the region-specific information needed for your payment methods. It is advised that you use the default Code as other countries might be supported in the future.

  5. In the Name field, enter the full name you want to assign to the account.
  6. Select a Type:
    • Cash - Specifies that the account is a checking or other deposit account (other than a credit card account).
    • Credit card - Specifies that the account is a credit card account.
      • US debit cards and credit cards are handled the same in iMIS.
    • Other - Specifies that the account is a non-cash asset account.
    • Debit card - Specifies that the account is a European debit card account.
    • Service – Specifies that the account is a third-party payment service, such as PayPal Express.
    • Direct debit - Specifies that the account is a direct debit account (payment is taken directly from the bank account) that is used with automatic and recurring payments.
  7. (optional) From the Account drop-down, select the cash account.
  8. (optional) Select the Entity. For more information, refer to Financial entities.
  9. (Credit card, Debit card, Direct debit, and Service only) Select the associated Gateway account.
  10. (optional) Depending on the Type and Gateway account chosen, the following checkboxes appear:
    • CSC Required for web transactions - Makes the CSC required for the specified cash account when on the web.
    • CSC Required for desktop transactions - Makes the CSC required for the specified cash account in the AAC/Desktop.
    • 📘 Note

      See Requiring a CSC for credit card or debit card transactions for more information.
    • Display issue number - Displays a field for entering a European debit card's issue number in payment entry windows. When cleared, the Issue Number field is not displayed in payment entry windows.
    • Display issue date - Displays a field for entering a European debit card's issue date in payment entry windows. When cleared, the Issue Date field is not displayed in payment entry windows.
  11. Click Save.
Troubleshooting the installation for custom gateway

If the custom gateway application is not installed or is installed incorrectly, the transaction will fail. When a user attempts to save a payment transaction that is dependent on the custom gateway, the authorization process will time out for that transaction. iMIS informs the user that the payment cannot be authorized because the gateway application is not installed correctly.

  • The following message is presented first:
    Custom Gateway not properly installed
    The payment type entered for this transaction requires a Custom Gateway for credit card authorizations. The custom gateway is not properly installed on this workstation.
    The authorization for this payment transaction will time out.
    Please contact your system administrator or the developer of your custom gateway application before processing payments using the specified payment type.

    📘 Note

    An error message identifier, nCCAuthOnly_Custom, at the bottom of this message informs Technical Support that this is not an iMIS issue.
  • After the user clicks OK in the Custom Gateway not properly installed message box, a standard iMIS warning is provided.
    The authorization process timed out. Please contact your system administrator.