Administration Guide for Oracle Self-Service E-Billing > Configuring Jobs > Payment Job Types >

Configuring a pmtCreditCardSubmit Job


The pmtCreditCardSubmit job selects credit card payments that are scheduled to be paid within a configurable number of days before today, and opens a connection to a credit card payment gateway to authorize and settle those transactions. Both authorization and payment are done at the same time.

The pmtCreditCardSubmit job submits credit cards to a credit card gateway to be processed. It searches the creditcard_payments table to find all scheduled credit card payments whose status field is scheduled (6) and whose pay_date field has a date the same as or prior to one day after the day the job is running (by default), and sends them the credit card gateway for processing.

Credit card account information is saved by the Payment module as part of the payment when the payment is scheduled. Whether this copy of the account information is used for submission depends on the contents of the PID field:

  • When PID is not null, the saved account information is used to extract the latest credit card account information from the enrollment database, and the extracted account information is used for submission. Using the account information from the enrolled database eliminates any potential problems related to changing or deleting a credit card account after the payment is scheduled. The Cancel Payment if Credit Card Account has Expired parameter determines which action to take with scheduled payments when the credit card account is changed.
  • When the PID is null, the saved copy of the credit card account is used. Using the saved copy of the credit card account is useful when the PID cannot be found in enrollment database, such as when a customer database offers payment account information but does not have a unique PID.

If pmtCreditCardSubmit is successful submitting the credit card payment, the payment is approved, money is guaranteed to be transferred, and the status of the payment is set to settled (8). If there is a problem submitting the payment, its status is set to failed-authorize (-4).

The Payment module supports the PayPal Payflow Pro and uses HTTP to communicate with it. If there is a network problem, the status of the payment stays scheduled, but the payment txn_err_msg field gets the error message, ensuring that the payment will be picked up by the next run of the pmtCreditCardSubmit job. If the payment is successful, the Payment module stores the confirmation number from PayPal Payflow Pro in the txn_number field of the creditcard_payments table.

Table 30 describes the columns in the CHECK_PAYMENTS table updated after a credit card is submitted.

Table 30. Columns Updated in the CHECK_PAYMENTS Table After a Credit Card is Submitted
Column
Description

last_modify_time

Current submit time.

reminded

Set to N if the status is Settled or Failed-authorize.

status

Set to Settled if the payment is accepted by card issuer. Set to Failed-authorize if the payment is rejected or returned as referral by card issuer. Stays Scheduled if there is a network error.

log_id

Contains the value in payment_log, which represents a report ID.

Parameters for Configuring the CreditCardSubmitTask

The configuration parameters for the CreditCardSubmitTask task are:

Table 31 describes the configuration parameters for the CreditCardSubmitTask.

Table 31. Parameters for Configuring the CreditCardSubmit Task
Parameter
What to Enter or Select

Number of Days Before a Credit Card's Pay Date for it to be Submitted

When a credit card payment is scheduled, a date must be specified when the credit card payment must be settled. By default, a credit card payment will not be submitted to a payment gateway until one day before the scheduled pay date. The submission date can be changed by specifying a different value.

Modifying this field might require modifications to the JSP that checks for valid entries when a customer schedules a payment.

Cancel Payment if Credit Card Account has Expired?

If the credit card account used in a payment has expired, then cancel the payment (Y or N). If you specify N, the task tries to make the payment using the old account. (If the task fails to make the payment using the old account, the pmtPaymentReminder job sends email to the customer, if configured.)

Using PayPal Payflow Pro Threads

To speed up credit card processing, you can use simultaneous connections (threads) with PayPal Payflow Pro. By default, the Number of Threads field in the Payment Settings is 1, but you can enter a larger number to speed processing.

However, there is a bug with the PayPal Payflow Pro SDK, which causes a connection failure when the number of threads is too high. Connection failures can be significantly reduced by using multiple copies of the PayPal Payflow Pro certificates. By default, there is only one certificate.

Connection failures caused by the PayPal Payflow Pro bug are not fatal. The Payment module recognizes the failure and keeps the payment's status as scheduled so that the failed payments process the next time the pmtCreditCardSubmit job runs. If you increase the number of threads and find there are failures, schedule your job run twice, back to back.

Administration Guide for Oracle Self-Service E-Billing Copyright © 2011, Oracle and/or its affiliates. All rights reserved. Legal Notices.