Skip to main content

Original Credit Transaction

Original Credit Transaction (OCT) is a push payment that enables a sender to transfer funds directly to a recipient’s Visa Card Holder account in real time. Refer Card Tokenization SDK - Integration Guide for collecting the Card holder data from the end consumer using the IFrame.

Method: POST

{{URL}}/rpc/VisaDirectService/OriginalCreditTransaction

Example

Request Parameters
ParameterDescription
businessId
Mandatory
String
Identifies the program's business application type for VisaNet transaction processing.
senderAccountNumber
Mandatory
String
Account number of the sender.
endToEndID
Mandatory
String
ID given to track the transaction from initiation to completion.
purposeOfPayment
Optional
String
Payment purpose.
transactionCurrencyCode
Mandatory
String
3-character alpha or numeric currency code for the sender's currency.
amount
Mandatory
Amount to be sent.
cardToken

Mandatory
String
Token containing the card number and card expiry date.
serviceProcessingType
Mandatory
Object
Specifies whether the transaction is 'Instant OCT'.
serviceProcessingType.requestType
Mandatory
String
OCT type.
Valid Values
'00' - OCT

Body

{
"businessId": "BP",
"senderAccountNumber": "4060320000000127",
"amount": "343434",
"transactionCurrencyCode": "USD",
"purposeOfPayment": "billing",
"endToEndID": "343434",
"cardToken": "cfbedf58cb79ba81ee9aafecad212d5a",
"serviceProcessingType": {
"requestType": "00"
}
}

Response: 200

Response Parameters
ParameterDescription
successBoolean
Indicates if the transaction completed successfully. Present only for SUCCESS scenario.
referenceNumberString
Unique identifier generated for a successful transaction. Returned only when 'success = true'.
statusString
Transaction status. Possible values: 'PENDING', 'SUCCESS', 'FAILED'.
messageString
Readable message describing the transaction outcome.
actionCodeString
Action code for authorization (Positive Transactions - '00', '10', '11' and '85'). Present only for SUCCESS scenario.
responseCodeString
Visa response code (e.g., 'V' = Approved). Present only for SUCCESS scenario.
error.codeString
Error identifier describing the failure reason. Present only for FAILED scenario.
error.messageString
Readable error message describing the failure. Present only for FAILED scenario.
// "PENDING" Scenario

{
"status": "PENDING",
"message": "Transaction is pending "
}

// "Success" Scenario

{
"Message": "Transaction completed successfully",
"Success": true,
"Status": "Success",
"ReferenceNumber": "twty2t76527t128628728",
"ResponseCode": "V",
"ActionCode": "00"
}

// "FAILED" Scenario

{
"Error": {
"code": "unknown: code:FAILED",
"message": "Declined action code 65"
}
}