Branded Card Accounts 1.0
Description
The API supports all brands where SEB Kort Bank AB is card issuer. Available features are Card Accounting Listing (with details and balances) and Transactions list (with details) for one card account. Access is given per brand by providing a Brand ID in the authentication process. Read more at GitHub.
Listed card accounts are those where the user is accountholder and thus liable for any credit used. A card account can have more than one actual card, if a family member is given an extra card there is still only one card account and only the main cardholder is able to share the data. The corresponding list of transactions can hold purchases made on both cards, shown by the maskedPan attribute.
The card account REST structure uses a resource identifier to access account information. In order to query for transactions, a resource identifier must be fetched. Use the cardAccount list endpoint to get the resource ids for all Card Accounts.
The following brands are issued by SEB Kort Bank AB and available in the API:
Circle K, Esso, Eurocard, Finnair, GlobeCard, INGO, Jyske, NK, Nordic Choice Club, Opel, Quintessentially, Saab, SAS, Scandic, SEB, SJ, Volvo and Wallet
Authorization
SEB uses 3-legged authorization to delegate access to user data according to the OAuth 2.0 protocol. The OAuth flow is a way for your application to get an access token and a refresh token.
Authorization is initiated using the separate Authorization API.
We use scopes to authorize access to APIs. Scope is required as a parameter in the API call to the authorize endpoint.
https://api-sandbox.sebgroup.com/mga/sps/oauth/oauth20/authorize
The following scopes are required:
psd2_accounts
psd2_payments
You will need to submit both scopes to get a valid token. For further information see instructions for how get a token here.
Note!
You must create one application for private user data and one application for corporate user data when calling the Account Information and Payment Initiation API. This will be required when granted access to production data.
Sandbox
The Branded Cards API is not yet part of the dynamic sandbox, but offers static data responses.
See below test users for authorization flow:
Sandbox Identification Number |
9311219639 |
9311219589 |
8811215477 |
8811212862 |
8311211356 |
State
Card account information for branded cards provided by SEBKort Bank AB.
Paths
/
Returns a list of user’s card accounts and transactions for credit and charge cards issued by SEB Kort Bank AB.
The API supports all brands where SEB Kort Bank AB is card issuer. Access is given per brand by providing a Brand Id in the authentication process. Listed card accounts are those where the user is account holder and thus liable for any credit used. A card account can have more than one actual card, for example if a family member is given an extra for convenience. In this case there are still only one cardAccount but the corresponding list of transactions can hold purchases made on both cards, shown by the maskedPan attribute. The card account REST structure uses a resource identifier to access account information. In order to query for transactions, a resource identifier must be fetched. Use the cardAccount list endpoint to get the resource ids for all cardAccounts.
Contains the Bearer Token for OAuth 2.0. Example value "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1d_etc"
/{accountId}/transactions
Returns a list of transactions for one specific account.
Returns a list of transactions for one specific account. You can search on account with or without a date period. The transaction list contains both booked transactions and pending transactions
accountId
dateFrom
dateTo
bookingStatus
Contains the Bearer Token for OAuth 2.0. Example value "Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1d_etc"
Definitions
{
"type": "object",
"properties": {
"booked": {
"type": "array",
"items": {
"$ref": "#\/definitions\/Transaction"
}
},
"pending": {
"type": "array",
"items": {
"$ref": "#\/definitions\/Transaction"
}
}
}
}
{
"type": "object",
"required": [
"currencyFrom",
"currencyTo",
"rate",
"rateDate"
],
"properties": {
"currencyFrom": {
"type": "string",
"example": "USD",
"description": "Source currency"
},
"currencyTo": {
"type": "string",
"example": "SEK",
"description": "Target currency"
},
"rate": {
"type": "number",
"format": "double",
"example": 0.8,
"description": "Defines the exchange rate, where the currencyFrom is set to the unit currency, e.g. currencyFrom=USD, currencyTo=EUR: 1 USD = 0.8 EUR and 0.8 is the rate."
},
"rateDate": {
"type": "string",
"example": "2019-07-26",
"description": "Rate Date"
}
}
}
List of Card Account details
{
"type": "object",
"required": [
"balances",
"currency",
"maskedPan",
"name",
"product",
"resourceId",
"status",
"usage"
],
"properties": {
"balances": {
"type": "array",
"description": "Card account balances",
"items": {
"$ref": "#\/definitions\/Balance"
}
},
"creditLimit": {
"description": "Revolving limit for finance card accounts",
"$ref": "#\/definitions\/Amount"
},
"currency": {
"type": "string",
"example": "EUR, GBP, USD",
"description": "Original currency code. Code is according to ISO 4217."
},
"maskedPan": {
"type": "string",
"example": "525412******3241",
"description": "Masked PAN of latest card for account owner"
},
"name": {
"type": "string",
"example": "40141155561474",
"description": "Engagement Identifier"
},
"product": {
"type": "string",
"example": "SAS EuroBonus World MasterCard",
"description": "Product Name"
},
"resourceId": {
"type": "string",
"example": "Card Account Identifier ",
"description": "Card Account Identifier"
},
"status": {
"type": "string",
"example": "enabled\/blocked\/deleted",
"description": "Code identifying status of Card Account",
"enum": [
"enabled",
"blocked",
"deleted"
]
},
"usage": {
"type": "string",
"example": "SAS EuroBonus World MasterCard",
"description": "Type of usage"
}
}
}
{
"type": "object",
"required": [
"bookingDate",
"cardTransactionId",
"invoiced",
"originalAmount",
"proprietaryBankTransactionCode",
"transactionAmount",
"transactionDetails",
"valueDate"
],
"properties": {
"invoiced": {
"type": "boolean",
"example": false,
"description": "State of transaction."
},
"nameOnCard": {
"type": "string",
"example": "ALVIN OTTOSSON",
"description": "Cardholder name printed on card"
},
"bookingDate": {
"type": "string",
"example": "2019-07-26",
"description": "Booking date expressed as ISODate in the YYYY-MM-DD format"
},
"cardAcceptorCity": {
"type": "string",
"example": "Stockholm\/Oslo\/Helsingfors",
"description": "City where transaction occured"
},
"cardAcceptorCountryCode": {
"type": "string",
"example": "SE\/NO\/FI",
"description": "Code for name of country where transaction occured. Code is according to ISO 3166-1 alpha-2."
},
"cardTransactionId": {
"type": "string",
"example": "123456789012",
"description": "Transaction identifier"
},
"currencyMarkupPercentage": {
"type": "number",
"format": "double",
"example": 2,
"description": "Currency markup percentage"
},
"exchangeRate": {
"example": "9.85",
"description": "Exchange rate expessed as a floating point number",
"$ref": "#\/definitions\/ExchangeRate"
},
"maskedPan": {
"type": "string",
"example": "525412******3241",
"description": "Masked PAN of latest card for account owner"
},
"originalAmount": {
"example": "250.00",
"description": "Original amount",
"$ref": "#\/definitions\/Amount"
},
"proprietaryBankTransactionCode": {
"type": "string",
"example": "DISBURSEMENT\/PURCHASE..",
"description": "Type of transaction, see documentation",
"enum": [
"PAYMENT",
"DISBURSEMENT",
"CIG_PAYMENT",
"PURCHASE",
"BONUS",
"FEE",
"INTEREST",
"DISCOUNT",
"LOUNGE_VISIT",
"UNKNOWN"
]
},
"transactionAmount": {
"example": "12345.67",
"description": "Billing amount",
"$ref": "#\/definitions\/Amount"
},
"transactionDetails": {
"type": "string",
"example": "My Store",
"description": "Sales establishment or transaction specification"
},
"valueDate": {
"type": "string",
"example": "2019-07-26",
"description": "Value date expressed as ISODate in the YYYY-MM-DD format"
}
}
}
{
"type": "object",
"required": [
"amount",
"currency"
],
"properties": {
"amount": {
"type": "number",
"format": "double",
"example": 250,
"description": "Amount expressed as as floating point number"
},
"currency": {
"type": "string",
"example": "SEK\/USD",
"description": "Currency code according to ISO 4217 Alpha 3"
}
}
}
Carrier object for arrangement information
{
"type": "object",
"properties": {
"error": {
"$ref": "#\/definitions\/error"
},
"cardAccounts": {
"type": "array",
"example": "List of Card Account details",
"description": "List of Card Account details",
"items": {
"$ref": "#\/definitions\/CardAccount"
}
}
}
}
carries error information
{
"type": "object",
"properties": {
"correlationId": {
"type": "string"
},
"developerMessage": {
"type": "string"
},
"errorAttribute": {
"type": "string"
},
"errorCode": {
"type": "string"
},
"moreInformation": {
"type": "string"
},
"supportID": {
"type": "string"
},
"userMessage": {
"type": "string"
}
}
}
Carrier for transactions
{
"type": "object",
"properties": {
"error": {
"$ref": "#\/definitions\/error"
},
"transactions": {
"example": "List of Card Account details",
"description": "Linked transaction",
"$ref": "#\/definitions\/Transactions"
}
}
}
{
"type": "object",
"required": [
"balanceAmount",
"balanceType"
],
"properties": {
"balanceAmount": {
"example": "6647.28",
"description": "Balance amount",
"$ref": "#\/definitions\/Amount"
},
"balanceType": {
"type": "string",
"example": "expected=Balance composed of booked entries and pending items known at the time of calculation. \r\ninterimAvaliable=The expected balance together with the value of a pre-approved credit line that is permanently available to the user. \r\nnonInvoiced=Currently nonbilled amount",
"description": "Type of balance"
},
"creditLimitincluded": {
"type": "boolean",
"example": false,
"description": "A flag indicating if the credit limit of the corresponding account is included in the calculation of the balance, where applicable."
}
}
}