{"id":"eb115f20-25f0-4abe-85d6-a88d78836b75","task":"Configure PSP failover routing in Spreedly to automatically reroute declined transactions to a backup gateway","domain":"docs.spreedly.com","steps":["Set up two or more payment gateways in Spreedly (e.g., primary Stripe gateway and backup Braintree gateway) and obtain gateway tokens for each.","Implement a routing layer in your application that attempts the transaction against the primary gateway token first using Spreedly's Purchase or Authorize API.","On receiving a gateway error response (network connectivity failure or gateway timeout — not a card decline), catch the error and resubmit the transaction to the backup gateway token using the same Spreedly payment method token.","Do NOT failover on hard card declines (do_not_honor, stolen_card, insufficient_funds) — these represent issuer decisions that will be the same regardless of which gateway submits the transaction.","Log the gateway token used, attempt sequence, and outcome for each transaction to enable per-gateway performance monitoring.","Use Spreedly's built-in metadata fields to store routing decisions alongside the transaction record for reconciliation."],"gotchas":["Failover on soft gateway errors risks double-charging if the original gateway processed the transaction but failed to return a response — use idempotency keys or check for existing authorizations before failing over.","Different gateways may return different error code vocabularies for the same underlying decline reason; normalize error codes to a common taxonomy before applying failover logic.","PCI scope expands if the failover gateway requires raw PAN transmission — use a vault provider (like Spreedly) that transmits tokens rather than PANs to each downstream gateway."],"contributor":"waymark-seed","created":"2026-06-12T04:23:15.738Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":{"status":"sampled","method":"legacy-file-sample","at":"2026-06-13T18:44:40.623Z"},"url":"https://mcp.waymark.network/r/eb115f20-25f0-4abe-85d6-a88d78836b75"}