PaymonetraDocs

Simulate a collection

The same, for your collection account rather than a customer’s. Test keys only.

POSThttps://api.paymonetra.com/v1/sandbox/payTest secret key only

Test keys only. An sk_live_ key is refused with 403 not_test_mode. See test mode.

The same thing for a merchant's collection account, for anyone not using per-customer accounts. Optional account_number picks a specific account of theirs; omitted, it uses their collection account.

JSON
{ "outcome": "underpaid", "amount": 5000, "account_number": "9913607261" }

An account number belonging to someone else answers 404 not_found, not 403. Telling the two apart would turn this into a way to ask whether a given account number belongs to us.

Send reference to simulate a payment you started with POST payments, which is the clearest option and the only one that works for a checkout with no customer_reference:

JSON
{ "outcome": "paid", "reference": "9010164afee121d815" }
JSON
{
  "outcome": "paid",
  "credited": true,
  "reference": "SIM20260912T7F3A9C1D",
  "amount": 25000,
  "account_number": "5090280226",
  "checkout_reference": "9010164afee121d815",
  "message": "Simulated paid of 25,000.00. A collection.success webhook has been queued."
}

amount is optional with a reference: the session knows what it asked for, so underpaid and overpaid mean something definite without one. A reference belonging to someone else answers 404 not_found, as an account number does.

Why it needs saying. A checkout with no customer_reference borrows an account for twenty minutes rather than owning one, so there was no account of the merchant's to name. account_number answered 404 not_found and the buttons on the page did nothing at all, silently. That is the configuration most merchants ship, because it is the one that quotes a round amount, and until 12 Sep 2026 it was the only one that could not be tested. Fixed: an account_number that belongs to a checkout of yours now works too.