Your own payment system

Automated support for the system you built.

One open contract over REST or MCP. Chargeless reads your payments and requests only what your policy approved.

Decision recordpolicy v12
1Workspace live✓
2Identity: signed login✓
3€29.00 refundable✓
4Within 30 days✓
5Under €100 limit✓
keychat:7f3c…:refund:tx_88
● Executed at the provider
Illustrative example, not real data

Your system supplies facts. It never decides.

A few operations: find, list and read, refund, cancel, read an outcome. Requests are HMAC-signed with an idempotency key; responses are schema-checked.

  • REST or MCP, same schemas
  • Signed, optional mTLS
  • Fixed egress IPs
# merchant-provider/v1
POST /v1/refunds
X-SupportRoute-Timestamp: 1761210000
X-SupportRoute-Signature: v1=9f2c…e41a
Idempotency-Key: 01a1…:chat:7f3c…:refund:tx_88

{
  "transaction_ref": "tx_88",
  "amount": { "amount_minor": 2900, "currency": "EUR" },
  "reason": "duplicate",
  "dry_run": false
}
Illustrative example, not real data

Prove it works before it reaches a customer.

The kit tests every operation in your sandbox, including replays and over-refunds. Going live needs a passed run under 30 days old.

  • Runs in your sandbox
  • A sealed report
  • Needed again to change transport

Conformance kit report

providercheck/2

find_customersPassed
list_transactionsPassed
refund_replayPassed
refund_over_refundablePassed
get_operationPassed
retryable_mismatchPassed
Illustrative example, not real data

Refunds that finish later, tracked to the end.

An operation in progress is read again on a schedule, or at once on a callback. After 24 hours it goes to your team. Never shown complete too early.

  • Optional signed callbacks
  • Handoff after 24 hours
  • Daily reads to day 30

Outcome of a refund

  1. Refund requested with key
  2. Your system: in progress
  3. Callback received
  4. Read: succeeded
  5. Customer sees “Refund issued”
Illustrative example, not real data

Frequently asked questions

Can’t find your question?

See every question merchants ask, or ask us when you request access.

All questionsRequest early access
01Does Chargeless store my customers’ data?

It keeps a copy of what it needs to decide (payments, refunds, subscriptions) and refreshes it from your system before every decision.

02What if my system refuses a refund during execution?

A refusal is an outcome, never a decision input. A state refusal ends as a decline; anything else goes to your team.

03Can I rotate secrets without downtime?

Yes. A new signing secret is staged first and activated only after a contract check signed with it passes.

Start with low limits. Raise them when the record shows it works.

Start in test mode, run your policy against your own history, and go live when the results meet your standards.

  1. 1A test workspace on your provider’s test mode
  2. 2Your past requests replayed against your policy
  3. 3Live with low limits, raised as the record allows