<?xml version="1.0" encoding="UTF-8"?>
    <!--
        Licensed to the Apache Software Foundation (ASF) under one or
        more contributor license agreements. See the NOTICE file
        distributed with this work for additional information regarding
        copyright ownership. The ASF licenses this file to you under the
        Apache License, Version 2.0 (the "License"); you may not use
        this file except in compliance with the License. You may obtain
        a copy of the License at
        http://www.apache.org/licenses/LICENSE-2.0 Unless required by
        applicable law or agreed to in writing, software distributed
        under the License is distributed on an "AS IS" BASIS, WITHOUT
        WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
        See the License for the specific language governing permissions
        and limitations under the License.
    -->
<section xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    version="5.0" xmlns:xl="http://www.w3.org/1999/xlink" xmlns:xi="http://www.w3.org/2001/XInclude"
    xsi:schemaLocation="http://docbook.org/ns/docbook ../../../content/dtd/docbook.xsd"
    xmlns="http://docbook.org/ns/docbook">
    <title>Payment Gateway Transactions.</title>
    <para>The Payment Gateway is made up of a configurable interface
        that
        processes payments.</para>
    <para>Payment transactions can be authorised, captured and processed
        or
        refunded via the selected mechanism. (eg Paypal, Authorise.net, etc)
   </para>
    <xi:include href="HELP_ACCOUNTING_FindGatewayResponses.xml" />
    <xi:include href="HELP_ACCOUNTING_AuthorizeTransaction.xml" />
    <xi:include href="HELP_ACCOUNTING_CaptureTransaction.xml" />
    <xi:include href="HELP_ACCOUNTING_ViewGatewayResponse.xml" />
    <xi:include href="HELP_ACCOUNTING_ManualTransaction.xml" />

</section>
