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¶
- Push Payment
- OCT sends funds to a cardholder's card, rather than collecting funds from it.
-
This is an initial transaction type — it does not require a parent transaction.
-
Simplified Payment Data
- Only the
encrypted_card_numberis required in the payment method data. CVV, expiration month, and expiration year are not required. - Card data must still be encrypted using the merchant's public key.
-
Encryption example is available under encryption-example
-
No 3D Secure Authentication
- OCT transactions do not require 3D Secure authentication. Authentication is handled implicitly by the gateway.
-
As a result,
browser_infois not required in the request. -
Terminal ID Specification
- It is essential to specify the
terminal_idduring the transaction setup. This unique identifier represents the point of sale or the terminal that is processing the transaction. - 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.