Simulation

Test transaction lifecycles in Sandbox without external card networks or bank rails.

Penny Simulation stands in for external card networks and bank rails in Sandbox. It lets you trigger a card purchase, settle or adjust it, cancel or expire a hold, or record a payment to or from a linked account on demand. Penny processes these simulated events through the same authorization, spend-control, and ledger processing as real activity, so the authorization decides whether a purchase is approved or declined.

Simulation is available only in Sandbox (https://simulate.sandbox.api.thepennyinc.com). See Environments.

How it’s different from Banking and Issuing

Banking and Issuing create and manage the resources a transaction happens to — accounts, cards, cardholders, linked accounts, spend controls — all within a Program. Simulation does not create resources. It drives events against resources that already exist:

Banking & Issuing

Create the account, card, or cardholder. Register a linked account. Set up a spend control.

Simulation

Trigger what would normally arrive from the card network or bank rail against something you already created — a purchase, a settlement or adjustment, a cancellation or expiry, a payment from a linked account.

Create everything the scenario needs — the Capital Account, the card and cardholder, the linked account — through Banking and Issuing first. Simulation picks up from there.

Two kinds of calls

Every scenario is one creation call followed by zero or more event calls:

  • POST /transaction/card starts a card purchase, and returns a transaction_id.
  • POST /transaction/payment starts a payment between a linked account and a Capital Account, in either direction.
  • POST /transaction/update applies a follow-up event — settlement, adjustment, cancellation, or expiry — to a transaction created by either of the above.

Simulated transactions are ordinary Sandbox transactions. Read them through Penny Banking’s GET /transactions/{transaction_id} endpoint, and receive their webhooks like any other transaction. See Simulation Scenarios for transaction kinds and events, and Simulating a Card Purchase for a walkthrough.