Cash Matching
Automated Cash Processing
If you have selected the Enable Automated Cash Processing field in the Unaric Settings custom setting, then a cash entry will be automatically created to represent the payment. This is matched to the associated sales invoice or billing document. The automated cash matching process is triggered once Unaric has updated the stage of the payment to “Collected from Customer” to indicate payment has been received.
Automated cash processing occurs simultaneously for card and other payments that are collected immediately by Unaric. Because multiple payments are processed at the same time, this typically takes less time than when payments are processed consecutively as described below.
If an error occurs during the cash entry and cash matching process, then a payment worker is created with an error log with details of the error.
After you have corrected the error:
- Click the Payment Workers tab to display the Payment Workers homepage.
- Locate the payment worker.
- Click Process Payment.
Once a payment worker item has been successfully processed, it is deleted.
You must schedule the Payment Processing Apex job even if you have selected the Enable Automated Cash Processing field. Payment workers are still created in some circumstances when automated cash processing is in use, and the Payment Processing Apex job is what processes them. If this job is not scheduled, these payment workers remain unprocessed until you process them manually. For more information, see Setting up Scheduled Jobs.
In some circumstances the cash entries are created and matched by a scheduled batch. This is an asynchronous process that can take longer to complete.
Asynchronous processing occurs when any of the following conditions apply:
- Unaric updates the payments to "collected from customer" in bulk.
- Several payment workers are processed at the same time. For example, after correcting payment errors.
- The Enable Automated Cash Processing field in the Unaric Settings is deselected. For more information, see Non-Automated Cash Processing.
Each payment that reaches the "Collected from Customer" stage starts its own cash processing batch. Salesforce runs only one batch of a given type at a time, so if a payment reaches this stage while the batch for an earlier payment is still running, the later batch cannot start. A payment worker is created for each payment affected in this way, and the Payment Processing Apex job creates and matches the cash entry on its next scheduled run. This is why a batch of authorized payments collected together can produce payment workers even though each payment is processed individually.
When a batch cannot start for this reason, the Apex job fails with an error. This is expected, and no payments are lost because a payment worker is created for each affected payment.
When cash entries are created and matched by a scheduled process there might be a delay in updating the customer's account. This depends on how often the Payment Processing Apex job is run and at what time. For example, if you run the scheduled Payment Processing Apex job at midnight, the cash entry might not be created until the next day. In this situation, the date of the cash entry would differ from the date on which the payment was made. Any associated cash matching histories and cash matching journals will use the cash entry date.
Non-Automated Cash Processing
If you have deselected the Enable Automated Cash Processing field in the Unaric Settings custom setting, then cash entries are not automatically created and matched for your payments. Instead, a payment worker is created for each payment. This can be used to create and match the cash entries at a later time.
The following options can be used to create and match the cash entries:
- Run the FFASPPaymentScheduler scheduled job to process all available payment workers.
- Manually process an individual payment worker.
- Create a custom process.
To manually process a payment worker:
- Click the Payment Workers tab to display the Payment Workers homepage.
- Locate the payment worker you want to manually process.
- Click Process Payment.
SECTIONS