Flywire now has the ability to post payment in real time in Cerner and Epic. This document covers the approach of dealing with exceptions. When payments can not be posted using the API, an exception will be reflected in posting files and reports.
Cerner:
- Millennium and Comm Works only. Soarian, Revelate still via files.
- Payment API can be used for all payment events - One-time payment, Payment Plan, Voids and Refunds.
- Payments API can be used for tender type- Credit card, echeck, manual check, cash. Paypal not in scope currently.
- For clients using API we cannot send exceptions via files.
Epic:
- Payments API can only be used for payment events- One-time payment and payment plans.
- Voids, Refunds will be sent via daily files.
- Payments API can be used for tender type- Credit card, echeck, manual check, cash, Paypal.
Here is the information you will need to know about those exceptions, based on EHR.
Oracle Cerner:
When the API is in scope, payments and refund transactions will be posted through the API. When posting the payment, there will be one of five outcomes:
| Status | Meaning |
| Success | Payment posted successfully in the source system and will have a posting status of ‘Success’ on back office reports. |
| Retry | Payment posting request timed out through the API, and is marked with posting status of ‘Retry’ on back office reports. |
| Failure | Payment posting request received an error response from Cerner. If the error code is 401, 429, or 5xx, it will be marked as "Retry". The system will attempt to re-post the transaction in the retry window else it is marked as Failure. |
| Not Applicable |
An issue was found with Flywire’s reconciliation service. Please allow for the 48 hour retry window to pass before manually posting the transaction.
|
| will_not_be_sent | This represents a transaction taken through the Manual Payments workflow and will not be sent via the API to Cerner Patient Accounting. |
For transactions that do not post initially, the service will run every 6 hours to keep trying to post transactions in Retry status. This service will also mark any transactions with Failure status if it has been in retry status for more than 24 hours.
Common Error Codes
| Error Code | Error Text | Next Steps |
| 400 | Invalid Request | Manually post payment |
| 401 | Unauthorized | Manually post payment |
| 403 | Forbidden | Manually post payment |
| 404 | bo_hp_reltn_id is missing | Manually post payment and log support ticket with Oracle to investigate missing database values. |
| 422 | Unprocessable Entity | Manually post payment |
| 429 | Too Many Requests | Payment posting request will continue to post payment within the 2 day retry time frame. If the transaction still shows as ‘Failure’ on payments detailed report, it will require manual posting. |
| 500, 501, 504, 529 | Gateway Time-out | Payment posting request will continue to post payment within the 2 day retry time frame. If the transaction still shows as ‘Failure’ on payments detailed report, it will require manual posting. |
Epic:
When the API is in scope, payments and refund transactions will be posted through the API. When posting the payment, there will be one of two outcomes:
| Status | Meaning |
| Success | Payment posted successfully in the source system and will have a posting status of ‘Success’ on back office reports. |
| Retry | Payment posting request timed out through the API, and is marked with posting status of ‘Retry’ on back office reports. |
For transactions that do not post initially, the service will run every 6 hours to keep trying to post transactions in Retry status. This service will also mark any transactions with Failure status if it has been in retry status for more than 24 hours.
Any transactions that remain in ‘Failure status’ will be sent to the client in the daily reconciliation file. The daily reconciliation file would include failed transactions of all types: payments, refunds, manual payments, & voids.
An email from support will serve as the notification of payments with a status of ‘Failure.’ In order to easily identify and manually post failed payments, Flywire has made updates to the Payments Detail report.
Watch the video below for step by step instructions to run the report: