The Klarna PayIn object

Description

The Klarna PayIn object allows platforms to process payments made via Klarna.

Note – Prerequisites to using Klarna

In Production and Sandbox:

  • Your platform must be approved and activated by Klarna. See activation for details.

In Sandbox:

Attributes

Id
string

The unique identifier of the object.

Tag
string

Max. length: 255 characters
Custom data that you can add to this object.
For transactions (pay-in, transfer, payout), you can use this parameter to identify corresponding information regarding the user, transaction, or payment methods on your platform.

CreationDate
Unix timestamp

The date and time at which the object was created.

AuthorId
stringRequired

The unique identifier of the user at the source of the transaction.
Best practice: When the payout author is different from the bank account owner, the Payout AuthorId value must be different from the Bank Account UserId value as well. Otherwise, Mangopay’s Compliance team will reject the payout.

DebitedFunds
objectRequired

Information about the debited funds.

Currency
stringRequired

Allowed values: PLN

The currency of the funds.

Amount
integerRequired

An amount of money in the smallest sub-division of the currency (e.g., EUR 12.60 would be represented as 1260 whereas JPY 12 would be represented as just 12).

CreditedFunds
object

Information about the credited funds (CreditedFunds = DebitedFunds - Fees).

Currency
stringRequired

Allowed values: PLN

The currency of the funds.

Amount
integerRequired

An amount of money in the smallest sub-division of the currency (e.g., EUR 12.60 would be represented as 1260 whereas JPY 12 would be represented as just 12).

Fees
objectRequired

Information about the fees.

Currency
stringRequired

Allowed values: PLN

The currency of the fees.

Amount
integerRequired

An amount of money in the smallest sub-division of the currency (e.g., EUR 12.60 would be represented as 1260 whereas JPY 12 would be represented as just 12).

Status
string

Returned values: CREATED, SUCCEEDED, FAILED

The status of the transaction.

ResultCode
string

The code indicating the result of the operation. This information is mostly used to handle errors or for filtering purposes.

ResultMessage
string

The explanation of the result code.

ExecutionDate
Unix timestamp

The date and time at which the status changed to SUCCEEDED, indicating that the transaction occurred. The statuses CREATED and FAILED return an ExecutionDate of null.

Type
string

Returned values: PAYIN, TRANSFER, CONVERSION, PAYOUT

The type of the transaction.

Nature
array

Allowed values: REGULAR, REPUDIATION, REFUND, SETTLEMENT

The transaction natures to be taken into account.

  • REGULAR – Relative to most of the transactions (pay-ins, payouts, and transfers) in a usual workflow.
  • REPUDIATION – Automatic withdrawal of funds from the platform’s repudiation wallet as part of the dispute process (when the user has requested a chargeback).
  • REFUND – Reimbursement of a transaction to the user (pay-in refund), to a wallet (transfer refund), or of a payout (payout refund, only initiated by Mangopay).
  • SETTLEMENT – Transfer made to the repudiation wallet by the platform to settle a lost dispute.
CreditedWalletId
stringRequired

The unique identifier of the credited wallet (in the buy currency).

CreditedUserId
string

Default value: The unique identifier of the owner of the credited wallet.

The unique identifier of the user whose wallet is credited.

PaymentType
string

Returned values: KLARNA

The type of pay-in.

ExecutionType
string

Returned values: WEB, DIRECT, EXTERNAL_INSTRUCTION

The type of execution for the pay-in.

ReturnURL
stringRequired

Max. length: 255 characters
The URL to which the user is automatically returned after indicating that they have noted their Multibanco payment reference.

RedirectURL
string

The URL to which to redirect the user to complete the payment.

Caution: This variable URL is specific to each payment. You must rely on the returned URL in full (host, path, and queries) and not hardcode any part of it.

StatementDescriptor
string

Max. length: 10 characters; only alphanumeric and spaces
Custom description to appear on the user’s bank statement along with the platform name. Different banks may show more or less information. See the Customizing bank statement references article for details.

Billing
objectRequired

Information about the end user billing address.

FirstName
string

The first name of the user.

LastName
string

Max. length: 100 characters
The last name of the user.

Address
object

Information about the billing address.

AddressLine1
stringRequired

Max. length: 255 characters The first line of the address.

AddressLine2
string

Max. length: 255 characters
The second line of the address.

City
stringRequired

Max. length: 255 characters The city of the address.

Region
string

Max. length: 255 characters
Required if Country is US, CA, or MX.

The region of the address.

PostalCode
stringRequired

Max. length: 255 characters The postal code of the address. The postal code can contain the following characters: alphanumeric, dashes, and spaces.

Country
stringRequired

Format: Two-letter country code (ISO 3166-1 alpha-2 format)

The country of the address.

Shipping
object

Information about the end user’s shipping address.
The shipping address AddressLine1 must be formatted:

  • FR, UK, US: [Number][StreetName], for example: 33 Cavendish Square
  • Rest of EU: [StreetName][Number], for example: De Ruijterkade 7
    Caution: Failure to follow this formatting may result in an error.
    If no shipping address is sent, Klarna considers it to be the same as the billing address.
FirstName
string

The first name of the user.

LastName
string

Max. length: 100 characters
The last name of the user.

Address
objectRequired

Information about the shipping address.

AddressLine1
stringRequired

Max. length: 255 characters The first line of the address.

AddressLine2
string

Max. length: 255 characters
The second line of the address.

City
stringRequired

Max. length: 255 characters The city of the address.

Region
string

Max. length: 255 characters
Required if Country is US, CA, or MX.

The region of the address.

PostalCode
stringRequired

Max. length: 255 characters The postal code of the address. The postal code can contain the following characters: alphanumeric, dashes, and spaces.

Country
stringRequired

Format: Two-letter country code (ISO 3166-1 alpha-2 format)

The country of the address.

LineItems
array (object)

Information about the items purchased in the transaction. The pay-in DebitedFunds.Amount must equal all LineItems objects’ ((UnitAmount + TaxAmount) - Discount).

Name
string

The name of the item.

Quantity
integer

The quantity of the item.

UnitAmount
integer

The cost of the item, excluding tax.

TaxAmount
integer

The tax amount applied to the item.

Sku
string

The unique identifier of the line item.

Category
string

Possible values: DIGITAL_GOODS, PHYSICAL_GOODS, DISCOUNT, SHIPPING_FEE, SALES_TAX, GIFT_CARD, STORE_CREDIT, SURCHARGE

The category of the item, allowing line items of different types to be distinguished (for example, buyer protection as DIGITAL_GOODS).

Discount
integer

The discount applied to the item.

Country
stringRequired

The country in which the bank account is registered.

Culture
stringRequired

Allowed values: One of the supported languages in the ISO 639-1 format: CS, DA, DE, EL, EN, ES, FI, FR, HU, IT, NL, NO, PL, PT, SK, SV.

The language in which the payment page is to be displayed.

Email
stringRequired

Format: A valid email address
The user’s email address.

Phone
stringRequired

Format: Country code without plus symbol, followed by hash symbol (#), followed by the number; only numeric characters and hash symbol
The phone number of the end user to which the MB WAY push notification is sent to authenticate the transaction.

PaymentMethod
string

The payment option chosen by the user:

  • Pay Now (Card) – Pay now by card.
  • Pay Now (Direct Bank Transfer) – Pay now by bank wire.
  • Pay Now (Direct Debit) – Pay now by direct debit.
  • Pay Now (Klarna Bank Account) – Pay now from Klarna Bank Account (select regions only, e.g. Germany).
  • Pay in 30 days (by card) – Pay within 30 days by card.
  • Pay in 30 days – Pay within 30 days against an invoice (select regions only, e.g. Germany).
  • Slice it (3 installments) – Pay in 3 installments.
  • Slice it (Financing - X installments) – Pay via financing plan, where X is the number of monthly installments (6, 12, 24, or 36).

The options available to users depend on their region. 

Note: This parameter is not returned unless the Status is SUCCEEDED.

AdditionalData
string

Format: Serialized JSON object
The extra merchant data required by Klarna for the transaction, as described in the Klarna guide.

Reference
stringRequired

The platform’s order reference for the transaction.

ProfilingAttemptReference
string

The unique reference generated for the profiling session, used by the fraud prevention solution to produce recommendations for the transaction using the profiling data.

Note: Parameter not returned by the API. Profiling feature available on request – contact Mangopay via the Dashboard for more information.