Executing an Bankgirot/Plusgirot Transfer

When initiating an Bankgirot/Plusgirot transfer through the transfer flow several pieces of information have to be specified in the payload.

If the session in which the transfer flow is started is connected to a bank account that is not located in Sweden the transfer flow will fail. Starting a transfer flow with the transfer_method set to se_bankgirot or se_plusgirot will force the customer to select a Bank capable of performing such transfers.

Undocumented Fields follow the documentation for SEPA Transfers. Fields not listed in the defined schema are not available for this type of transfer and will be ignored by the API.

{
    "iban": ?String,
    "account_id": ?String,
    "account_number": ?String,
    "allowed_accounts": ?AllowedAccounts,
    "amount": Amount,
    "reference": String,
    "merchant_category_code": ?String,
    "purpose_code": ?String,
    "transfer_method": Enum<"se_bankgirot" | "se_plusgirot">,
    "to": {
        "bankgirot_plusgirot_number": String,
        "holder_name": String
    }
}

transfer_method Enum, required

The transfer_method property sets the type of the transfer being made:

  • choose se_bankgirot for starting a Bankgiro Transfer
  • choose se_plusgirot for starting a Plusgiro Transfer

to.bankgirot_plusgirot_number String, required

The BankGirot/Plusgirot number of the receiving account.

This property is validated with regard to correctness and structure, therefore only numbers and - are allowed.

to.holder_name String, required

The holder name of the receiving account.

Response Structure of a successful Transfer Flow

{
    "data": {
        "state": Enum<'PROCESSING', 'CONSUMER_INPUT_NEEDED', 'ABORTED', 'EXCEPTION', 'FINISHED'>,
        "result": ?{
            "type": String,
            "adjusted_date": ?String,
            "adjusted_reference": ?String,
            "adjusted_merchand_category_code": ?String,
            "adjusted_purpose_code": ?String,
            "bank_transfer_id": ?String,
            "transfer_id": String,
            "transfer_token": ?String,
            "amount": Amount,
            "transfer_state": Enum<'AUTHORIZED', 'COMPLETED_DEBTOR', 'COMPLETED_CREDITOR'>,
            "bank_transfer_state": ?String,
            "from": ?Account,
            "to": {
                "bankgirot_plusgirot_number": String,
                "holder_name": String
            },
            "to_fee": ?Amount,
            "transfer_method": Enum<'SE_BANKGIROT','SE_PLUSGIROT'>
            "authentication_method": Enum<'UNKNOWN', 'NONE', 'CHIPTAN_MANUAL', 'SMARTTAN', 'SMARTTAN_PLUS', 'APP_TAN'>
        }
    }
}

data.result.to.bankgirot_plusgirot_number String, always present

The BankGirot/Plusgirot number of the receiving account.

data.result.to.holder_name String, always present

The holder name of the receiving account.

data.result.authentication_method Enum, always present

The authentication_method property indicates which authentication method was used for the transfer. Most of them involve transaction numbers (TANs) that are one-time passwords (OTPs) used for authentication.

A full list of all available authentication_methods and their description can be found in the documentation for SEPA Transfer, but for Plusgirot and Bankgirot the most common ones are:

  • CHIPTAN_MANUAL

  • SMARTTAN

  • SMARTTAN_PLUS

  • APP_TAN

  • UNKNOWN

  • NONE

Example Response for a successful Transfer Flow

{
    "data": {
        "state": "FINISHED",
        "result": {
            "type": "transfer",
            "adjusted_date": "2018-10-30",
            "adjusted_reference": "reference accepted by bank",
            "adjusted_merchant_category_code": "5967",
            "adjusted_purpose_code": "BONU",
            "bank_transfer_id": "internal_bank_identifier-123",
            "transfer_id": "jlufj5a5u6d0i37ur3uh9fvfgpvp6et7",
            "transfer_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ0cmFuc2Zlcl90b2tlbiI6InRyYW5zZmVyMTIzNDU2Nzg5MCJ9.YcdKaz2hRyW1wPqH8bYka4EF7dVkferaNexzk7PfHnQ",
            "amount": {
                "amount": 1234,
                "currency": "EUR"
            },
            "transfer_state": "AUTHORIZED",
            "from": {
                "id": "123e4567-e89b-12d3-a456-426655440000",
                "alias": "checkkonto",
                "account_number": "36429278893",
                "iban": "SE0964137185236429278893",
                "holder_name": "Nisse i Hökarängen",
                "holder_address": {
                    "street_address": "Överhogdal 397",
                    "street_address2": "2",
                    "postalcode": "280 20",
                    "city": "Bjärnum",
                    "region": "Scania",
                    "country": "SE"
                },
                "bank_code": "51091700",
                "bic": "NDEASESS",
                "bank_name": "NORDEA BANK AB (PUBL)",
                "bank_address": {
                    "street_address": "Hamngatan 10",
                    "street_address2": "2",
                    "postalcode": "105 71",
                    "city": "Stockholm",
                    "region": "Stockholm",
                    "country": "SE"
                },
                "transfer_type": "FULL",
                "account_type": "DEFAULT",
                "balance": {
                    "amount": 12345,
                    "currency": "EUR"
                }
            },
            "to": {
                "bankgirot_plusgirot_number": "1111324",
                "holder_name": "Medelsvensson"
            },
            "to_fee": {
                "amount": 12345,
                "currency": "EUR"
            },
            "transfer_method": "SE_BANKGIROT",
            "authentication_method": "APP_TAN"
        }
    }
}

results matching ""

    No results matching ""