Org switches and error messages
Two org-wide switches live in a custom metadata type called REDA Pay Setup. One of them decides how much technical detail REDA Pay puts into the error messages people see, and it ships in the mode meant for setup, not for customers. This article explains both switches, then lists the messages REDA Pay shows and what to do about each.
The switches
Open Setup → Custom Metadata Types → REDA Pay Setup → Manage Records. Each record has a Key, a Value and a Description. Change only the Value, to TRUE or FALSE.
| Key | Shipped value | What it does | Recommended |
|---|---|---|---|
| ERROR_STACK_TRACE | TRUE | With TRUE, an error shown on screen is followed by its technical detail: a line number and a stack trace. With FALSE, only the message is shown | FALSE in production. The detail appears on the public payment page and in the portal too, and means nothing to a payer. Switch it to TRUE temporarily when working with support on a problem |
| CREATE_MISSING_TRANSACTIONS | FALSE | With TRUE, reconciliation always creates a Pay Transaction for any payment in a deposit that Salesforce does not know. With FALSE, such lines stay unreconciled until someone runs Reprocess with its toggle on | FALSE, unless payments are regularly taken outside REDA Pay and you want them recorded automatically — see Reconcile deposits and payouts |
A further record, REDA_PAY_ACCOUNTING_EXT (listed as REDA PAY ACCOUNTING EXT), is reserved for a REDA accounting extension and has no effect in REDA Pay itself. Leave it as shipped.
The switches. Set ERROR_STACK_TRACE to FALSE before customers see the payment pages.
To change one: click the record's Edit, change Value, Save. The change applies immediately.
Error messages reference
Messages are grouped by where they appear. Many are quoted verbatim so support staff can match a customer's report.
On the payment and save-a-method screens
| Message | Meaning | What to do |
|---|---|---|
| "REDA Pay setting(s) are invalid or not defined. Please contact your system administrator." | The encryption key has not been generated | Generate the encryption key |
| "Bad Request. Parent record not found." | The screen was opened without a record (no rpay__rid, no portal user record) | Open it from an Account, Contact or Lead, or check the portal settings |
| "Transaction not allowed for SObject: …" | No active REDA Pay Process Config record for that object | Activate or create the mapping — see How Pay Customers are created |
| "No transfers are allowed. [Transfer Type]" | Neither receipts nor disbursements are allowed for this user on this page | Check the user's switches, the component and the account |
| "Payments are not allowed at this time for this customer. [Pay Methods]" | The Pay Customer has no allowed payment methods | Set Allowed Payment Methods on the customer |
| "New payment methods are not allowed at this time for this customer." | Same, on the save-a-method screen | Same |
| "Invalid request. Payment session is expired." / "Invalid request. New method session is expired." | The screen was open longer than the session allows | Reopen from the record; raise the session duration if needed |
| "Please provide a valid amount" / "Please enter a valid email address" | A field is empty or malformed | Correct it |
| "You must share geo-location access on browser or device to process the payment." | Geolocation is enforced and the browser denied it | Allow location, or change the account's enforcement |
| "Our systems have detected a duplicate payment request. We will only consider the first payment request." | The pay button was pressed twice | Wait for the first result |
| "Ooops.. we have experienced an unexpected exception. Your payment method may have been debited. Do not try to pay again and quote following code to the support team…" | The connection failed after the charge | Do not retry; run recovery — see Turn on failed-payment recovery |
| "Failed to process pay method." / "Failed to process pay method. Bad Customer Data." | Payload refused the card or account, or the customer's data | Check the details and the customer's name, email and phone |
On payment links
| Message | Meaning |
|---|---|
| "Invalid request: Order link has expired." | Past the link's expiry |
| "Invalid request: Order is already processed." | Already paid |
| "Invalid request: Bad request Parameters." | Altered address, never-activated or revoked link |
See Payment link troubleshooting.
When an order is saved
| Message | Meaning |
|---|---|
| "The transfer type is not allowed on either Customer, Processing Account or Pay Method." | Receipt/disbursement not allowed somewhere in the chain |
| "The pay method type is not allowed for the provided customer or processing account." | Card or bank not allowed in the chain |
| "Only active processing account associated to provided pay profile can be selected." / "Only active and valid pay profile can be selected." | Inactive or mismatched setup records |
| "Processing account is not applicable for provided Pay Customer." | The customer's Applicable Processing Accounts excludes it |
| "Disbursements are only supported for following pay methods.[Bank Account]" | A card was used for a payout |
| "Earnest Money Deposit payment is not allowed for this order." / "…only supported for following payments methods.[Bank Account (ACH)]." | EMD rules broken |
| "Order type link can not be processed if the required setup does not exist on the provided processing account." | No Link Site Public URL on the account |
| "You are not authorized to process disbursements." / "You are not authorized to process receipts." | The user's switches |
| "Pay Order is already processed." | Process Pay Order ticked on a processed order |
| "Invalid Pay Order. Pay order was revoked." | Processing attempted on a revoked order |
On record actions
| Message | Action | Meaning |
|---|---|---|
| "Bad Config Setup." | Any action | The action was opened on the wrong kind of record, or the setup it needs is missing |
| "Insufficient Access" | Any action | The user cannot see the record |
| "Transaction is not eligible for Voiding." / "Failed to void Transaction. Transaction is already processed." | Void Transaction | Not processed, or already funded — refund instead |
| "Only transaction of type "Payment" can be refunded." / "Only transaction in status "Processed" can be refunded." / "Partial refunds are not allowed for this transaction." | Refund Transaction | Rules for refunds |
| "Pay Method is not processed." / "Pay Method is already deleted." / "Pay Method is already processed." | Delete / Process Pay Method | State of the method |
| "Only immediate orders can be processed manually." / "Order is associated with invalid payment method." | Process Pay Order | Rules for manual processing |
| ""Reconciled" statement activity can not be reprocessed." | Reprocess | Already reconciled |
| "Statement and Reconciled amount must be the same for reconciled activities." | Editing a Statement Activity | Amounts differ |
| "Failed to setup webhooks. Bad Pay Profile Setup." / "Failed to setup webhooks. Bad Server Response." | Setup Webhooks | Missing base URL or key, or Payload rejected the request |
| "Please provide API Key and Profile Id prior activating the profile." | Editing a Pay Profile | Activate after storing the key and syncing |
FAQ
The messages are custom labels in the package. Salesforce's Translation Workbench lets you override a managed package's labels for a language, which is the supported way to reword one.
ERROR_STACK_TRACE is TRUE. Set it to FALSE.
To REDA Pay Logs, not to screens — see When a payment fails.