Skip to content

OCT (Original Credit Transaction)

Introduction

An Original Credit Transaction (OCT) is a payment transaction type that allows merchants to send funds directly to a cardholder's card account. Unlike standard purchase or authorization transactions that pull funds from a card, an OCT pushes funds to the card. Common use cases include payouts, disbursements, refunds to a different card, and marketplace seller payments.

Key Characteristics

  1. Push Payment
  2. OCT sends funds to a cardholder's card, rather than collecting funds from it.
  3. This is an initial transaction type — it does not require a parent transaction.

  4. Simplified Payment Data

  5. Only the encrypted_card_number is required in the payment method data. CVV, expiration month, and expiration year are not required.
  6. Card data must still be encrypted using the merchant's public key.
  7. Encryption example is available under encryption-example

  8. No 3D Secure Authentication

  9. OCT transactions do not require 3D Secure authentication. Authentication is handled implicitly by the gateway.
  10. As a result, browser_info is not required in the request.

  11. Terminal ID Specification

  12. It is essential to specify the terminal_id during the transaction setup. This unique identifier represents the point of sale or the terminal that is processing the transaction.
  13. The terminal must be configured to support OCT transactions.

Request Requirements

Field Required Notes
terminal_id Yes Must support OCT
reference Yes Unique transaction reference (max 40 chars)
description Yes Transaction description
currency Yes ISO 4217 currency code
amount Yes Amount in minor units (e.g., cents)
transaction_type Yes Must be OCT
payment_method.type Yes Must be card
payment_method.data.encrypted_card_number Yes Encrypted using merchant public key
customer Yes Customer details
customer_ip No Customer IP address
metadata No Optional key-value pairs

Processing Flow

sequenceDiagram
    participant Merchant
    participant Gateway
    participant PSP

    Merchant->>Gateway: POST /api/transactions/authorize<br/>(transaction_type: OCT)
    Gateway->>Gateway: Decrypt & validate card number
    Gateway->>Gateway: Extract BIN, determine card brand
    Gateway->>Gateway: Route to payment provider
    Gateway->>PSP: Process OCT
    PSP-->>Gateway: Processing result
    Gateway-->>Merchant: Transaction response

Important Notes

  • The transaction is processed as an initial transaction — no parent transaction reference is needed.
  • Supported payment method type is card only.