POST | /licenses/dibscallback/ | Save Dibs Callback | This service is used for the DIBS callback. |
---|
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
class DibStatus(str, Enum):
SUCCESS = 'Success'
CANCELLED = 'Cancelled'
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class DibsCallbackDto:
# @ApiMember(DataType="string", Description="The company id to save the credit card to", IsRequired=true)
company_id: Optional[str] = None
"""
The company id to save the credit card to
"""
# @ApiMember(DataType="string", Description="The dibs card expiration date (yymm)", IsRequired=true)
cardexpdate: Optional[str] = None
"""
The dibs card expiration date (yymm)
"""
# @ApiMember(DataType="string", Description="The dibs transact id", IsRequired=true)
transact: Optional[str] = None
"""
The dibs transact id
"""
# @ApiMember(DataType="string", Description="The dibs card number (masked)", IsRequired=true)
cardnomask: Optional[str] = None
"""
The dibs card number (masked)
"""
# @ApiMember(DataType="string", Description="The dibs paytype", IsRequired=true)
paytype: Optional[str] = None
"""
The dibs paytype
"""
# @ApiMember(DataType="string", Description="The dibs currency", IsRequired=true)
currency: Optional[str] = None
"""
The dibs currency
"""
# @ApiMember(DataType="string", Description="The dibs acquirer", IsRequired=true)
acquirer: Optional[str] = None
"""
The dibs acquirer
"""
# @ApiMember(DataType="string", Description="The dibs approval code", IsRequired=true)
approvalcode: Optional[str] = None
"""
The dibs approval code
"""
# @ApiMember(DataType="string", Description="The dibs status code", IsRequired=true)
statuscode: Optional[str] = None
"""
The dibs status code
"""
# @ApiMember(DataType="string", Description="The dibs amount", IsRequired=true)
amount: Optional[str] = None
"""
The dibs amount
"""
# @ApiMember(DataType="uri", Description="The redirect url to send user back to after added creditcard", IsRequired=true)
redirect_url: Optional[str] = None
"""
The redirect url to send user back to after added creditcard
"""
# @ApiMember(DataType="string", Description="The unique token for this request", IsRequired=true)
token: Optional[str] = None
"""
The unique token for this request
"""
# @ApiMember(DataType="enum", Description="status of the callback url", IsRequired=true)
status: Optional[DibStatus] = None
"""
status of the callback url
"""
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /licenses/dibscallback/ HTTP/1.1
Host: api.bokamera.se
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
cardexpdate: String,
transact: String,
cardnomask: String,
paytype: String,
currency: String,
acquirer: String,
approvalcode: String,
statuscode: String,
amount: String,
RedirectUrl: String,
Token: String,
Status: Success
}
HTTP/1.1 200 OK Content-Type: text/jsv Content-Length: length { }