---
title: "Credit card transaction"
method: POST
path: "/creditguy/gateway/transaction/"
tags: ["Credit card terminal (Gateway)"]
---

# Credit card transaction

`POST /creditguy/gateway/transaction/`

This method should be used in rare occasions.
For common use scenarios, refer to "Payments -> Charge customer" method.

## Headers

- `Content-Language` unknown

## Request body

- CreditGuyGatewayTransactionRequest
  - `Credentials` CoreAPICredentials, required
    - `CompanyID` integer, required — Company identifier
    - `APIKey` string, required — API key secret
  - `ParamJ` 'CheckDetails (2)' | 'Charge (4)' | 'AuthorizeOnly (5)', required
  - `CardNumber` string, nullable — Full card number Leave this empty when using FormatPreservingToken/CardToken/SingleUseToken
  - `FormatPreservingToken` string, nullable — Format preserving card number Leave this empty when using CardNumber/CardToken/SingleUseToken
  - `CardToken` string, uuid, nullable — Card token Leave this empty when using CardNumber/FormatPreservingToken/SingleUseToken
  - `SingleUseToken` string, nullable — Single use token, for all payment details (CardNumber, Expiration, CVV, CitizenID). Used primarily by the Payments JavaScript API. (Leave this empty when using CardNumber/FormatPreservingToken/CardToken)
  - `ExpirationMonth` integer, nullable — Card expiration month (1-12) Leave this empty when using SingleUseToken
  - `ExpirationYear` integer, nullable — Card expiration year (4 digits) Leave this empty when using SingleUseToken
  - `Amount` number, double — Transaction amount Leave this empty when using ParamJ = CheckDetails
  - `PaymentsNonFirstCount` integer, nullable — Non-first payments count Leave this empty for non-payments transaction
  - `PaymentsFirstAmount` number, double, nullable — First payment amount Leave this empty for non-payments transaction
  - `PaymentsNonFirstAmount` number, double, nullable — Non-first payment amount Leave this empty for non-payments transaction
  - `AuthNumber` string, nullable — Transaction authorization number
  - `CVV` string, nullable — Card CVV/CVV2
  - `Track2` string, nullable — Card Track2
  - `CitizenID` string, nullable — Israel Citizen ID / Passport Number
  - `Currency` 'ILS (0)' | 'USD (1)' | 'EURO (2)'
  - `Language` string, nullable — Transaction language Leave this empty to use the company default language
  - `UniqueIdentifier` string, nullable — Unique transaction identifier. This parameter can be used for preventing duplicate transactions
  - `MerchantNumber` string, nullable — Shva merchant number (Terminal number). This parameter should only be used when multiple merchants are defined in the company.
  - `TransactionType` 'Debit (1)' | 'StandingOrder (11)' | 'Credit (51)' | 'CreditEMV (53)'
  - `CustomData_1` string, nullable — Custom user supplied data Supports up to 100 chars in each field
  - `CustomData_2` string, nullable — Custom user supplied data Supports up to 100 chars in each field
  - `CustomData_3` string, nullable — Custom user supplied data Supports up to 100 chars in each field
  - `CustomData_4` string, nullable — Custom user supplied data Supports up to 100 chars in each field
  - `CustomData_5` string, nullable — Custom user supplied data Supports up to 100 chars in each field
  - `MultiSupplierNumber` string, nullable — Supplier number when using a multi supplier terminal

## Response `200`

OK

- ResponseCreditGuyGatewayTransactionResponse
  - `Status` 'Success (0)' | 'BusinessError (1)' | 'TechnicalError (2)'
  - `UserErrorMessage` string, nullable — Error message, in a user readable format
  - `TechnicalErrorDetails` string, nullable — Technical error details, let us know if you received this.
  - `Data` CreditGuyGatewayTransactionResponse
    - `Success` boolean — Is valid transaction
    - `ResultCode` string, nullable — Shva result code (000 is valid)
    - `ResultDescription` string, nullable — Shva result description
    - `TransactionID` integer — CreditGuy transaction identifier
    - `FileNumber` string, nullable — Shva file number
    - `CheckoutIndex` string, nullable — Shva checkout index
    - `CheckoutRecordIndex` string, nullable — Shva checkout record index
    - `Acquirer` integer, nullable — Card acquirer
    - `Brand` integer, nullable — Card brand
    - `Issuer` integer, nullable — Card issuer
    - `AuthNumber` string, nullable — Charge authorization number
    - `CardToken` string, uuid, nullable — Card token, this field may be stored on non-pci compliant systems
    - `ExpirationMonth` integer, nullable — Card expiration month (1-12), this field may be stored on non-pci compliant systems
    - `ExpirationYear` integer, nullable — Card expiration year (4 digits), this field may be stored on non-pci compliant systems
    - `CitizenID` string, nullable — Israel Citizen ID / Passport Number, this field may be stored on non pci-compliant systems
    - `CardPattern` string, nullable — Card number pattern (including the last 4 digits)

---

[API](https://skmtc.net/myofficeguy/apis/sumit-api-full.md) · [All operations](https://skmtc.net/myofficeguy/apis/sumit-api-full/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/myofficeguy/sumit-api-full/versions/2691e6cffa0c/schema)
