<?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.
-->

<services xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/services.xsd">
    <description>Accounting Services</description>
    <vendor>OFBiz</vendor>
    <version>1.0</version>

    <!-- Payment Method services -->
    <service name="deletePaymentMethod" engine="java"
            location="org.apache.ofbiz.accounting.payment.PaymentMethodServices" invoke="deletePaymentMethod" auth="true">
        <description>Delete PaymentMethod</description>
        <attribute name="partyId" type="String" mode="IN" optional="true"/>
        <attribute name="paymentMethodId" type="String" mode="IN" optional="false"/>
    </service>

    <service name="createCreditCard" default-entity-name="CreditCard" engine="java"
            location="org.apache.ofbiz.accounting.payment.PaymentMethodServices" invoke="createCreditCard" auth="true">
        <description>Create CreditCard</description>
        <auto-attributes include="pk" mode="INOUT" optional="true"/>
        <auto-attributes include="nonpk" mode="IN" optional="true"/>
        <!-- these four fields are for updating on the PaymentMethod -->
        <attribute name="partyId" type="String" mode="IN" optional="true"/>
        <attribute name="description" type="String" mode="IN" optional="true"/>
        <attribute name="fromDate" type="Timestamp" mode="IN" optional="true"/>
        <attribute name="thruDate" type="Timestamp" mode="IN" optional="true"/>
        <!-- these two will be assembled into a expireDate by buildCcExpireDate on an ECA if needed -->
        <attribute name="expMonth" type="String" mode="IN" optional="true"/>
        <attribute name="expYear" type="String" mode="IN" optional="true"/>
        <attribute name="productStoreId" type="String" mode="IN" optional="true"/>
        <override name="firstNameOnCard" optional="false"/>
        <override name="lastNameOnCard" optional="false"/>
        <override name="cardType" optional="false"/>
        <override name="cardNumber" optional="false"/>
        <override name="expireDate" optional="false"/>
    </service>
    <service name="createCreditCardAndAddress" engine="group" location="createCreditCardAndAddress" invoke="" auth="true">
        <description>Creates a CreditCard and PostalAddress</description>
        <attribute name="contactMechId" type="String" mode="INOUT" optional="true"/>
        <attribute name="paymentMethodId" type="String" mode="INOUT" optional="true"/>
    </service>
    <service name="updateCreditCardAndAddress" engine="group" location="updateCreditCardAndAddress" invoke="" auth="true">
        <description>Updates a CreditCard and PostalAddress</description>
        <attribute name="contactMechId" type="String" mode="INOUT" optional="true"/>
        <attribute name="paymentMethodId" type="String" mode="INOUT" optional="true"/>
    </service>
    <service name="updateCreditCard" default-entity-name="CreditCard" engine="java"
            location="org.apache.ofbiz.accounting.payment.PaymentMethodServices" invoke="updateCreditCard" auth="true">
        <description>Update CreditCard</description>
        <auto-attributes include="pk" mode="IN" optional="false"/>
        <auto-attributes include="nonpk" mode="IN" optional="true"/>
        <!-- these four fields are for updating on the PaymentMethod -->
        <attribute name="partyId" type="String" mode="IN" optional="true"/>
        <attribute name="fromDate" type="Timestamp" mode="IN" optional="true"/>
        <attribute name="thruDate" type="Timestamp" mode="IN" optional="true"/>
        <attribute name="description" type="String" mode="IN" optional="true"/>
        <!-- these two will be assembled into a expireDate by buildCcExpireDate on an ECA if needed -->
        <attribute name="expMonth" type="String" mode="IN" optional="true"/>
        <attribute name="expYear" type="String" mode="IN" optional="true"/>
        <attribute name="paymentMethodId" type="String" mode="OUT" optional="false"/> <!-- This is the id of the new cc -->
        <attribute name="oldPaymentMethodId" type="String" mode="OUT" optional="false"/> <!-- This is the id of the old cc -->
        <attribute name="productStoreId" type="String" mode="IN" optional="true"/>
    </service>
    <service name="clearCreditCardDataAndExpire" engine="java"
            location="org.apache.ofbiz.accounting.payment.PaymentMethodServices" invoke="clearCreditCardData" auth="true">
        <description>Clears the credit card number out of the value object and expires the payment method</description>
        <attribute name="paymentMethodId" type="String" mode="IN" optional="false"/>
    </service>
    <service name="buildCcExpireDate" engine="java"
                location="org.apache.ofbiz.accounting.payment.PaymentMethodServices" invoke="makeExpireDate">
        <description>Makes a Expire Date</description>
        <attribute name="expMonth" type="String" mode="IN" optional="false"/>
        <attribute name="expYear" type="String" mode="IN" optional="false"/>
        <attribute name="expireDate" type="String" mode="OUT"/>
    </service>

    <service name="createGiftCard" engine="java"
            location="org.apache.ofbiz.accounting.payment.PaymentMethodServices" invoke="createGiftCard" auth="true">
        <description>Create GiftCard</description>
        <attribute name="partyId" type="String" mode="IN" optional="true"/>
        <attribute name="fromDate" type="Timestamp" mode="IN" optional="true"/>
        <attribute name="thruDate" type="Timestamp" mode="IN" optional="true"/>
        <attribute name="description" type="String" mode="IN" optional="true"/>
        <attribute name="cardNumber" type="String" mode="IN" optional="false"/>
        <attribute name="pinNumber" type="String" mode="IN" optional="true"/>
        <attribute name="expireDate" type="String" mode="IN" optional="true"/>
        <attribute name="expMonth" type="String" mode="IN" optional="true"/>
        <attribute name="expYear" type="String" mode="IN" optional="true"/>
        <attribute name="paymentMethodId" type="String" mode="INOUT" optional="true"/>
    </service>
    <service name="updateGiftCard" engine="java"
            location="org.apache.ofbiz.accounting.payment.PaymentMethodServices" invoke="updateGiftCard" auth="true">
        <description>Update GiftCard</description>
        <attribute name="partyId" type="String" mode="IN" optional="true"/>
        <attribute name="fromDate" type="Timestamp" mode="IN" optional="true"/>
        <attribute name="thruDate" type="Timestamp" mode="IN" optional="true"/>
        <attribute name="description" type="String" mode="IN" optional="true"/>
        <attribute name="paymentMethodId" type="String" mode="INOUT" optional="false"/>
        <attribute name="cardNumber" type="String" mode="IN" optional="false"/>
        <attribute name="pinNumber" type="String" mode="IN" optional="true"/>
        <attribute name="expireDate" type="String" mode="IN" optional="true"/>
        <attribute name="expMonth" type="String" mode="IN" optional="true"/>
        <attribute name="expYear" type="String" mode="IN" optional="true"/>
        <attribute name="oldPaymentMethodId" type="String" mode="OUT" optional="true"/>
    </service>

    <service name="createEftAccount" engine="java"
            location="org.apache.ofbiz.accounting.payment.PaymentMethodServices" invoke="createEftAccount" auth="true">
        <description>Create EftAccount</description>
        <attribute name="partyId" type="String" mode="IN" optional="true"/>
        <attribute name="fromDate" type="Timestamp" mode="IN" optional="true"/>
        <attribute name="thruDate" type="Timestamp" mode="IN" optional="true"/>
        <attribute name="description" type="String" mode="IN" optional="true"/>
        <attribute name="bankName" type="String" mode="IN" optional="false"/>
        <attribute name="routingNumber" type="String" mode="IN" optional="false"/>
        <attribute name="accountType" type="String" mode="IN" optional="false"/>
        <attribute name="accountNumber" type="String" mode="IN" optional="false"/>
        <attribute name="nameOnAccount" type="String" mode="IN" optional="false"/>
        <attribute name="companyNameOnAccount" type="String" mode="IN" optional="true"/>
        <attribute name="contactMechId" type="String" mode="IN" optional="true"/>
        <attribute name="paymentMethodId" type="String" mode="INOUT" optional="true"/>
    </service>

    <service name="createCheckAccount" engine="java"
            location="org.apache.ofbiz.accounting.payment.PaymentMethodServices" invoke="createCheckAccount" auth="true">
        <description>Create Check</description>
        <attribute name="partyId" type="String" mode="IN" optional="true"/>
        <attribute name="bankName" type="String" mode="IN" optional="false"/>
        <attribute name="paymentMethodTypeId" type="String" mode="IN" optional="false"/>
        <attribute name="description" type="String" mode="IN" optional="true"/>
        <attribute name="routingNumber" type="String" mode="IN" optional="true"/>
        <attribute name="accountType" type="String" mode="IN" optional="true"/>
        <attribute name="accountNumber" type="String" mode="IN" optional="true"/>
        <attribute name="nameOnAccount" type="String" mode="IN" optional="false"/>
        <attribute name="companyNameOnAccount" type="String" mode="IN" optional="true"/>
        <attribute name="contactMechId" type="String" mode="IN" optional="true"/>
        <attribute name="paymentMethodId" type="String" mode="INOUT" optional="true"/>
    </service>

    <service name="updateCheckAccount" engine="java"
             location="org.apache.ofbiz.accounting.payment.PaymentMethodServices" invoke="updateCheckAccount" auth="true">
        <description>Update Check Account</description>
        <attribute name="partyId" type="String" mode="IN" optional="true"/>
        <attribute name="fromDate" type="Timestamp" mode="IN" optional="true"/>
        <attribute name="paymentMethodTypeId" type="String" mode="IN" optional="false"/>
        <attribute name="description" type="String" mode="IN" optional="true"/>
        <attribute name="paymentMethodId" type="String" mode="INOUT" optional="false"/>
        <attribute name="bankName" type="String" mode="IN" optional="true"/>
        <attribute name="routingNumber" type="String" mode="IN" optional="true"/>
        <attribute name="accountType" type="String" mode="IN" optional="true"/>
        <attribute name="accountNumber" type="String" mode="IN" optional="true"/>
        <attribute name="nameOnAccount" type="String" mode="IN" optional="false"/>
        <attribute name="companyNameOnAccount" type="String" mode="IN" optional="true"/>
        <attribute name="contactMechId" type="String" mode="IN" optional="true"/>
        <attribute name="oldPaymentMethodId" type="String" mode="OUT" optional="true"/>
    </service>

    <service name="createEftAccountAndAddress" engine="group" location="createEftAccountAndAddress" invoke="" auth="true">
        <description>Creates an EftAccount and PostalAddress</description>
        <attribute name="contactMechId" type="String" mode="INOUT" optional="true"/>
        <attribute name="paymentMethodId" type="String" mode="INOUT" optional="true"/>
    </service>
    <service name="updateEftAccountAndAddress" engine="group" location="updateEftAccountAndAddress" invoke="" auth="true">
        <description>Updates an EftAccount and PostalAddress</description>
        <attribute name="contactMechId" type="String" mode="INOUT" optional="true"/>
        <attribute name="paymentMethodId" type="String" mode="INOUT" optional="true"/>
    </service>
    <service name="updateEftAccount" engine="java"
            location="org.apache.ofbiz.accounting.payment.PaymentMethodServices" invoke="updateEftAccount" auth="true">
        <description>Update EftAccount</description>
        <attribute name="partyId" type="String" mode="IN" optional="true"/>
        <attribute name="fromDate" type="Timestamp" mode="IN" optional="true"/>
        <attribute name="thruDate" type="Timestamp" mode="IN" optional="true"/>
        <attribute name="description" type="String" mode="IN" optional="true"/>
        <attribute name="paymentMethodId" type="String" mode="INOUT" optional="false"/>
        <attribute name="bankName" type="String" mode="IN" optional="false"/>
        <attribute name="routingNumber" type="String" mode="IN" optional="false"/>
        <attribute name="accountType" type="String" mode="IN" optional="false"/>
        <attribute name="accountNumber" type="String" mode="IN" optional="false"/>
        <attribute name="nameOnAccount" type="String" mode="IN" optional="false"/>
        <attribute name="companyNameOnAccount" type="String" mode="IN" optional="true"/>
        <attribute name="contactMechId" type="String" mode="IN" optional="true"/>
        <attribute name="oldPaymentMethodId" type="String" mode="OUT" optional="true"/>
    </service>

    <service name="setPaymentMethodAddress" engine="simple"
            location="component://accounting/minilang/payment/PaymentMethodServices.xml" invoke="setPaymentMethodAddress" auth="true">
        <description>Set the inital payment method address.</description>
        <attribute name="paymentMethodId" type="String" mode="IN" optional="false"/>
        <attribute name="contactMechId" type="String" mode="IN" optional="false"/>
    </service>
    <service name="updatePaymentMethodAddress" engine="simple"
            location="component://accounting/minilang/payment/PaymentMethodServices.xml" invoke="updatePaymentMethodAddress" auth="true" use-transaction="false">
        <description>Finds CreditCards and EftAccounts that use the oldContactMechId and updates to the contactMechId</description>
        <attribute name="contactMechId" type="String" mode="IN" optional="false"/>
        <attribute name="oldContactMechId" type="String" mode="IN" optional="false"/>
        <attribute name="partyId" type="String" mode="IN" optional="true"/>
    </service>
    <service name="createPayPalPaymentMethod" engine="simple"
            location="component://accounting/minilang/payment/PaymentMethodServices.xml" invoke="createPayPalPaymentMethod" auth="true">
        <description>Create a PayPal Payment Method</description>
        <auto-attributes mode="INOUT" entity-name="PayPalPaymentMethod" include="pk" optional="true"/>
        <auto-attributes mode="IN" entity-name="PayPalPaymentMethod" include="nonpk" optional="true"/>
        <attribute name="partyId" type="String" mode="IN" optional="true"/>
        <attribute name="description" type="String" mode="IN" optional="true"/>
        <attribute name="fromDate" type="Timestamp" mode="IN" optional="true"/>
        <attribute name="thruDate" type="Timestamp" mode="IN" optional="true"/>
    </service>
    <service name="updatePayPalPaymentMethod" engine="entity-auto" default-entity-name="PayPalPaymentMethod" invoke="update" auth="true">
        <description>Update a PayPal Payment Method</description>
        <attribute name="paymentMethodId" mode="INOUT" type="String" optional="false"/>
        <auto-attributes mode="IN" entity-name="PayPalPaymentMethod" include="nonpk" optional="true"/>
    </service>

    <!-- Payment Auth/Capture Services -->
    <service name="manualForcedCcAuthTransaction" engine="java"
            location="org.apache.ofbiz.accounting.payment.PaymentGatewayServices" invoke="processManualCcAuth" auth="true">
        <description>Direct link to payment processors to force manual CC authorizations; not logged in system</description>
        <attribute name="paymentMethodId" type="String" mode="IN" optional="false"/>
        <attribute name="productStoreId" type="String" mode="IN" optional="false"/>
        <attribute name="securityCode" type="String" mode="IN" optional="true"/>
        <attribute name="amount" type="BigDecimal" mode="IN" optional="false"/>
    </service>
    <service name="manualForcedCcTransaction" engine="java"
            location="org.apache.ofbiz.accounting.payment.PaymentGatewayServices" invoke="processManualCcTx" auth="true">
        <description>Direct link to payment processors to force manual transactions; not logged in system</description>
        <attribute name="paymentMethodTypeId" type="String" mode="IN" optional="false"/>
        <attribute name="productStoreId" type="String" mode="IN" optional="false"/>
        <attribute name="transactionType" type="String" mode="IN" optional="false"/>
        <attribute name="companyNameOnCard" type="String" mode="IN" optional="true"/>
        <attribute name="titleOnCard" type="String" mode="IN" optional="true"/>
        <attribute name="firstNameOnCard" type="String" mode="IN" optional="false"/>
        <attribute name="middleNameOnCard" type="String" mode="IN" optional="true"/>
        <attribute name="lastNameOnCard" type="String" mode="IN" optional="false"/>
        <attribute name="suffixOnCard" type="String" mode="IN" optional="true"/>
        <attribute name="cardType" type="String" mode="IN" optional="false"/>
        <attribute name="cardNumber" type="String" mode="IN" optional="false"/>
        <attribute name="cardSecurityCode" type="String" mode="IN" optional="true"/>
        <attribute name="expMonth" type="String" mode="IN" optional="false"/>
        <attribute name="expYear" type="String" mode="IN" optional="false"/>
        <!-- Not used in the service any more
        <attribute name="firstName" type="String" mode="IN" optional="false"/>
        <attribute name="lastName" type="String" mode="IN" optional="false"/>
        -->
        <attribute name="infoString" type="String" mode="IN" optional="false"/>
        <attribute name="address1" type="String" mode="IN" optional="false"/>
        <attribute name="address2" type="String" mode="IN" optional="true"/>
        <attribute name="city" type="String" mode="IN" optional="false"/>
        <attribute name="stateProvinceGeoId" type="String" mode="IN" optional="true"/>
        <attribute name="postalCode" type="String" mode="IN" optional="false"/>
        <attribute name="countryGeoId" type="String" mode="IN" optional="false"/>
        <attribute name="amount" type="BigDecimal" mode="IN" optional="false"/>
        <attribute name="referenceCode" type="String" mode="IN" optional="true"/>
        <attribute name="orderPaymentPreferenceId" type="String" mode="IN" optional="false"/>
        <attribute name="referenceNum" type="String" mode="OUT" optional="false"/>
        <attribute name="tranRespMsgs" type="List" mode="OUT" optional="true"/>
    </service>
    <service name="retryFailedAuths" engine="java"
            location="org.apache.ofbiz.accounting.payment.PaymentGatewayServices" invoke="retryFailedAuths" auth="true">
        <description>(Batch) Retries failed authorizations due to processor/connection problems</description>
        <!-- this service has no parameters IN or OUT -->
    </service>
    <service name="retryFailedOrderAuth" engine="java"
            location="org.apache.ofbiz.accounting.payment.PaymentGatewayServices" invoke="retryFailedOrderAuth" auth="true">
        <description>Retries failed authorization due to processor/connection problems, or NSF (Not Sufficient Funds) failure, for an order</description>
        <attribute name="orderId" type="String" mode="IN" optional="false"/>
        <attribute name="processResult" type="String" mode="OUT" optional="true"/>
        <attribute name="authResultMsgs" type="List" mode="OUT" optional="true"/>
    </service>

    <service name="retryFailedAuthNsfs" engine="java"
        location="org.apache.ofbiz.accounting.payment.PaymentGatewayServices" invoke="retryFailedAuthNsfs" auth="true">
        <description>(Batch) Retries failed authorizations due to NSF (Not Sufficient Funds); these are for auto-orders</description>
        <!-- this service has no parameters IN or OUT -->
    </service>

    <service name="authOrderPaymentPreference" engine="java"
            location="org.apache.ofbiz.accounting.payment.PaymentGatewayServices" invoke="authOrderPaymentPreference" auth="true">
        <description>Process (authorizes/re-authorizes) a single payment for an order with an optional overrideAmount</description>
        <attribute name="orderPaymentPreferenceId" type="String" mode="IN" optional="false"/>
        <attribute name="overrideAmount" type="BigDecimal" mode="IN" optional="true"/>
        <attribute name="finished" type="Boolean" mode="OUT" optional="false"/>
        <attribute name="errors" type="Boolean" mode="OUT" optional="false"/>
        <attribute name="messages" type="List" mode="OUT" optional="true"/>
        <attribute name="processAmount" type="BigDecimal" mode="OUT" optional="true"/>
        <attribute name="authCode" type="String" mode="OUT" optional="true"/>
    </service>

    <service name="authOrderPayments" engine="java"
            location="org.apache.ofbiz.accounting.payment.PaymentGatewayServices" invoke="authOrderPayments" auth="true">
        <description>Process (authorizes/re-authorizes) payments for an order</description>
        <attribute name="orderId" type="String" mode="IN" optional="false"/>
        <attribute name="processResult" type="String" mode="OUT" optional="false"/>
        <attribute name="authResultMsgs" type="List" mode="OUT" optional="true"/>
        <attribute name="reAuth" type="Boolean" mode="IN" optional="true"/>
        <attribute name="authCode" type="String" mode="OUT" optional="true"/>
    </service>

    <service name="releaseOrderPayments" engine="java"
            location="org.apache.ofbiz.accounting.payment.PaymentGatewayServices" invoke="releaseOrderPayments" auth="true">
        <description>Releases all payment authorizations for an order</description>
        <attribute name="orderId" type="String" mode="IN" optional="false"/>
        <attribute name="processResult" type="String" mode="OUT" optional="false"/>
        <attribute name="orderPaymentPreferenceId" type="String" mode="IN" optional="true"/>
    </service>

    <service name="releaseOrderPaymentPreference" engine="java"
            location="org.apache.ofbiz.accounting.payment.PaymentGatewayServices" invoke="releaseOrderPaymentPreference" auth="true">
        <description>Releases payment authorization for a single OrderPaymentPreference</description>
        <attribute name="orderPaymentPreferenceId" type="String" mode="IN" optional="false"/>
    </service>
    
    <service name="creditOrderPaymentPreference" engine="java"
            location="org.apache.ofbiz.accounting.payment.PaymentGatewayServices" invoke="creditOrderPaymentPreference" auth="true">
        <description>Credit payment authorization for a single OrderPaymentPreference</description>
        <attribute name="orderPaymentPreferenceId" type="String" mode="IN" optional="false"/>
    </service>
    
    <service name="capturePaymentsByInvoice" engine="java"
            location="org.apache.ofbiz.accounting.payment.PaymentGatewayServices" invoke="capturePaymentsByInvoice" auth="true">
        <description>Captures (settles) pre-authorized order payments by invoice</description>
        <attribute name="invoiceId" type="String" mode="IN" optional="false"/>
        <attribute name="processResult" type="String" mode="OUT" optional="false"/>
    </service>

    <service name="captureOrderPayments" engine="java"
            location="org.apache.ofbiz.accounting.payment.PaymentGatewayServices" invoke="captureOrderPayments" auth="true">
        <description>Captures (settles) pre-authorized order payments, re-authorizing any remaining balance.  If the order involves billing accounts,
            capture to it in full before proceeding to other payment preferences.</description>
        <attribute name="orderId" type="String" mode="IN" optional="false"/>
        <attribute name="invoiceId" type="String" mode="IN" optional="true"/>
        <attribute name="billingAccountId" type="String" mode="IN" optional="true"/>
        <attribute name="captureAmount" type="BigDecimal" mode="IN" optional="false"/>
        <attribute name="processResult" type="String" mode="OUT" optional="false"/>
    </service>

    <!-- deprecated in favour of captureBillingAccountPayments -->
    <service name="captureBillingAccountPayment" engine="java"
            location="org.apache.ofbiz.accounting.payment.PaymentGatewayServices" invoke="captureBillingAccountPayment" auth="true">
        <description>Records a settlement or payment of an invoice by a billing account for the given captureAmount</description>
        <attribute name="invoiceId" type="String" mode="IN" optional="false"/>
        <attribute name="billingAccountId" type="String" mode="IN" optional="false"/>
        <attribute name="captureAmount" type="BigDecimal" mode="IN" optional="false"/>
        <attribute name="orderId" type="String" mode="IN" optional="true"/>
        <attribute name="paymentId" type="String" mode="OUT" optional="false"/>
        <attribute name="paymentGatewayResponseId" type="String" mode="OUT" optional="true"/>
    </service>
    <service name="captureBillingAccountPayments" engine="java"
            location="org.apache.ofbiz.accounting.payment.PaymentGatewayServices" invoke="captureBillingAccountPayments" auth="true">
        <description>Applies (part of) the unapplied payment applications associated to the billing account to the given invoice.</description>
        <attribute name="billingAccountId" type="String" mode="IN" optional="false"/>
        <attribute name="invoiceId" type="String" mode="IN" optional="false"/>
        <attribute name="captureAmount" type="BigDecimal" mode="INOUT" optional="false"/>
        <attribute name="orderId" type="String" mode="IN" optional="true"/>
    </service>

    <service name="processCaptureSplitPayment" engine="java" require-new-transaction="true"
            location="org.apache.ofbiz.accounting.payment.PaymentGatewayServices" invoke="processCaptureSplitPayment" auth="true">
        <description>Handles the creation of new OrderPaymentPreference record (and Auth) for partial captures</description>
        <attribute name="orderPaymentPreference" type="org.apache.ofbiz.entity.GenericValue" mode="IN" optional="false"/>
        <attribute name="splitAmount" type="BigDecimal" mode="IN" optional="false"/>
    </service>
    
    <service name="refundOrderPaymentPreference" engine="java"
            location="org.apache.ofbiz.accounting.payment.PaymentGatewayServices" invoke="refundOrderPaymentPreference" auth="true">
        <description>Refund payment authorization for a single OrderPaymentPreference</description>
        <attribute name="orderPaymentPreferenceId" type="String" mode="IN" optional="false"/>
        <attribute name="amount" type="BigDecimal" mode="IN" optional="false"/>
        <attribute name="refundAmount" type="BigDecimal" mode="OUT" optional="false"/>
        <attribute name="paymentId" type="String" mode="OUT" optional="false"/>
    </service>
    
    <service name="refundPayment" engine="java"
            location="org.apache.ofbiz.accounting.payment.PaymentGatewayServices" invoke="refundPayment" auth="true">
        <description>Refunds A Payment</description>
        <attribute name="orderPaymentPreference" type="org.apache.ofbiz.entity.GenericValue" mode="IN" optional="false"/>
        <attribute name="refundAmount" type="BigDecimal" mode="INOUT" optional="false"/>
        <attribute name="paymentId" type="String" mode="OUT" optional="false"/>
    </service>
    
    <service name="processAuthResult" engine="java"
            location="org.apache.ofbiz.accounting.payment.PaymentGatewayServices" invoke="processAuthResult" auth="true">
        <description>Process the payment authorization result(s)</description>
        <attribute name="orderPaymentPreference" type="org.apache.ofbiz.entity.GenericValue" mode="IN" optional="false"/>
        <attribute name="processAmount" type="BigDecimal" mode="IN" optional="false"/>
        <attribute name="currencyUomId" type="String" mode="IN" optional="true"/>
        <attribute name="authResult" type="Boolean" mode="IN" optional="false"/>
        <attribute name="serviceTypeEnum" type="String" mode="IN" optional="true"/>
        <attribute name="authCode" type="String" mode="IN" optional="true"/>
        <attribute name="authAltRefNum" type="String" mode="IN" optional="true"/>
        <attribute name="authRefNum" type="String" mode="IN" optional="false"/>
        <attribute name="authFlag" type="String" mode="IN" optional="true"/>
        <attribute name="authMessage" type="String" mode="IN" optional="true"/>
        <attribute name="cvCode" type="String" mode="IN" optional="true"/>
        <attribute name="avsCode" type="String" mode="IN" optional="true"/>
        <attribute name="scoreCode" type="String" mode="IN" optional="true"/>
        <attribute name="internalRespMsgs" type="List" mode="IN" optional="true"/>
    </service>

    <service name="processCaptureResult" engine="java"
            location="org.apache.ofbiz.accounting.payment.PaymentGatewayServices" invoke="processCaptureResult" auth="true">
        <description>Process the payment capture result(s)</description>
        <attribute name="orderPaymentPreference" type="org.apache.ofbiz.entity.GenericValue" mode="IN" optional="false"/>
        <attribute name="serviceTypeEnum" type="String" mode="IN" optional="true"/>
        <attribute name="payToPartyId" type="String" mode="IN" optional="true"/>
        <attribute name="invoiceId" type="String" mode="IN" optional="true"/>
        <attribute name="captureAmount" type="BigDecimal" mode="IN" optional="false"/>
        <attribute name="currencyUomId" type="String" mode="IN" optional="true"/>
        <attribute name="captureResult" type="Boolean" mode="IN" optional="false"/>
        <attribute name="captureAltRefNum" type="String" mode="IN" optional="true"/>
        <attribute name="captureRefNum" type="String" mode="IN" optional="false"/>
        <attribute name="captureCode" type="String" mode="IN" optional="true"/>
        <attribute name="captureFlag" type="String" mode="IN" optional="true"/>
        <attribute name="captureMessage" type="String" mode="IN" optional="true"/>
        <attribute name="internalRespMsgs" type="List" mode="IN" optional="true"/>
    </service>
    
    <service name="processReleaseResult" engine="java"
            location="org.apache.ofbiz.accounting.payment.PaymentGatewayServices" invoke="processReleaseResult" auth="true">
        <description>Process the payment release result(s)</description>
        <attribute name="orderPaymentPreference" type="org.apache.ofbiz.entity.GenericValue" mode="IN" optional="false"/>
        <attribute name="releaseAmount" type="BigDecimal" mode="IN" optional="false"/>
        <attribute name="currencyUomId" type="String" mode="IN" optional="true"/>
        <attribute name="releaseResult" type="Boolean" mode="IN" optional="false"/>
        <attribute name="releaseAltRefNum" type="String" mode="IN" optional="true"/>
        <attribute name="releaseRefNum" type="String" mode="IN" optional="false"/>
        <attribute name="releaseCode" type="String" mode="IN" optional="true"/>
        <attribute name="releaseFlag" type="String" mode="IN" optional="true"/>
        <attribute name="releaseMessage" type="String" mode="IN" optional="true"/>
        <attribute name="internalRespMsgs" type="List" mode="IN" optional="true"/>
    </service>
    
    <service name="processCreditResult" engine="java"
            location="org.apache.ofbiz.accounting.payment.PaymentGatewayServices" invoke="processCreditResult" auth="true">
        <description>Process the payment credit result(s)</description>
        <attribute name="orderPaymentPreference" type="org.apache.ofbiz.entity.GenericValue" mode="IN" optional="false"/>
        <attribute name="creditAmount" type="BigDecimal" mode="IN" optional="false"/>
        <attribute name="currencyUomId" type="String" mode="IN" optional="true"/>
        <attribute name="creditResult" type="Boolean" mode="IN" optional="false"/>
        <attribute name="creditAltRefNum" type="String" mode="IN" optional="true"/>
        <attribute name="creditRefNum" type="String" mode="IN" optional="false"/>
        <attribute name="creditCode" type="String" mode="IN" optional="true"/>
        <attribute name="creditFlag" type="String" mode="IN" optional="true"/>
        <attribute name="creditMessage" type="String" mode="IN" optional="true"/>
        <attribute name="internalRespMsgs" type="List" mode="IN" optional="true"/>
    </service>
    
    <service name="processRefundResult" engine="java"
            location="org.apache.ofbiz.accounting.payment.PaymentGatewayServices" invoke="processRefundResult" auth="true">
        <description>Process the payment refund result(s)</description>
        <attribute name="orderPaymentPreference" type="org.apache.ofbiz.entity.GenericValue" mode="IN" optional="false"/>
        <attribute name="serviceTypeEnum" type="String" mode="IN" optional="true"/>
        <attribute name="payFromPartyId" type="String" mode="IN" optional="true"/>
        <attribute name="payToPartyId" type="String" mode="IN" optional="true"/>
        <attribute name="invoiceId" type="String" mode="IN" optional="true"/>
        <attribute name="refundAmount" type="BigDecimal" mode="INOUT" optional="false"/>
        <attribute name="currencyUomId" type="String" mode="IN" optional="true"/>
        <attribute name="refundResult" type="Boolean" mode="IN" optional="false"/>
        <attribute name="refundAltRefNum" type="String" mode="IN" optional="true"/>
        <attribute name="refundRefNum" type="String" mode="IN" optional="false"/>
        <attribute name="refundCode" type="String" mode="IN" optional="true"/>
        <attribute name="refundFlag" type="String" mode="IN" optional="true"/>
        <attribute name="refundMessage" type="String" mode="IN" optional="true"/>
        <attribute name="internalRespMsgs" type="List" mode="IN" optional="true"/>
        <attribute name="paymentId" type="String" mode="OUT" optional="true"/>
    </service>
    
    <service name="processPaymentServiceError" engine="java" require-new-transaction="true" max-retry="5"
            location="org.apache.ofbiz.accounting.payment.PaymentGatewayServices" invoke="storePaymentErrorMessage" auth="true">
        <description>Process (store) error messages from payment service failures</description>
        <attribute name="paymentServiceTypeEnumId" type="String" mode="IN" optional="false"/>
        <attribute name="orderPaymentPreference" type="org.apache.ofbiz.entity.GenericValue" mode="IN" optional="false"/>
        <attribute name="transCodeEnumId" type="String" mode="IN" optional="false"/>
        <attribute name="serviceResultMap" type="Map" mode="IN" optional="false"/>
    </service>

    <service name="savePaymentGatewayResponse" engine="java"
            location="org.apache.ofbiz.accounting.payment.PaymentGatewayServices" invoke="savePaymentGatewayResponse" auth="false">
        <description>Method to make sure PaymentGatewayResponse records get stored (uses XA wrapper on rollback)</description>
        <attribute name="paymentGatewayResponse" type="org.apache.ofbiz.entity.GenericValue" mode="IN" optional="false"/>
    </service>

    <service name="savePaymentGatewayResponseAndMessages" engine="java"
            location="org.apache.ofbiz.accounting.payment.PaymentGatewayServices" invoke="savePaymentGatewayResponseAndMessages" auth="false">
        <description>Method to make sure PaymentGatewayResponse records get stored (uses XA wrapper on rollback)</description>
        <attribute name="paymentGatewayResponse" type="org.apache.ofbiz.entity.GenericValue" mode="IN" optional="false"/>
        <attribute name="messages" type="List" mode="IN" optional="false"/>
    </service>

    <!-- Payment Gateway Interfaces -->
    <service name="paymentProcessInterface" engine="interface" location="" invoke="">
        <description>Generic Payment Processing Interface</description>
        <attribute name="orderId" type="String" mode="IN" optional="false"/>
        <attribute name="orderPaymentPreference" type="org.apache.ofbiz.entity.GenericValue" mode="IN" optional="false"/>
        <attribute name="processAmount" type="BigDecimal" mode="INOUT" optional="false"/>
        <attribute name="orderItems" type="List" mode="IN" optional="false"/>
        <attribute name="billToParty" type="org.apache.ofbiz.entity.GenericValue" mode="IN" optional="false"/>
        <attribute name="billToEmail" type="org.apache.ofbiz.entity.GenericValue" mode="IN" optional="true"/>
        <attribute name="billingAddress" type="org.apache.ofbiz.entity.GenericValue" mode="IN" optional="true"/>
        <attribute name="shippingAddress" type="org.apache.ofbiz.entity.GenericValue" mode="IN" optional="true"/>
        <attribute name="customerIpAddress" type="String" mode="IN" optional="true"/>
        <attribute name="currency" type="String" mode="IN" optional="true"/>
        <attribute name="paymentConfig" type="String" mode="IN" optional="true"/>
        <attribute name="paymentGatewayConfigId" type="String" mode="IN" optional="true"/>
        <attribute name="authResult" type="Boolean" mode="OUT" optional="true"/>
        <attribute name="captureResult" type="Boolean" mode="OUT" optional="true"/>
        <attribute name="resultDeclined" type="Boolean" mode="OUT" optional="true"/>
        <attribute name="resultNsf" type="Boolean" mode="OUT" optional="true"/>
        <attribute name="resultBadExpire" type="Boolean" mode="OUT" optional="true"/>
        <attribute name="resultBadCardNumber" type="Boolean" mode="OUT" optional="true"/>
        <attribute name="authCode" type="String" mode="OUT" optional="true"/>
        <attribute name="authAltRefNum" type="String" mode="OUT" optional="true"/>
        <attribute name="authRefNum" type="String" mode="OUT" optional="false"/>
        <attribute name="authFlag" type="String" mode="OUT" optional="true"/>
        <attribute name="authMessage" type="String" mode="OUT" optional="true"/>
        <attribute name="cvCode" type="String" mode="OUT" optional="true"/>
        <attribute name="avsCode" type="String" mode="OUT" optional="true"/>
        <attribute name="scoreCode" type="String" mode="OUT" optional="true"/>
        <attribute name="captureAltRefNum" type="String" mode="OUT" optional="true"/>
        <attribute name="captureRefNum" type="String" mode="OUT" optional="true"/>
        <attribute name="captureCode" type="String" mode="OUT" optional="true"/>
        <attribute name="captureFlag" type="String" mode="OUT" optional="true"/>
        <attribute name="captureMessage" type="String" mode="OUT" optional="true"/>
        <attribute name="internalRespMsgs" type="List" mode="OUT" optional="true"/>
        <attribute name="customerRespMsgs" type="List" mode="OUT" optional="true"/>
    </service>

    <service name="paymentReleaseInterface" engine="interface" location="" invoke="">
        <description>Generic Payment Release (reverse) Interface</description>
        <attribute name="orderPaymentPreference" type="org.apache.ofbiz.entity.GenericValue" mode="IN" optional="false"/>
        <attribute name="releaseAmount" type="BigDecimal" mode="INOUT" optional="false"/>
        <attribute name="currency" type="String" mode="IN" optional="true"/>
        <attribute name="paymentConfig" type="String" mode="IN" optional="true"/>
        <attribute name="authTrans" type="org.apache.ofbiz.entity.GenericValue" mode="IN" optional="true"/>
        <attribute name="paymentGatewayConfigId" type="String" mode="IN" optional="true"/>
        <attribute name="releaseResult" type="Boolean" mode="OUT" optional="true"/>
        <attribute name="releaseAltRefNum" type="String" mode="OUT" optional="true"/>
        <attribute name="releaseRefNum" type="String" mode="OUT" optional="false"/>
        <attribute name="releaseCode" type="String" mode="OUT" optional="true"/>
        <attribute name="releaseFlag" type="String" mode="OUT" optional="true"/>
        <attribute name="releaseMessage" type="String" mode="OUT" optional="true"/>
        <attribute name="internalRespMsgs" type="List" mode="OUT" optional="true"/>
    </service>

    <service name="paymentCreditInterface" engine="interface" location="" invoke="">
        <description>Generic Payment Credit Interface</description>
        <attribute name="referenceCode" type="String" mode="IN" optional="false"/>
        <attribute name="creditAmount" type="BigDecimal" mode="INOUT" optional="false"/>
        <attribute name="orderItems" type="List" mode="IN" optional="true"/>
        <attribute name="billToParty" type="org.apache.ofbiz.entity.GenericValue" mode="IN" optional="false"/>
        <attribute name="billToEmail" type="org.apache.ofbiz.entity.GenericValue" mode="IN" optional="true"/>
        <attribute name="billingAddress" type="org.apache.ofbiz.entity.GenericValue" mode="IN" optional="true"/>
        <attribute name="currency" type="String" mode="IN" optional="true"/>
        <attribute name="paymentConfig" type="String" mode="IN" optional="true"/>
        <attribute name="paymentGatewayConfigId" type="String" mode="IN" optional="true"/>
        <attribute name="creditResult" type="Boolean" mode="OUT" optional="false"/>
        <attribute name="creditAltRefNum" type="String" mode="OUT" optional="true"/>
        <attribute name="creditRefNum" type="String" mode="OUT" optional="false"/>
        <attribute name="creditCode" type="String" mode="OUT" optional="true"/>
        <attribute name="creditFlag" type="String" mode="OUT" optional="true"/>
        <attribute name="creditMessage" type="String" mode="OUT" optional="true"/>
        <attribute name="internalRespMsgs" type="List" mode="OUT" optional="true"/>
    </service>

    <service name="paymentRefundInterface" engine="interface" location="" invoke="">
        <description>Generic Payment Refund Interface</description>
        <attribute name="orderPaymentPreference" type="org.apache.ofbiz.entity.GenericValue" mode="IN" optional="false"/>
        <attribute name="refundAmount" type="BigDecimal" mode="INOUT" optional="false"/>
        <attribute name="currency" type="String" mode="IN" optional="true"/>
        <attribute name="paymentConfig" type="String" mode="IN" optional="true"/>
        <attribute name="paymentGatewayConfigId" type="String" mode="IN" optional="true"/>
        <attribute name="refundResult" type="Boolean" mode="OUT" optional="false"/>
        <attribute name="refundAltRefNum" type="String" mode="OUT" optional="true"/>
        <attribute name="refundRefNum" type="String" mode="OUT" optional="false"/>
        <attribute name="refundCode" type="String" mode="OUT" optional="true"/>
        <attribute name="refundFlag" type="String" mode="OUT" optional="true"/>
        <attribute name="refundMessage" type="String" mode="OUT" optional="true"/>
        <attribute name="internalRespMsgs" type="List" mode="OUT" optional="true"/>
    </service>

    <!-- Credit Card Interfaces -->
    <service name="ccAuthInterface" engine="interface" location="" invoke="">
        <description>Credit Card Authorization Interface</description>
        <implements service="paymentProcessInterface"/>
        <attribute name="creditCard" type="org.apache.ofbiz.entity.GenericValue" mode="IN" optional="false"/>
        <attribute name="cardSecurityCode" type="String" mode="IN" optional="true"/>
    </service>

    <service name="ccCaptureInterface" engine="interface" location="" invoke="">
        <description>Credit Card Capture Interface</description>
        <attribute name="orderPaymentPreference" type="org.apache.ofbiz.entity.GenericValue" mode="IN" optional="false"/>
        <attribute name="captureAmount" type="BigDecimal" mode="INOUT" optional="false"/>
        <attribute name="currency" type="String" mode="IN" optional="true"/>
        <attribute name="paymentConfig" type="String" mode="IN" optional="true"/>
        <attribute name="authTrans" type="org.apache.ofbiz.entity.GenericValue" mode="IN" optional="true"/>
        <attribute name="paymentGatewayConfigId" type="String" mode="IN" optional="true"/>
        <attribute name="captureResult" type="Boolean" mode="OUT" optional="true"/>
        <attribute name="captureAltRefNum" type="String" mode="OUT" optional="true"/>
        <attribute name="captureRefNum" type="String" mode="OUT" optional="false"/>
        <attribute name="captureCode" type="String" mode="OUT" optional="true"/>
        <attribute name="captureFlag" type="String" mode="OUT" optional="true"/>
        <attribute name="captureMessage" type="String" mode="OUT" optional="true"/>
        <attribute name="internalRespMsgs" type="List" mode="OUT" optional="true"/>
    </service>

    <service name="ccCreditInterface" engine="interface" location="" invoke="">
        <description>Credit Card 'Credit' Inteface</description>
        <implements service="paymentCreditInterface"/>
        <attribute name="creditCard" type="org.apache.ofbiz.entity.GenericValue" mode="IN" optional="false"/>
        <attribute name="cardSecurityCode" type="String" mode="IN" optional="true"/>
    </service>

    <!-- EFT Account Interfaces -->
    <service name="eftProcessInterface" engine="interface" location="" invoke="">
        <description>EFT Account Processing Interface</description>
        <implements service="paymentProcessInterface"/>
        <attribute name="eftAccount" type="org.apache.ofbiz.entity.GenericValue" mode="IN" optional="false"/>
    </service>

    <!-- PayPal Payment Interfaces -->
    <service name="payPalProcessInterface" engine="interface" location="" invoke="">
        <description>PayPal authorize Interface</description>
        <implements service="paymentProcessInterface"/>
        <attribute name="payPalPaymentMethod" type="org.apache.ofbiz.entity.GenericValue" mode="IN" optional="false"/>
    </service>
    <service name="payPalCaptureInterface" engine="interface" location="" invoke="">
        <description>PayPal Capture Interface</description>
        <attribute name="orderPaymentPreference" type="org.apache.ofbiz.entity.GenericValue" mode="IN" optional="false"/>
        <attribute name="captureAmount" type="BigDecimal" mode="INOUT" optional="false"/>
        <attribute name="currency" type="String" mode="IN" optional="true"/>
        <attribute name="paymentConfig" type="String" mode="IN" optional="true"/>
        <attribute name="authTrans" type="org.apache.ofbiz.entity.GenericValue" mode="IN" optional="true"/>
        <attribute name="paymentGatewayConfigId" type="String" mode="IN" optional="true"/>
        <attribute name="captureResult" type="Boolean" mode="OUT" optional="true"/>
        <attribute name="captureAltRefNum" type="String" mode="OUT" optional="true"/>
        <attribute name="captureRefNum" type="String" mode="OUT" optional="false"/>
        <attribute name="captureCode" type="String" mode="OUT" optional="true"/>
        <attribute name="captureFlag" type="String" mode="OUT" optional="true"/>
        <attribute name="captureMessage" type="String" mode="OUT" optional="true"/>
        <attribute name="internalRespMsgs" type="List" mode="OUT" optional="true"/>
    </service>
    <service name="payPalSetExpressCheckoutInterface" engine="interface" location="" invoke="">
        <description>Interface for services performing the PayPal getExpressCheckout operation</description>
        <attribute name="cart" mode="IN" type="org.apache.ofbiz.order.shoppingcart.ShoppingCart" optional="false"></attribute>
    </service>
    <service name="payPalGetExpressCheckoutInterface" engine="interface" location="" invoke="">
        <description>Interface for services performing the PayPal getExpressCheckoutDetails operation</description>
        <attribute name="cart" mode="IN" type="org.apache.ofbiz.order.shoppingcart.ShoppingCart" optional="false"></attribute>
    </service>
    <service name="payPalDoExpressCheckoutInterface" engine="interface" location="" invoke="">
        <description>Interface for services performing the PayPal doExpressCheckout operation</description>
        <attribute name="orderPaymentPreference" mode="IN" type="GenericValue" optional="false"></attribute>
    </service>

    <!-- Gift Card Interfaces -->
    <service name="giftCardProcessInterface" engine="interface" location="" invoke="">
        <description>Gift Card Processing Interface</description>
        <implements service="paymentProcessInterface"/>
        <attribute name="giftCard" type="org.apache.ofbiz.entity.GenericValue" mode="IN" optional="false"/>
    </service>

    <!-- Test Implementations -->
    <!-- Test Credit Card (CC) Requests -->
    <service name="testCCProcessor" engine="java"
            location="org.apache.ofbiz.accounting.payment.PaymentGatewayServices" invoke="testProcessor">
        <description>Test Credit Card Auth Processing: declines auth requests for all orders less than 100.00; approves auth requests for all orders greater than or equal to 100.00</description>
        <implements service="ccAuthInterface"/>
    </service>
    <service name="testCCProcessorWithCapture" engine="java"
            location="org.apache.ofbiz.accounting.payment.PaymentGatewayServices" invoke="testProcessorWithCapture">
        <description>Test Credit Card Auth Processing: declines auth requests for all orders less than 100.00; approves auth requests for all orders greater than or equal to 100.00</description>
        <implements service="ccAuthInterface"/>
    </service>
    <service name="testRandomAuthorize" engine="java"
            location="org.apache.ofbiz.accounting.payment.PaymentGatewayServices" invoke="testRandomAuthorize">
        <description>Test Credit Card Auth Processing: does random auth declines</description>
        <implements service="ccAuthInterface"/>
    </service>
    <service name="alwaysApproveCCProcessor" engine="java"
             location="org.apache.ofbiz.accounting.payment.PaymentGatewayServices" invoke="alwaysApproveProcessor">
        <description>Test Credit Card Auth Processing: always approve the auth request</description>
        <implements service="ccAuthInterface"/>
    </service>
    <service name="alwaysApproveWithCaptureCCProcessor" engine="java"
             location="org.apache.ofbiz.accounting.payment.PaymentGatewayServices" invoke="alwaysApproveWithCapture">
        <description>Test Credit Card Auth Processing: always approve with capture auth request</description>
        <implements service="ccAuthInterface"/>
    </service>
    <service name="alwaysDeclineCCProcessor" engine="java"
            location="org.apache.ofbiz.accounting.payment.PaymentGatewayServices" invoke="alwaysDeclineProcessor">
        <description>Test Credit Card Auth Processing: always decline the auth request</description>
        <implements service="ccAuthInterface"/>
    </service>
    <service name="alwaysNsfCCProcessor" engine="java"
        location="org.apache.ofbiz.accounting.payment.PaymentGatewayServices" invoke="alwaysNsfProcessor">
        <description>Test Credit Card Auth Processing: always decline for NSF (not sufficient funds) auth request</description>
        <implements service="ccAuthInterface"/>
    </service>
    <service name="alwaysBadExpireCCProcessor" engine="java"
        location="org.apache.ofbiz.accounting.payment.PaymentGatewayServices" invoke="alwaysBadExpireProcessor">
        <description>Test Credit Card Auth Processing: always fail/bad expire date processor</description>
        <implements service="ccAuthInterface"/>
    </service>
    <service name="badExpireEvenCCProcessor" engine="java"
        location="org.apache.ofbiz.accounting.payment.PaymentGatewayServices" invoke="badExpireEvenProcessor">
        <description>Test Credit Card Auth Processing: fail/bad expire date when year is even processor</description>
        <implements service="ccAuthInterface"/>
    </service>
    <service name="alwaysBadCardNumberCCProcessor" engine="java"
        location="org.apache.ofbiz.accounting.payment.PaymentGatewayServices" invoke="alwaysBadCardNumberProcessor">
        <description>Test Credit Card Auth Processing: always decline the auth request for bad card number</description>
        <implements service="ccAuthInterface"/>
    </service>
    <service name="alwaysFailCCProcessor" engine="java"
            location="org.apache.ofbiz.accounting.payment.PaymentGatewayServices" invoke="alwaysFailProcessor">
        <description>Test Credit Card Auth Processing: always fail (error) the auth transaction request</description>
        <implements service="ccAuthInterface"/>
    </service>

    <service name="testCCCapture" engine="java"
            location="org.apache.ofbiz.accounting.payment.PaymentGatewayServices" invoke="testCapture">
        <description>Test Credit Card Capture Processing: always approve the capture request</description>
        <implements service="ccCaptureInterface"/>
    </service>
    <service name="testCCCaptureWithReAuth" engine="java"
            location="org.apache.ofbiz.accounting.payment.PaymentGatewayServices" invoke="testCaptureWithReAuth">
        <description>Test Credit Card Capture Processing: always approve with reauth the capture request</description>
        <implements service="ccCaptureInterface"/>
    </service>
    <service name="testCCProcessorCaptureAlwaysDecline" engine="java"
            location="org.apache.ofbiz.accounting.payment.PaymentGatewayServices" invoke="testCCProcessorCaptureAlwaysDecline">
        <description>Test Credit Card Capture Processing: always decline a cc capture request</description>
        <implements service="ccCaptureInterface"/>
    </service>
    <service name="testCCRelease" engine="java"
            location="org.apache.ofbiz.accounting.payment.PaymentGatewayServices" invoke="testRelease">
        <description>Test Credit Card Release Processing: always approve the release request</description>
        <implements service="paymentReleaseInterface"/>
    </service>
    <service name="testCCRefund" engine="java"
            location="org.apache.ofbiz.accounting.payment.PaymentGatewayServices" invoke="testRefund">
        <description>Test Credit Card Refund Processing: always approve the refund request</description>
        <implements service="paymentRefundInterface"/>
    </service>
    <service name="testCCRefundFailure" engine="java"
            location="org.apache.ofbiz.accounting.payment.PaymentGatewayServices" invoke="testRefundFailure">
        <description>Credit Card Test Refund Failure</description>
        <implements service="paymentRefundInterface"/>
    </service>

    <!-- Test GiftCard Services -->
    <service name="alwaysApproveGCProcessor" engine="java"
             location="org.apache.ofbiz.accounting.payment.PaymentGatewayServices" invoke="alwaysApproveWithCapture">
        <description>Gift Card Processing</description>
        <implements service="giftCardProcessInterface"/>
    </service>
    <service name="alwaysDeclineGCProcessor" engine="java"
            location="org.apache.ofbiz.accounting.payment.PaymentGatewayServices" invoke="alwaysDeclineProcessor">
        <description>Gift Card Processing</description>
        <implements service="giftCardProcessInterface"/>
    </service>
    <service name="testGCRelease" engine="java"
            location="org.apache.ofbiz.accounting.payment.PaymentGatewayServices" invoke="testRelease">
        <description>Gift Card Test Release</description>
        <implements service="paymentReleaseInterface"/>
    </service>

    <!-- Test EFT Implementations -->
    <service name="testEFTProcessor" engine="java"
            location="org.apache.ofbiz.accounting.payment.PaymentGatewayServices" invoke="testProcessor">
        <description>EFT Account Processing</description>
        <implements service="eftProcessInterface"/>
    </service>
    <service name="alwaysApproveEFTProcessor" engine="java"
             location="org.apache.ofbiz.accounting.payment.PaymentGatewayServices" invoke="alwaysApproveProcessor">
        <description>EFT Account Processing</description>
        <implements service="eftProcessInterface"/>
    </service>
    <service name="alwaysDeclineEFTProcessor" engine="java"
            location="org.apache.ofbiz.accounting.payment.PaymentGatewayServices" invoke="alwaysDeclineProcessor">
        <description>EFT Account Processing</description>
        <implements service="eftProcessInterface"/>
    </service>
    <service name="testEFTRelease" engine="java"
            location="org.apache.ofbiz.accounting.payment.PaymentGatewayServices" invoke="testRelease">
        <description>EFT Account Test Release</description>
        <implements service="paymentReleaseInterface"/>
    </service>

    <!-- Verify Credit Card Service-->
    <service name="verifyCreditCard" engine="java"
            location="org.apache.ofbiz.accounting.payment.PaymentGatewayServices" invoke="verifyCreditCard" auth="true">
        <attribute name="paymentMethodId" type="String" mode="IN" optional="false"/>
        <attribute name="oldPaymentMethodId" type="String" mode="IN" optional="true"/>
        <attribute name="productStoreId" type="String" mode="IN" optional="true"/>
        <attribute name="mode" type="String" mode="IN" optional="false"/>
    </service>

    <!-- CreditCardTypeGlAccount Services -->
    <service name="createCreditCardTypeGlAccount" default-entity-name="CreditCardTypeGlAccount" engine="entity-auto" invoke="create" auth="true">
        <description>create a Credit Card Gl Account</description>
        <auto-attributes include="pk" mode="IN" optional="false"/>
        <auto-attributes include="nonpk" mode="IN" optional="false"/>
    </service>
    <service name="updateCreditCardTypeGlAccount" default-entity-name="CreditCardTypeGlAccount" engine="entity-auto" invoke="update" auth="true">
        <description>Update a Credit Card Gl Account </description>
        <auto-attributes include="pk" mode="IN" optional="false"/>
        <auto-attributes include="nonpk" mode="IN" optional="false"/>
    </service>
    <service name="deleteCreditCardTypeGlAccount" default-entity-name="CreditCardTypeGlAccount" engine="entity-auto" invoke="delete" auth="true">
        <description>delete a Credit Card Gl Account</description>
        <auto-attributes include="pk" mode="IN" optional="false"/>
    </service>

    <!-- PaymentMethodType -->
    <service name="createPaymentMethodType" engine="entity-auto" default-entity-name="PaymentMethodType" invoke="create" auth="true">
        <description>Create a PaymentMethodType record</description>
        <auto-attributes include="pk" mode="INOUT" optional="true"/>
        <auto-attributes include="nonpk" mode="IN" optional="true"/>
    </service>
    <service name="updatePaymentMethodType" default-entity-name="PaymentMethodType" engine="entity-auto" invoke="update" auth="true">
        <description>Update a Payment Method Type</description>
        <auto-attributes include="pk" mode="IN" optional="false"/>
        <auto-attributes include="nonpk" mode="IN" optional="true"/>
    </service>
    <service name="deletePaymentMethodType" default-entity-name="PaymentMethodType" engine="entity-auto" invoke="delete" auth="true">
        <description>Delete a PaymentMethodType record</description>
        <auto-attributes include="pk" mode="IN"/>
    </service>

    <!-- Payment Group -->
    <service name="createPaymentGroup" default-entity-name="PaymentGroup" engine="entity-auto" invoke="create" auth="true">
        <description>Create a Payment Group</description>
        <auto-attributes include="pk" mode="OUT" optional="false"/>
        <auto-attributes include="nonpk" mode="IN" optional="true"/>
        <override name="paymentGroupTypeId" optional="false"/>
        <override name="paymentGroupName" optional="false"/>
    </service>
    <service name="updatePaymentGroup" default-entity-name="PaymentGroup" engine="entity-auto" invoke="update" auth="true">
        <description>Update a Payment Group</description>
        <auto-attributes include="pk" mode="IN" optional="false"/>
        <auto-attributes include="nonpk" mode="IN" optional="true"/>
    </service>
    <service name="deletePaymentGroup" default-entity-name="PaymentGroup" engine="entity-auto" invoke="delete" auth="true">
        <description>Delete a Payment Group</description>
        <auto-attributes include="pk" mode="IN" optional="false"/>
    </service>
    
    <!-- Payment Group Member -->
    <service name="createPaymentGroupMember" default-entity-name="PaymentGroupMember" engine="simple"
            location="component://accounting/minilang/payment/PaymentMethodServices.xml" invoke="createPaymentGroupMember" auth="true">
        <description>Check For Outgoing/Incoming Payment And Create Payment Group Member</description>
        <auto-attributes include="pk" mode="IN" optional="false"/>
        <auto-attributes include="nonpk" mode="IN" optional="true"/>
        <override name="fromDate" optional="true"/>
    </service>
    <service name="updatePaymentGroupMember" default-entity-name="PaymentGroupMember" engine="entity-auto" invoke="update" auth="true">
        <description>Update a Payment Group Member</description>
        <auto-attributes include="pk" mode="IN" optional="false"/>
        <auto-attributes include="nonpk" mode="IN" optional="true"/>
    </service>
    <service name="deletePaymentGroupMember" default-entity-name="PaymentGroupMember" engine="entity-auto" invoke="delete" auth="true">
        <description>Delete a Payment Group Member</description>
        <auto-attributes include="pk" mode="IN" optional="false"/>
    </service>
    <service name="expirePaymentGroupMember" default-entity-name="PaymentGroupMember" engine="simple"
            location="component://accounting/minilang/payment/PaymentMethodServices.xml" invoke="expirePaymentGroupMember" auth="true">
        <description>expire a Payment Group Member</description>
        <auto-attributes include="pk" mode="IN" optional="false"/>
    </service>
</services>
