Skip to main content

Reference

📄️Error Codes

When a Platform Interface call cannot succeed, return a JSON body shaped as { code, message } with an HTTP 400. Simpler reads the body only when the status code is exactly 400 — any other 4xx (e.g. 404, 422) is treated as a generic failure and its code is ignored, and a code returned with a 2xx status is not treated as an error. The code field is the machine-readable identifier Simpler uses to surface a localized message to the shopper in the checkout UI; the message field is partner-supplied context (useful in logs but not directly shown).

📄️Order Lifecycle

The /submit call represents an authorized order, not a captured one. Capture happens only after your /submit endpoint returns a 2xx response — so a failed submission never charges the shopper. If /submit fails terminally, the authorization is held so the order can be recovered Debug, Retry, or Cancel. For synchronous methods the authorize/capture distinction rarely matters in practice; for asynchronous methods (MultiBanco, MBway, Sequra) it's central to the partner integration.