TicketUserServices

<back to all web services

BorgunTest3DFinishProcessRequestShortVersion

Requires Authentication
Requires the role:AdminRequires the permission:ReadData
The following routes are available for this service:
POST/borgunTest3D/Finish3DProcessShortVersionTest 3D
import datetime
import decimal
from marshmallow.fields import *
from servicestack import *
from typing import *
from dataclasses import dataclass, field
from dataclasses_json import dataclass_json, LetterCase, Undefined, config
from enum import Enum, IntEnum


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class BorgunPaymentMethodInfo:
    payment_type: Optional[str] = None
    pan: Optional[str] = None
    token: Optional[str] = None
    card_type: Optional[str] = None
    is_debit: Optional[str] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class Borgun3DSecureInfo:
    security_level_ind: Optional[str] = None
    xid: Optional[str] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class BorgunFinal3DResponse:
    transaction_id: Optional[str] = None
    transaction_type: Optional[str] = None
    amount: Optional[int] = None
    currency: Optional[str] = None
    transaction_date: Optional[datetime.datetime] = None
    oorder_id: Optional[str] = None
    auth_code: Optional[str] = None
    action_code: Optional[str] = None
    transaction_status: Optional[str] = None
    payment_method: Optional[BorgunPaymentMethodInfo] = None
    three_d_secure: Optional[Borgun3DSecureInfo] = None
    life_cycle_id: Optional[str] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class BorgunTest3DFinishProcessResponse:
    response: Optional[BorgunFinal3DResponse] = None
    status_code: Optional[int] = None
    message: Optional[str] = None
    forced_path: Optional[str] = None
    forced_j_s_o_n_request: Optional[str] = None
    json_request: Optional[str] = None
    json_response: Optional[str] = None
    request_path: Optional[str] = None
    request_sent: Optional[str] = None
    request_received: Optional[str] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class Borgun3DFinalRequestShortVersion:
    amount: Optional[int] = None
    mpi_token: Optional[str] = None
    order_id: Optional[str] = None
    token: Optional[str] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class BorgunTest3DFinishProcessRequestShortVersion:
    request: Optional[Borgun3DFinalRequestShortVersion] = None
    forced_path: Optional[str] = None
    forced_j_s_o_n_request: Optional[str] = None
    skip_borgun_call: Optional[bool] = None

Python BorgunTest3DFinishProcessRequestShortVersion DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv

HTTP + JSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /borgunTest3D/Finish3DProcessShortVersion HTTP/1.1 
Host: stubbur-autoupdates-live.smartnewapis.com 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	request: 
	{
		amount: 0,
		mpiToken: String,
		orderId: String,
		token: String
	},
	forcedPath: String,
	forcedJSONRequest: String,
	skipBorgunCall: False
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	response: 
	{
		transactionId: String,
		transactionType: String,
		amount: 0,
		currency: String,
		transactionDate: 0001-01-01,
		oorderId: String,
		authCode: String,
		actionCode: String,
		transactionStatus: String,
		paymentMethod: 
		{
			paymentType: String,
			pan: String,
			token: String,
			cardType: String,
			isDebit: String
		},
		threeDSecure: 
		{
			securityLevelInd: String,
			xid: String
		},
		lifeCycleId: String
	},
	statusCode: 0,
	message: String,
	forcedPath: String,
	forcedJSONRequest: String,
	jsonRequest: String,
	jsonResponse: String,
	requestPath: String,
	requestSent: String,
	requestReceived: String
}