PACINBack to PACIN

Docs Fundamentals Data ingestion

Data ingestion

Send transaction history before you score.

PACIN scores records that already have activity. You send that activity in. Then you request a score.

API ingest

POST /v1/ingest accepts a batch of transactions. Use a unique idempotency key so a retry does not double-write. Live data needs a valid consent_id.

bash
curl -X POST https://app.pacinnetwork.com/api/v1/ingest \
  -H "Authorization: Bearer $PACIN_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: ingest-2026-09-14-001" \
  -d '{
    "source": "json",
    "rail": "mpesa",
    "country_code": "KE",
    "consent_id": "con_01JXXXXXXXXXXXXXXXXXXX",
    "records": [
      {
        "entity_id": "pac_KE_0001",
        "transaction_type": "credit",
        "amount": 25000,
        "currency": "KES",
        "timestamp_utc": "2026-05-13T08:23:14Z",
        "source_record_id": "txn-001"
      }
    ]
  }'

Each record needs an entity id, a type (for example credit or debit), amount, currency, timestamp, and a source id from your system.

File upload

For a one-off history file, use the bulk upload tool in your institution account. Supply: entity identifier, date, amount, transaction type, rail, and currency.

Consent

Production ingest without consent is rejected. Sandbox keys may use test entity IDs for development. See Consent.

Last updated 14 September 2026