DEVELOPER PLATFORM
Errors
RapidCents API errors return un typed code, un human-readable message y, dónde relevant, un retry hint. Three categories behave differently: un malformed o unauthorized request, que no retry fixes; un platform failure, que un retry con el same clave de idempotencia usually does fix; y un emisor decline, que splits into soft y hard. UN rechazo temporal may succeed later; un rechazo definitivo never will. Sucursal en el code rather than el message text, since wording es no part de el contract.
- Entorno de pruebas (sandbox) con documented test tarjetas
- Signed webhooks
- Typed errors y idempotent retries
- Dedicated developer support

Qué crosses el wire
Dónde it sits
En el response a any call, y en el evento ese reports un later failure. El same code vocabulary es used en both places, so un decline caught synchronously y un renewal ese failed overnight son handled por one mapping.
Qué comes back
Un HTTP status ese classifies el failure broadly, y inside el body un typed code, un message written para un human reader, y un identificador de solicitud. El reference enumerates el codes; el message text es no part de el contract.
Qué usted do con it
Map each code a un action once, en one place: fail el request, retry it, ask el cliente para un different method, o escalate. Applications ese sucursal en message strings break el first time wording es improved.
Cuando a use it
Handling declines
Sucursal en el code, no el message string, que es written para humans y may change sin notice.
Recovering recurring charges
Soft declines feed el retry schedule; hard declines should stop el schedule y prompt el cliente para un new tarjeta instead de burning attempts.
Deciding qué a show un cliente
Some codes carry information el titular de la tarjeta puede act en, y some carry information el emisor expects usted no a disclose. El mapping decides que message el proceso de pago renders.
Cómo a implement Errors
Map cada documented code a un action en su own system, y incumplimiento de pago unknown codes a un safe failure.
Retry solo soft y platform failures, en un backoff, con el same clave de idempotencia.
Cap el number de attempts per método de pago rather than per request.
Surface actionable messages a clientes, no raw processor text.
Log el code y el identificador de solicitud together so Soporte puede trace un specific attempt.
Qué fails, y cómo usted find out
Retrying a hard decline
It cannot succeed, y repeated attempts en un closed o blocked cuenta son visible a el emisor. El recovery path es un new método de pago, no another attempt.
Retrying sin el clave de idempotencia
UN retry ese omits el key es un new request. If el first attempt actually landed, el cliente es charged twice y el duplicate es discovered en conciliación rather than en el till.
Showing el raw message a el cliente
Processor wording es written para un operator, no un titular de la tarjeta. Rendering it produces un proceso de pago ese tells people a Contacto un banco they do no banco con.
Unknown codes falling through
UN code usted have no mapped should fail closed y alert, no fall into el retry sucursal por incumplimiento de pago. New codes appear as el platform changes, y el changelog es dónde they son announced.
Sandbox versus production
Usted choose el error
Production declines depend en el emisor y cannot ser summoned en demand. En entorno de pruebas (sandbox) un documented tarjeta de prueba produces un specific code cada time, que es el solo way a write un test ese asserts en one.
Platform failures son simulated too
Timeouts y retryable failures puede ser provoked deliberately, so el idempotencia path gets exercised rather than assumed. Ese path es el one nobody tests until it costs un duplicate charge.
El vocabulary es identical
Entorno de pruebas (sandbox) does no use un reduced o friendlier code set. UN mapping built against entorno de pruebas (sandbox) codes es el mapping production needs, que es qué makes el exercise worth doing antes de go-live.
Questions about Errors
Qué es el difference entre un soft y rechazo definitivo?
UN rechazo temporal es temporary, such as insufficient funds o un límite de frecuencia de uso, y may clear en un later retry. UN rechazo definitivo, such as un closed cuenta, es permanent y must no ser retried.
Should I retry un declined tarjeta immediately?
No. Immediate retries son treated as suspicious por issuers. Space attempts out y cap them, que es qué el recurring engine does automatically.
Cómo do I trace un single failed request?
Cada response carries un identificador de solicitud. Log it alongside el error code y Soporte puede locate el exact attempt.
Es un HTTP 200 always un successful pago?
No. UN 200 means el call fue accepted y processed; whether el pago authorized es reported por el state en el body. Treating el status code as el outcome es cómo declined orders get fulfilled.
Qué should I retry, y cómo many times?
Retry platform failures y soft declines, en un backoff, con el same clave de idempotencia, y cap attempts per método de pago rather than per request. UN rechazo definitivo gets zero retries en any interval.
Cómo do I tell un duplicate charge desde two legitimate ones?
Por el clave de idempotencia. Two charges created under el same key son one pago reported twice; two charges under different keys son two pagos, y el request ids en su logs say que happened.
Why did un pago ese succeeded still fail later?
Autorización y liquidación son separate. UN pago puede authorize y then fail a settle, o settle y then ser disputed. Those arrive as events con su own codes, que es why el same mapping has a cover asynchronous failures.
Qué should I do con un error code I have never seen antes de?
Fail closed y alert. Un unmapped code must no fall into el retry sucursal por incumplimiento de pago. New codes appear as el platform changes y son announced en el changelog, so un unknown code es un signal a go y read it rather than something a swallow.
Cómo much de un decline reason puede I show el cliente?
Solo qué su mapping allows. Some codes carry information un titular de la tarjeta puede act en y some carry information el emisor expects no a ser disclosed. Rendering raw processor text produces un proceso de pago ese tells people a call un banco they do no banco con.
Continue el integration

The RapidCents API reference on a workstation, with a sample request, the matching response, and a test terminal. API Reference
REST endpoints para pagos, clientes, reembolsos, webhooks y settlements con request y…
Explore
A RapidCents webhook delivery timeline next to the payment that triggered it, with a test terminal on the desk. Webhooks
Signed webhook (notificación HTTP) events para pago lifecycle con idempotent procesamiento guidance.
Explore
RapidCents sandbox testing: documented test cards, a simulated decline, and a terminal for the in-person cases. Testing
Tarjeta de prueba numbers, simulated declines y entorno de pruebas (sandbox) liquidación events.
Explore
A RapidCents subscription charge created over the API, using the same billing engine as the dashboard. Recurring Pagos API
Build subscriptions, installments y retry logic against el same billing engine used por el…
Explore
Take the next step
Talk a un RapidCents specialist
RapidCents Análisis de comisiones reads un estado de cuenta de procesamiento y shows intercambio interbancario separately desde el markup. Upload un estado de cuenta para un instant breakdown, o open una cuenta de comerciante y start accepting pagos en one cuenta.
- No obligation
- Payment specialists, not a call centre
- Secure statement upload





