Mojave is now Paying.co — same team and expertise, now with a name that reflects our core mission. Learn more →
Reusable EMV Level 3 framework

Write the L3 core once.
Cast it per processor.

Foundry is the engine behind Paying.co's certifications — a native EMV L3 lifecycle written once, with each processor added as a thin, swappable adapter.

Native C99 core. Android/Kotlin SDK rides on top as a wrapper.

132certifications shipped
<50%of prior pricing
75 / 25shared core / adapter

One core → many castings

L3 CORE lifecycle · TLV · crypto GP-API TSYS TransIT Elavon EPG Visa Platform Cnct Santander · MXN
only authorize()ever crosses the processor boundary.
132
EMV L3 certifications across multiple countries & currencies
weeks
not months — timelines cut by reusing a proven, tested core
<50%
of prior rates — the shared engine is already built and tested
The Foundry model

A mold you reuse, a casting per client

Every EMV L3 engagement repeats the same lifecycle. Foundry writes that lifecycle once and treats the processor as the only part that changes.

01 · CORE

The engine is written once

Canonical model, BER-TLV parser, hardware abstraction, the transaction engine and crypto — roughly 75% of every certification, built and battle-tested.

02 · CAST

Each processor is an adapter

A new engagement means implementing one seam. Only authorize() differs per processor — credentials live in the injected transport, never the adapter.

03 · SHIP

Certify faster, for less

Because the core arrives already proven, the work — and the timeline, and the cost — collapses to the adapter and the test scripts.

Inside the core

Everything the lifecycle needs, in one place

  • Canonical model & BER-TLV

    One normalized transaction shape and a full TLV parser + view engine feeding every adapter.

  • ISO 4217 money handling

    Exponent-aware minor units in one module — JPY (0), USD/MXN/EUR (2), BHD/KWD (3) — no adapter guesses on its own.

  • Crypto & key management

    Key provisioning and the crypto seam built into the core, ported intact to native C.

  • Transport-agnostic API facade

    Sale, pre-auth, completion, void, refund and get — with an idempotency store and clean in-band error codes.

/* The only seam a new processor implements */
fdy_status_t authorize(
    const fdy_txn_t   *txn,
    const fdy_creds_t *creds,   // held by transport
    fdy_auth_result_t  *out
) {
    // map canonical → processor request
    // send via injected HTTP transport
    // map response → canonical result
    return FDY_OK;
}
/* everything else — lifecycle, TLV,
   money, crypto — is already done. */
Processor castings

Live adapters, and the ones on the bench

Foundry documents both what's shipped and what's planned — a living roster that grows one casting at a time.

Global Payments

Shipped

GP-API casting, fully multi-currency.

TSYS TransIT

Shipped

Transit-focused adapter, intentionally USD-only.

Elavon EPG

Shipped

EPG casting, fully multi-currency.

Cybersource

Shipped

Visa Platform Connect casting.

Santander

In progress

ISO 8583, USD + MXN — targeting Mexican acquiring, pending host spec.

Fiserv

Coming soon

On the roadmap as the roster expands.

Certified hardware
ID TECH PAX AXIUM by Ingenico
Native core, any target

A pure C99 engine that runs where you need it

Foundry's core was ported 1:1 to native C99 — no Android, JVM, or coroutine dependencies. Embed it on unattended terminals, kiosks, or behind any language's FFI, with the Android/Kotlin SDK riding on top as a wrapper.

C99 core Android / Kotlin Kiosk & unattended CMake · Makefile FFI-ready

Built once, verified everywhere

C99
no runtime deps
clean
ASan · UBSan · LSan
mold cast once, per-engagement adapter
processor seam is the only variable
money & crypto centralized in the core

Certify with a core that's already proven

Reconnect on an EMV L3 engagement and put 132 certifications' worth of tested groundwork to work on yours.