Skip to main content

Troubleshooting

Every refusal in Pehmen names itself. Find the words you are seeing.

On sign-in and account​

You seeMeaningDo
The sign-in page asks for Authenticator codeTwo-factor is on for your accountEnter the six digits. A code works once per 30 seconds.
That code was not acceptedWrong code, or the same code used twice in one stepWait for the next code.
Your email address is not verified yet on the overviewThe verification link was never clickedPress Send the verification link again. Only accepting invitations is blocked.
Could not accept the invitationWrong account, unverified email, or expired invitationSign in with the invited address, verify it, or ask for a new invitation.

On buttons​

You seeMeaningDo
Confirm it is you with a code fieldThe action needs a second factor verified in the last five minutesEnter the code. The action retries under a new idempotency key.
This step needs the … permission, which your roles do not includeYour role lacks itAsk an owner to change your role, or ask someone with it.
You requested this …, so you cannot also grant itDual controlSomeone else approves.
waiting for a second approverThe action opened an approval instead of completingGive the approval id to a second person with the approve permission.
A button is greyed but still focusableNot yet available; the sentence under it says whyDo the thing it names (validate first, wait out cooling-off, …).
approval_staleThe content changed between approval and executionApprove again.
ato_session_blockedYou or the approver changed credentials in the last 24 hoursWait, or have someone else act.

On connections​

You seeMeaningDo
LIVE_KEY_IN_TEST_ENVIRONMENTA live keyCreate the key in the provider's test or sandbox mode.
SECRET_KEY_NOT_ALLOWED_USE_RESTRICTEDsk_test_Stripe: Create restricted key with Write on PaymentIntents, Charges, Refunds, Webhook Endpoints.
PROVIDER_AUTH_FAILEDThe provider rejected the keyCheck it was copied whole and belongs to the sandbox account.
PROVIDER_SCOPE_INSUFFICIENTMissing permissionsAdd the four Stripe permissions above.
DEGRADED with WEBHOOK_REGISTRATION_SCOPE_MISSINGStripe key lacks Webhook Endpoints: WriteIt still routes. Recreate the key with the permission and re-validate, or create the endpoint in Stripe and paste the whsec_ secret.
This connection still needs a webhook signing secretHitPay or AirwallexCreate the endpoint in the provider dashboard at the URL shown; paste the secret through the API.

On payments​

You seeMeaningDo
no_eligible_route / NO_ELIGIBLE_ROUTENo connection survived the filtersRead the matrix on the payment page. Common: no PAYIN connection, PayNow with Manual capture, a revoked connection.
intent_state_invalid on confirmAn attempt is already in flight, or the intent is terminalWait for the outcome, or create a new intent.
Stays PROCESSINGThe worker is dispatching; the outcome comes by webhook or queryWait. On a real sandbox it is seconds. Check the inbox under Webhooks for the provider's event.
OUTCOME_UNKNOWNThe provider did not answer clearlyNothing. The query loop runs for up to about three hours; then it is MANUAL_REVIEW.
MANUAL_REVIEW on an attemptContradictory observations or query budget exhaustedNo self-service action exists in this release. Raise it with the platform team.
DENIEDThe Gate said noRead the Gate decision's reason codes; adjust the policy if they are wrong.

On policies​

You seeMeaningDo
The rules engine refused this definitionSchema or DSL error, with pathsFix the named path. Unknown feature, reason code, decision or operator are the usual causes.
UNREACHABLE_RULEA condition can never be true, or an earlier rule always matches firstFix or remove the rule.
Submit refused: replayNo replay for this exact definitionRun Replay this window, then submit.
POLICY_LOCK_CONFLICTSomeone else changed the version meanwhileReload and retry.

On trust and payouts​

You seeMeaningDo
seller has no verified notification channelNobody trustworthy to notifyAdd and verify a channel for the seller first.
cooling_off_activeThe window has not elapsed, or a notice is undeliveredWait; check the notification rows on the change page.
HELD with FULFILLMENT_EVIDENCE_TIER_TOO_LOWNo tier-2 evidence for the orders in the release conditionSend a signed fulfillment event, then approve.
Release refused on a demo connectionPooled demo credentials cannot dispatchUse your own Airwallex sandbox connection.
FAILED_AFTER_PAIDThe provider reported paid, then failedWork the PAID_THEN_FAILED exception and the case it opened.

On webhooks​

You seeMeaningDo
webhook_url_rejectedNot HTTPS on 443, or a private or loopback addressUse a public HTTPS URL.
Deliveries FAILED with your statusYour server answered non-2xx, timed out (10 s), or redirectedFix the endpoint; retries continue for 20 attempts.
Endpoint DISABLEDAttempts exhaustedFix the endpoint, Enable delivery, then Replay the deliveries.
Inbox shows signature invalidThe provider's event did not verify against the stored secretCheck the secret pasted for the connection; rotate it at the provider and paste again.

On the API​

Status and codeMeaning
400 idempotency_key_requiredAdd an idempotency-key header.
409 idempotency_conflictSame key, different body. Use a new key.
409 idempotency_in_progressThe same request is still running. Wait and read the resource.
403 environment_mismatchA test key naming live, or the reverse.
403 forbidden with "API keys cannot step up"Needs a person with a fresh second factor; keys cannot step up.
404 not_foundAlso what you get for another workspace's object.
429 rate_limitedHonour retry-after.

If none of these fit, quote the request id shown under the error; every response carries one in the request-id header too.