Developers / Sandbox
Environment
NET RENTALS TEST ENVIRONMENT

Break things here. Not in production.

Simulate bookings, payments, identity checks, deposits, pickup, late rentals, returns, charges, disputes, and webhook deliveries without touching live customers or rental operations.

Developer platform draft The simulation endpoints shown on this page map the proposed developer sandbox. They should not be treated as generally available until released.
01 Separate test data
02 Simulate outcomes
03 Inspect events
04 Reset and repeat
01 / ISOLATION

Test data stays test data.

The sandbox should mirror the shape of Net Rentals without sharing the live business state your customers and operations depend on.

Sandbox
nr_test_*
api.sandbox.net-rentals.com/v1
Customers Test
Bookings Test
Payments Simulated
Webhooks Test deliveries
isolated
Production
nr_live_*
api.net-rentals.com/v1
Customers Live
Bookings Live
Payments Real
Webhooks Live deliveries
02 / SCENARIOS

Move a rental through the lifecycle on command.

Instead of waiting hours or days for a real rental to reach a specific condition, create the condition directly.

PAYMENT 200

Payment succeeds

Move a test booking into a successful payment state.

POST /payment/succeed
PAYMENT 402

Payment fails

Test failed-payment UI, notifications, and retry logic.

POST /payment/fail
IDENTITY VERIFIED

Identity verified

Satisfy the identity gate for a test booking.

POST /identity/verify
DEPOSIT SECURED

Deposit secured

Simulate a completed security-deposit requirement.

POST /deposit/secure
RENTAL ACTIVE

Start rental

Advance a ready booking into the active rental state.

POST /pickup
CLOCK LATE

Make rental late

Trigger late-rental behavior without waiting on the clock.

POST /make-late
RETURN SUBMITTED

Submit return

Test the transition from active rental into return review.

POST /return
CHARGE FAILED

Charge fails

Simulate collection failure and downstream recovery behavior.

POST /charges/{id}/fail
DISPUTE OPEN

Create dispute

Test dispute locks and post-trip collection behavior.

POST /charges/{id}/dispute
03 / SIMULATION API

Change test state with a request.

Sandbox-only endpoints can create conditions developers need to verify without exposing those controls in production.

TEST REQUEST POST
POST /v1/test/bookings/bkg_test_8041/make-late

Authorization: Bearer nr_test_sk_••••••••
Content-Type: application/json
200
{
  "id": "bkg_test_8041",
  "state": "late",
  "event": "rental.late"
}
04 / TEST ENDPOINTS

The controls behind the scenario runner.

Method Endpoint Simulation
POST /v1/test/bookings

Create a test booking.

POST /v1/test/bookings/{booking_id}/payment/succeed

Successful payment.

POST /v1/test/bookings/{booking_id}/payment/fail

Failed payment.

POST /v1/test/bookings/{booking_id}/identity/verify

Approved identity.

POST /v1/test/bookings/{booking_id}/identity/fail

Failed identity.

POST /v1/test/bookings/{booking_id}/agreement/sign

Signed agreement.

POST /v1/test/bookings/{booking_id}/deposit/secure

Secured deposit.

POST /v1/test/bookings/{booking_id}/pickup

Start test rental.

POST /v1/test/bookings/{booking_id}/make-late

Force late state.

POST /v1/test/bookings/{booking_id}/return

Submit return.

POST /v1/test/charges/{charge_id}/succeed

Successful post-trip charge.

POST /v1/test/charges/{charge_id}/fail

Failed post-trip charge.

POST /v1/test/charges/{charge_id}/dispute

Open a test dispute.

POST /v1/test/webhooks/{endpoint_id}/send

Send a test webhook.

05 / LIFECYCLE LAB

Test the transitions, not just the endpoints.

A rental is a connected state machine. Sandbox testing should make it easy to validate what becomes possible or blocked after each change.

01 CREATED Booking booking.created
02 REQUIREMENTS Prepare deposit.secured
03 RELEASE Pickup pickup.ready
04 ACTIVE Rental rental.started
05 REVIEW Return return.submitted
06 FINAL Complete rental.completed
06 / FAILURE TESTING

Successful paths are the easy part.

A useful sandbox should make the ugly conditions easy to reproduce: payment failure, identity rejection, collection failure, late rentals, webhook errors, and disputes.

FAILURE INJECTION enabled
Payment declined payment.failed
Identity rejected identity.rejected
Charge collection failure charge.failed
Webhook returns 500 delivery.retrying
07 / WEBHOOK TESTING

Generate the event you need to debug.

Fire a test event into a registered sandbox endpoint, inspect the response, and retry deliveries without creating live activity.

Read the webhook docs →
EVENT rental.started
TEST
Destination https://example.com/webhooks/net-rentals
Status 200
Attempt 1
Duration 142 ms
08 / ACTIVITY

See every test action in one timeline.

Test activity bkg_test_8041
API POST /v1/test/bookings 201
EVENT booking.created emitted
API POST /payment/succeed 200
EVENT payment.succeeded emitted
API POST /deposit/secure 200
HOOK deposit.secured → example.com 204
09 / RESET

Run it again.

Test environments are useful because they are disposable. Reset the scenario and repeat the workflow until your integration behaves correctly.

CURRENT TEST bkg_test_8041
8 actions 6 events 3 deliveries
THE RULE
Test the same rental logic. Never risk the same rental data.
NET RENTALS / SANDBOX

Build it. Break it. Reset it.

Validate your integration against the rental lifecycle before production depends on it.