The status field indicates the payment order’s current status. Initialized
is returned when the payment is created and still ongoing.
The request example above has this status. Paid is returned when the payer has
completed the payment successfully.
Failed is returned when a payment has failed. You will find an error message
in the failed section.
Cancelled is returned when an authorized amount has been fully cancelled.
Reversed is returned when the full amount of a sale transaction or a captured
transaction has been reversed. The transaction will now have status Reversed
instead of Paid.
It will contain fields from both the cancelled description and paid section.
Aborted is returned when the merchant has aborted the payment or if the payer
cancelled the payment in the redirect integration (on the redirect page).
Aborted
A payment order response with the status Aborted.
Response
1
2
3
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8; version=3.x
api-supported-versions: 3.x
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
{
"paymentOrder": {
"id": "/psp/paymentorders/2c3f7a3e-65ca-4493-ac93-08d9dcb313fd",
"created": "2022-01-24T10:54:05.6243371Z",
"updated": "2022-01-24T10:54:19.2679591Z",
"operation": "Purchase",
"status": "Aborted",
"currency": "SEK",
"amount": 32000,
"vatAmount": 0,
"description": "Abort test",
"initiatingSystemUserAgent": "swedbankpay-sdk-dotnet/3.0.1",
"language": "sv-SE",
"availableInstruments": [
"CreditCard",
"Invoice-PayExFinancingSe",
"Invoice-PayMonthlyInvoiceSe",
"Swish",
"CreditAccount",
"Trustly"
],
"instrumentMode": false,
"guestMode": false,
"orderItems": {
"id": "/psp/paymentorders/2c3f7a3e-65ca-4493-ac93-08d9dcb313fd/orderitems"
},
"urls": {
"id": "/psp/paymentorders/2c3f7a3e-65ca-4493-ac93-08d9dcb313fd/urls"
},
"payeeInfo": {
"id": "/psp/paymentorders/2c3f7a3e-65ca-4493-ac93-08d9dcb313fd/payeeinfo"
},
"payer": {
"id": "/psp/paymentorders/2c3f7a3e-65ca-4493-ac93-08d9dcb313fd/payers"
},
"history": {
"id": "/psp/paymentorders/2c3f7a3e-65ca-4493-ac93-08d9dcb313fd/history"
},
"failed": {
"id": "/psp/paymentorders/2c3f7a3e-65ca-4493-ac93-08d9dcb313fd/failed"
},
"aborted": {
"id": "/psp/paymentorders/2c3f7a3e-65ca-4493-ac93-08d9dcb313fd/aborted"
},
"paid": {
"id": "/psp/paymentorders/2c3f7a3e-65ca-4493-ac93-08d9dcb313fd/paid"
},
"cancelled": {
"id": "/psp/paymentorders/2c3f7a3e-65ca-4493-ac93-08d9dcb313fd/cancelled"
},
"financialTransactions": {
"id": "/psp/paymentorders/2c3f7a3e-65ca-4493-ac93-08d9dcb313fd/financialtransactions"
},
"failedAttempts": {
"id": "/psp/paymentorders/2c3f7a3e-65ca-4493-ac93-08d9dcb313fd/failedattempts"
},
"metadata": {
"id": "/psp/paymentorders/2c3f7a3e-65ca-4493-ac93-08d9dcb313fd/metadata"
}
},
"operations": [
]
}
Response fields not covered in the Initialized redirect or seamless view
responses:
operations
array
The array of operations that are possible to perform on the payment order in its current state.
As this is an aborted payment, the available operations areredirect-checkout or view-checkout, depending on the integration.
See Operations for details.
Cancelled
The cancel response is not yet converted to the new standard.
Response
1
2
3
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8; version=3.x
api-supported-versions: 3.x
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
{
"payment": "/psp/paymentorders/payments/7e6cdfc3-1276-44e9-9992-7cf4419750e1",
"cancellation": {
"id": "/psp/paymentorders/payments/7e6cdfc3-1276-44e9-9992-7cf4419750e1/cancellations/ec2a9b09-601a-42ae-8e33-a5737e1cf177",
"transaction": {
"id": "/psp/paymentorders/payments/7e6cdfc3-1276-44e9-9992-7cf4419750e1/transactions/ec2a9b09-601a-42ae-8e33-a5737e1cf177",
"created": "2022-01-31T09:49:13.7567756Z",
"updated": "2022-01-31T09:49:14.7374165Z",
"type": "Cancellation",
"state": "Completed",
"number": 71100732065,
"amount": 1500,
"vatAmount": 375,
"description": "Test Cancellation",
"payeeReference": "AB123"
}
}
}
payment
string
cancellation
object
id
string
transaction
object
The object representation of the generic transaction resource, containing information about the current transaction.
id
string
transaction resource.
created
string
updated
string
type
string
state
string
Initialized, Completed or Failed. Indicates the state of the transaction.
number
integer
The transaction number, useful when there’s need to reference the transaction in human communication. Not usable for programmatic identification of the transaction, where id should be used instead.
amount
integer
The transaction amount (including VAT, if any) entered in the lowest monetary unit of the selected currency. E.g.: 10000 = 100.00 SEK, 5000 = 50.00 SEK. The amount displayed is the final amount the payer paid for their order, including any payment method specific discounts or fees.
vatAmount
integer
The payment’s VAT (Value Added Tax) amount, entered in the lowest monetary unit of the selected currency. E.g.: 10000 = 100.00 SEK, 5000 = 50.00 SEK. The vatAmount entered will not affect the amount shown on the payment page, which only shows the total amount. This field is used to specify how much of the total amount the VAT will be. Set to 0 (zero) if there is no VAT amount charged.
description
string
payeeReference
string(30)
A unique reference from the merchant system. Set per operation to ensure an exactly-once delivery of a transactional operation. Length and content validation depends on whether the transaction.number or the payeeReference is sent to the acquirer. If Swedbank Pay handles the settlement, the transaction.number is sent to the acquirer and the payeeReference must be in the format of A-Za-z0-9 and string(30). If you handle the settlement, Swedbank Pay will send the payeeReference and it will be limited to the format of string(12). All characters must be digits. In Invoice Payments payeeReference is used as an invoice/receipt number, if the receiptReference is not defined.
Failed
The failed response is not yet converted to the new standard.
Response
1
2
3
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8; version=3.x
api-supported-versions: 3.x
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
{
"payment": "/psp/paymentorders/payments/7e6cdfc3-1276-44e9-9992-7cf4419750e1",
"failed": {
"id": "/psp/paymentorders/bc2832a7-0e0f-45f2-57d6-08d9ea4cff66/failed",
"problem": {
"type": "acquirerinsufficientfunds",
"title": "Operation failed",
"status": 403,
"detail": "Unable to complete Recurrence transaction, look at problem node!",
"problems": [
{
"name": "ExternalResponse",
"description": "REJECTED_BY_ACQUIRER_INSUFFICIENT_FUNDS-insufficient funds, response-code: 61"
}
]
}
}
}
paymentOrder
object
failed
object
id
string
The relative URL and unique identifier of the paymentorder resource . Please read about URL Usage to understand how this and other URLs should be used in your solution.
problem
object
type
string
title
string
status
integer
detail
string
problems
array
name
string
description
string
name.Initialized
Response
1
2
3
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8; version=3.x
api-supported-versions: 3.x
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
{
"paymentOrder": {
"id": "/psp/paymentorders/ca59fa8a-3423-40e5-0f77-08d9d133750b",
"created": "2022-01-07T07:58:26.1300282Z",
"updated": "2022-01-07T08:17:44.6839034Z",
"operation": "Purchase",
"status": "Initialized",
"currency": "SEK",
"amount": 1500,
"vatAmount": 375,
"description": "Test Purchase",
"initiatingSystemUserAgent": "swedbankpay-sdk-dotnet/3.0.1",
"language": "sv-SE",
"availableInstruments": [
"CreditCard",
"Invoice-PayExFinancingSe",
"Invoice-PayMonthlyInvoiceSe",
"Swish",
"CreditAccount",
"Trustly"
],
"instrumentMode": false,
"guestMode": false,
"payer": {
"id": "/psp/paymentorders/8be318c1-1caa-4db1-e2c6-08d7bf41224d/payers"
},
"orderItems": {
"id": "/psp/paymentorders/09ccd29a-7c4f-4752-9396-12100cbfecce/orderitems"
},
"history": {
"id": "/psp/paymentorders/8be318c1-1caa-4db1-e2c6-08d7bf41224d/history"
},
"failed": {
"id": "/psp/paymentorders/8be318c1-1caa-4db1-e2c6-08d7bf41224d/failed"
},
"aborted": {
"id": "/psp/paymentorders/8be318c1-1caa-4db1-e2c6-08d7bf41224d/aborted"
},
"paid": {
"id": "/psp/paymentorders/8be318c1-1caa-4db1-e2c6-08d7bf41224d/paid"
},
"cancelled": {
"id": "/psp/paymentorders/8be318c1-1caa-4db1-e2c6-08d7bf41224d/cancelled"
},
"financialTransactions": {
"id": "/psp/paymentorders/8be318c1-1caa-4db1-e2c6-08d7bf41224d/financialtransactions"
},
"failedAttempts": {
"id": "/psp/paymentorders/8be318c1-1caa-4db1-e2c6-08d7bf41224d/failedattempts"
},
"metadata": {
"id": "/psp/paymentorders/8be318c1-1caa-4db1-e2c6-08d7bf41224d/metadata"
}
},
"operations": [
{
"href": "https://api.payex.com/psp/paymentorders/222a50ca-b268-4b32-16fa-08d6d3b73224",
"rel":"update-order",
"method":"PATCH",
"contentType":"application/json"
},
{
"href": "https://api.payex.com/psp/paymentorders/222a50ca-b268-4b32-16fa-08d6d3b73224",
"rel": "abort",
"method": "PATCH",
"contentType": "application/json"
},
{
"href": "https://api.payex.com/psp/paymentorders/09ccd29a-7c4f-4752-9396-12100cbfecce",
"rel": "abort-paymentattempt",
"method": "PATCH",
"contentType": "application/json"
}
]
}
paymentOrder
object
id
string
The relative URL and unique identifier of the paymentorder resource . Please read about URL Usage to understand how this and other URLs should be used in your solution.
created
string
updated
string
operation
string
Determines the initial operation, defining the type of payment order created. Possible options are Purchase, Abort Verify, UnscheduledPurchase, Recur and Payout.
status
string
Initialized is returned when the payment is created and still ongoing. The request example above has this status.
Paid is returned when the payer has completed the payment successfully. See the
Paid section for further information.
Failed is returned when a payment has failed. You will find an error message in the failed section.
Further information here.
Cancelled is returned when an authorized amount has been fully cancelled.
See the Cancel feature section for further information.
It will contain fields from both the cancelled description and paid section.
Aborted is returned when the merchant has aborted the payment or if the payer cancelled the payment in the redirect integration (on the redirect page).
See the Abort feature section for further information.
currency
string
amount
integer
The transaction amount (including VAT, if any) entered in the lowest monetary unit of the selected currency. E.g.: 10000 = 100.00 SEK, 5000 = 50.00 SEK. The amount displayed is the final amount the payer paid for their order, including any payment method specific discounts or fees.
vatAmount
integer
The payment’s VAT (Value Added Tax) amount, entered in the lowest monetary unit of the selected currency. E.g.: 10000 = 100.00 SEK, 5000 = 50.00 SEK. The vatAmount entered will not affect the amount shown on the payment page, which only shows the total amount. This field is used to specify how much of the total amount the VAT will be. Set to 0 (zero) if there is no VAT amount charged.
description
string(40)
A textual description of the purchase. Maximum length is 40 characters.
initiatingSystemUserAgent
string
The user agent of the HTTP client making the request, reflecting the value sent in the User-Agent header with the initial POST request which created the Payment Order.
language
string
sv-SE, nb-NO, da-DK, en-US or fi-FI.
availableInstruments
array
implementation
string
Enterprise or PaymentsOnly. We ask that you don't build logic around this field's response. It is mainly for information purposes, as the implementation types might be subject to name changes. If this should happen, updated information will be available in this table.
integration
string
HostedView (Seamless View) or Redirect. This field will not be populated until the payer has opened the payment UI, and the client script has identified if Swedbank Pay or another URI is hosting the container with the payment iframe. We ask that you don't build logic around this field's response. It is mainly for information purposes, as the integration types might be subject to name changes. If this should happen, updated information will be available in this table.
instrumentMode
bool
true or false. Indicates if the payment is initialized with only one payment method available.
guestMode
bool
true or false. Indicates if the payer chose to pay as a guest or not. When using the Enterprise implementation, this is triggered by not including a payerReference or nationalIdentifier in the original payment order request.
payer
id
payer resource where information about the payer can be retrieved.
orderItems
id
orderItems resource where information about the order items can be retrieved.
history
id
history resource where information about the payment's history can be retrieved.
failed
id
failed resource where information about the failed transactions can be retrieved.
aborted
id
aborted resource where information about the aborted transactions can be retrieved.
paid
id
paid resource where information about the paid transactions can be retrieved.
cancelled
id
cancelled resource where information about the cancelled transactions can be retrieved.
financialTransactions
id
financialTransactions resource where information about the financial transactions can be retrieved.
failedAttempts
id
failedAttempts resource where information about the failed attempts can be retrieved.
metadata
id
metadata resource where information about the metadata can be retrieved.
operations
array
The array of operations that are possible to perform on the payment order in its current state.
As this is an initialized payment, the available operations areabort, update-order and redirect-checkout or view-checkout, depending on the integration.
See Operations for details.
Paid
The payment order response with status paid, and the paid resource expanded.
Please note that the main code example is of a card payment. We have included
paid resources of the remaining payment methods below the main code example.
Resource examples where details are empty indicate that no details are
available.
The wallets Apple Pay and Vipps do not return maskedPan. Please note that
while MobilePay does return this field, the value present is actually a
networkToken, which represents the PAN, but is not a PAN in itself.
Card Paid Resource
Card Response
1
2
3
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8; version=3.x
api-supported-versions: 3.x
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
{
"paymentOrder": "/psp/paymentorders/ca59fa8a-3423-40e5-0f77-08d9d133750b",
"paid": {
"id": "/psp/paymentorders/ca59fa8a-3423-40e5-0f77-08d9d133750b/paid",
"instrument": "CreditCard",
"number": 99101548603,
"payeeReference": "1641542301",
"amount": 1500,
"details": {
"nonPaymentToken": "12345678-1234-1234-1234-1234567890AB",
"externalNonPaymentToken": "1234567890",
"paymentAccountReference": "43f6b6d2cbd30c36627ec02247259",
"cardBrand": "Visa",
"cardType": "Credit",
"maskedPan": "492500******0004",
"maskedDPan": "************0004",
"expiryDate": "12/2022",
"issuerAuthorizationApprovalCode": "L00302",
"acquirerTransactionType": "STANDARD",
"acquirerStan": "302",
"acquirerTerminalId": "70101301389",
"acquirerTransactionTime": "2022-06-15T14:12:55.029Z",
"transactionInitiator": "CARDHOLDER",
"bin": "492500"
}
}
}
Apple Pay paid Resource
Please note that this is an abbreviated example. See the main paid example for
more context.
Apple Pay Response
1
2
3
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8; version=3.x
api-supported-versions: 3.x
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
{
"paymentOrder": "/psp/paymentorders/5adc265f-f87f-4313-577e-08d3dca1a26c",
"paid": {
"id": "/psp/paymentorders/1f8d409e-8d8c-4ba1-a3ab-08da8caf7918/paid",
"instrument": "ApplePay",
"number": 80100001190,
"payeeReference": "1662360210",
"transactionType": "Authorization",
"amount": 1500,
"submittedAmount": 1500,
"feeAmount": 0,
"discountAmount": 0,
"paymentTokenGenerated": false,
"details": {
"nonPaymentToken": "12345678-1234-1234-1234-1234567890AB",
"externalNonPaymentToken": "1234567890",
"cardBrand": "Visa",
"cardType": "Credit",
"maskedDPan": "************0004",
"expiryDate": "12/0023",
"issuerAuthorizationApprovalCode": "L00392",
"acquirerTransactionType": "WALLET",
"acquirerStan": "392",
"acquirerTerminalId": "80100001190",
"acquirerTransactionTime": "2022-09-05T06:45:40.322Z",
"transactionInitiator": "CARDHOLDER"
"bin": "489537"
}
}
}
Click to Pay paid Resource
Please note that this is an abbreviated example. See the main paid example for
more context.
Click to Pay Response
1
2
3
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8; version=3.x
api-supported-versions: 3.x
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
{
"paymentOrder": "/psp/paymentorders/5adc265f-f87f-4313-577e-08d3dca1a26c",
"paid": {
"id": "/psp/paymentorders/1f8d409e-8d8c-4ba1-a3ab-08da8caf7918/paid",
"instrument": "ClickToPay",
"number": 80100001190,
"payeeReference": "1662360210",
"amount": 1500,
"paymentTokenGenerated": false,
"details": {
"nonPaymentToken": "12345678-1234-1234-1234-1234567890AB",
"externalNonPaymentToken": "1234567890",
"cardBrand": "Visa",
"cardType": "Credit",
"maskedPan": "492500******0004",
"maskedDPan": "************0004",
"expiryDate": "12/0023",
"issuerAuthorizationApprovalCode": "L00392",
"acquirerTransactionType": "WALLET",
"acquirerStan": "392",
"acquirerTerminalId": "80100001190",
"acquirerTransactionTime": "2022-09-05T06:45:40.322Z",
"transactionInitiator": "CARDHOLDER"
"bin": "489537"
}
}
}
Google Pay™ paid Resource
Please note that this is an abbreviated example. See the main paid example for
more context.
Google Pay™ Response
1
2
3
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8; version=3.x
api-supported-versions: 3.x
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
{
"paymentOrder": "/psp/paymentorders/5adc265f-f87f-4313-577e-08d3dca1a26c",
"paid": {
"id": "/psp/paymentorders/1f8d409e-8d8c-4ba1-a3ab-08da8caf7918/paid",
"instrument": "GooglePay",
"number": 80100001190,
"payeeReference": "1662360210",
"amount": 1500,
"paymentTokenGenerated": false,
"details": {
"nonPaymentToken": "12345678-1234-1234-1234-1234567890AB",
"externalNonPaymentToken": "1234567890",
"cardBrand": "Visa",
"cardType": "Credit",
"maskedPan": "492500******0004",
"maskedDPan": "************0004",
"expiryDate": "12/0023",
"issuerAuthorizationApprovalCode": "L00392",
"acquirerTransactionType": "WALLET",
"acquirerStan": "392",
"acquirerTerminalId": "80100001190",
"acquirerTransactionTime": "2022-09-05T06:45:40.322Z",
"transactionInitiator": "CARDHOLDER"
"bin": "489537"
}
}
}
MobilePay paid Resource
Please note that this is an abbreviated example. See the main paid example for
more context.
MobilePay Response
1
2
3
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8; version=3.x
api-supported-versions: 3.x
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
{
"paymentOrder": "/psp/paymentorders/5adc265f-f87f-4313-577e-08d3dca1a26c",
"paid": {
"id": "/psp/paymentorders/efdcbf77-9a62-426b-a3b1-08da8caf7918/paid",
"instrument": "MobilePay",
"number": 75100106637,
"payeeReference": "1662364327",
"transactionType": "Authorization",
"amount": 1500,
"submittedAmount": 1500,
"feeAmount": 0,
"discountAmount": 0,
"paymentTokenGenerated": false,
"details": {
"nonPaymentToken": "12345678-1234-1234-1234-1234567890AB",
"externalNonPaymentToken": "1234567890",
"cardBrand": "Visa",
"maskedPan": "492500******0004",
"maskedDPan": "************0004",
"expiryDate": "12/2022",
"issuerAuthorizationApprovalCode": "018117",
"acquirerTransactionType": "MOBILEPAY",
"acquirerStan": "53889",
"acquirerTerminalId": "42",
"acquirerTransactionTime": "2022-09-05T09:54:05Z"
"bin": "489537"
}
}
}
Vipps paid Resource
Please note that this is an abbreviated example. See the main paid example for
more context.
Vipps Response
Vipps Response
1
2
3
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8; version=3.x
api-supported-versions: 3.x
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
{
"paymentOrder": "/psp/paymentorders/5adc265f-f87f-4313-577e-08d3dca1a26c",
"paid": {
"id": "/psp/paymentorders/a463b145-3278-4aa0-c4db-08da8f1813a2/paid",
"instrument": "Vipps",
"number": 99463794,
"payeeReference": "1662366424",
"amount": 1500,
"transactionType": "Authorization",
"amount": 1500,
"submittedAmount": 1500,
"feeAmount": 0,
"discountAmount": 0,
"paymentTokenGenerated": false,
"details": {
"nonPaymentToken": "12345678-1234-1234-1234-1234567890AB",
"externalNonPaymentToken": "1234567890"
"cardBrand": "Visa",
"maskedDPan": "************0004",
"acquirerTransactionType": "WALLET",
"acquirerTerminalId": "99488282",
"acquirerTransactionTime": "2022-09-05T09:54:05Z",
"transactionInitiator": "CARDHOLDER",
"bin": "489537"
}
}
}
Swish paid Resource
Please note that this is an abbreviated example. See the main paid example for
more context.
Swish Response
1
2
3
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8; version=3.x
api-supported-versions: 3.x
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
{
"paymentOrder": "/psp/paymentorders/5adc265f-f87f-4313-577e-08d3dca1a26c",
"paid": {
"id": "/psp/paymentorders/b0410cd0-61df-4548-a3ad-08da8caf7918/paid",
"instrument": "Swish",
"number": 74100413405,
"payeeReference": "1662360831",
"transactionType": "Sale",
"amount": 1500,
"submittedAmount": 1500,
"feeAmount": 0,
"discountAmount": 0,
"paymentTokenGenerated": false,
"details": {
"misidn": "+46739000001"
}
}
}
Invoice Paid Resource
Please note that this is an abbreviated example. See the main Paid example for
more context.
Invoice Response
1
2
3
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8; version=3.x
api-supported-versions: 3.x
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
{
"paymentOrder": "/psp/paymentorders/5adc265f-f87f-4313-577e-08d3dca1a26c",
"paid": {
"id": "/psp/paymentorders/05a356df-05e2-49e6-8858-08da8cb4d651/paid",
"instrument": "Invoice",
"number": 71100775379,
"payeeReference": "1662360980",
"transactionType": "Authorization",
"amount": 1500,
"submittedAmount": 1500,
"feeAmount": 0,
"discountAmount": 0,
"paymentTokenGenerated": false,
"details": {}
}
}
Installment Account Paid Resource
Please note that this is an abbreviated example. See the main Paid example for
more context.
Installment Account Response
1
2
3
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8; version=3.x
api-supported-versions: 3.x
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
{
"paymentOrder": "/psp/paymentorders/5adc265f-f87f-4313-577e-08d3dca1a26c",
"paid": {
"id": "/psp/paymentorders/39eef759-a619-4c91-885b-08da8cb4d651/paid",
"instrument": "CreditAccount",
"number": 77100038000,
"payeeReference": "1662361777",
"transactionType": "Authorization",
"amount": 1500,
"submittedAmount": 1500,
"feeAmount": 0,
"discountAmount": 0,
"paymentTokenGenerated": false,
"details": {}
}
}
Trustly Paid Resource
Please note that this is an abbreviated example. See the main Paid example for
more context.
Trustly Response
1
2
3
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8; version=3.x
api-supported-versions: 3.x
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
{
"paymentOrder": "/psp/paymentorders/5adc265f-f87f-4313-577e-08d3dca1a26c",
"paid": {
"id": "/psp/paymentorders/bf660901-93d0-4245-4e6b-08da8f165366/paid",
"instrument": "Trustly",
"number": 79100113652,
"payeeReference": "1662373401",
"orderReference": "orderReference",
"transactionType": "Sale",
"amount": 1500,
"submittedAmount": 1500,
"feeAmount": 0,
"discountAmount": 0,
"paymentTokenGenerated": false,
"details": {
"trustlyOrderId": 123456789
}
}
}
Response fields not covered in the Initialized redirect or seamless view responses:<div class="api-compact" aria-label="Response">
payment
string
paid
object
id
string
The relative URL and unique identifier of the paymentorder resource . Please read about URL Usage to understand how this and other URLs should be used in your solution.
instrument
string
capture is needed, we recommend using operations or the transactionType field.
number
integer
The transaction number, useful when there’s need to reference the transaction in human communication. Not usable for programmatic identification of the transaction, where id should be used instead.
payeeReference
string(30)
A unique reference from the merchant system. Set per operation to ensure an exactly-once delivery of a transactional operation. Length and content validation depends on whether the transaction.number or the payeeReference is sent to the acquirer. If Swedbank Pay handles the settlement, the transaction.number is sent to the acquirer and the payeeReference must be in the format of A-Za-z0-9 and string(30). If you handle the settlement, Swedbank Pay will send the payeeReference and it will be limited to the format of string(12). All characters must be digits.
transactionType
string
Authorization or Sale. Can be used to understand if there is a need for doing a capture on this payment order. Swedbank Pay recommends using the different operations to figure out if a capture is needed.
amount
integer
The transaction amount (including VAT, if any) entered in the lowest monetary unit of the selected currency. E.g.: 10000 = 100.00 SEK, 5000 = 50.00 SEK. The amount displayed is the final amount the payer paid for their order, including any payment method specific discounts or fees.
submittedAmount
integer
amount field.
feeAmount
integer
discountAmount
integer
paymentTokenGenerated
bool
true or false. Used to show if a payment token has been generated or not. Will be set to true if the checkbox enabled by EnablePaymentDetailsConsentCheckbox has been checked by the payer during a payment, otherwise false.
details
object
nonPaymentToken
string
externalNonPaymentToken
string
paymentAccountReference.
paymentAccountReference
string
paymentAccountReference will also populate the externalNonPaymentToken field.
cardType
string
Credit Card or Debit Card. Indicates the type of card used for the authorization.
maskedPan
string
maskedDPan
string
expiryDate
string
issuerAuthorizationApprovalCode
string
acquirerTransactionType
string
3DSECURE or STANDARD. Indicates the transaction type of the acquirer.
acquirerStan
string
acquirerTerminalId
string
acquirerTransactionTime
string
transactionInitiator
string
MERCHANT or CARDHOLDER.
bin
string
msisdn
string
</div>
Paid Examples With Connected Tokens
If there e.g. is a recurrence or an unscheduled (below) token connected to the payment, it will appear like this.
Recurrence Token Response
1
2
3
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8; version=3.x
api-supported-versions: 3.x
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
{
"paid": {
"id": "/psp/paymentorders/91c3ca0d-3710-40f0-0f78-08d9d133750b/paid",
"instrument": "CreditCard",
"number": 99101548605,
"payeeReference": "1641543637",
"amount": 1500,
"tokens": [
{
"type": "recurrence",
"token": "48806524-6422-4db7-9fbd-c8b81611132f",
"name": "492500******0004",
"expiryDate": "02/2023"
}
],
"details": {}
}
}
Unscheduled Token Response
1
2
3
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8; version=3.x
api-supported-versions: 3.x
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
{
"paid": {
"id": "/psp/paymentorders/9f786139-3537-4a8b-0f79-08d9d133750b/paid",
"instrument": "CreditCard",
"number": 99101548607,
"payeeReference": "1641543818",
"amount": 1500,
"tokens": [
{
"type": "Unscheduled",
"token": "6d495aac-cb2b-4d94-a5f1-577baa143f2c",
"name": "492500******0004",
"expiryDate": "02/2023"
}
],
"details": {}
}
}
Response fields not covered in the Initialized redirect or seamless view
responses:
tokens
array
type
string
payment, recurrence, transactionOnFile or unscheduled. The different types of available tokens.
token
string
guid.
name
string
expiryDate
string
Reversed
The payment order response with status equal to Reversed, and the reversed
resource expanded. Please note that the main code example is of a card reversal.
Apart from the id and number fields, the output will be inherited from the
corresponding Paid transaction. As several Reversed transactions can exist
on a single payment, the number and payerReference will be from the latest
Reversed.
We have included reversal resources of the remaining payment methods below the
main code example. Resource examples where details are empty indicate that no
details are available.
The wallets Apple Pay and Vipps do not return maskedPan. Please note that
while MobilePay does return this field, the value present is actually a
networkToken, which represents the PAN, but is not a PAN in itself.
Request
1
2
3
4
GET /psp/paymentorders/09ccd29a-7c4f-4752-9396-12100cbfecce/reversed HTTP/1.1
Host: api.externalintegration.payex.com
Authorization: Bearer <AccessToken>
Content-Type: application/json;version=3.x
Card Reversed Resource
Card Response
1
2
3
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8; version=3.x
api-supported-versions: 3.x
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
{
"paymentOrder": "/psp/paymentorders/5adc265f-f87f-4313-577e-08d3dca1a26c",
"reversed": {
"id": "/psp/paymentorders/5adc265f-f87f-4313-577e-08d3dca1a26c/reversed",
"instrument": "Creditcard",
"number": 1234567890,
"payeeReference": "CD123",
"orderReference": "AB1234",
"transactionType": "Authorization",
"amount": 1500,
"submittedAmount": 1500,
"feeAmount": 0,
"discountAmount": 0,
"tokens": [
{
"type": "payment",
"token": "12345678-1234-1234-1234-1234567890AB",
"name": "4925xxxxxx000004",
"expiryDate" : "mm/yyyy"
},
{
"type": "recurrence",
"token": "87654321-4321-4321-4321-BA0987654321",
"name": "4925xxxxxx000004",
"expiryDate" : "mm/yyyy"
},
{
"type": "unscheduled",
"token": "87654321-4321-4321-4321-BA0987654321",
"name": "4925xxxxxx000004",
"expiryDate" : "mm/yyyy"
},
{
"type": "transactionsOnFile",
"token": "87654321-4321-4321-4321-BA0987654321",
"name": "4925xxxxxx000004",
"expiryDate" : "mm/yyyy"
}
],
"details": {
"nonPaymentToken": "12345678-1234-1234-1234-1234567890AB",
"externalNonPaymentToken": "1234567890",
"paymentAccountReference": "43f6b6d2cbd30c36627ec02247259",
"cardBrand": "Visa",
"cardType": "Credit",
"maskedPan": "492500******0004",
"maskedDPan": "************0004",
"expiryDate": "12/2022",
"issuerAuthorizationApprovalCode": "L00302",
"acquirerTransactionType": "STANDARD",
"acquirerStan": "302",
"acquirerTerminalId": "70101301389",
"acquirerTransactionTime": "2022-06-15T14:12:55.029Z",
"transactionInitiator": "CARDHOLDER",
"bin": "492500"
}
}
}
Apple Pay Reversed Resource
Please note that this is an abbreviated example. See the main Reversed example
for more context.
Apple Pay Response
1
2
3
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8; version=3.x
api-supported-versions: 3.x
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
{
"paymentOrder": "/psp/paymentorders/5adc265f-f87f-4313-577e-08d3dca1a26c",
"reversed": {
"id": "/psp/paymentorders/1f8d409e-8d8c-4ba1-a3ab-08da8caf7918/reversed",
"instrument": "ApplePay",
"number": 80100001190,
"payeeReference": "1662360210",
"transactionType": "Authorization",
"amount": 1500,
"submittedAmount": 1500,
"feeAmount": 0,
"discountAmount": 0,
"details": {
"cardBrand": "Visa",
"cardType": "Credit",
"maskedDPan": "************0004",
"expiryDate": "12/2023",
"issuerAuthorizationApprovalCode": "L00392",
"acquirerTransactionType": "WALLET",
"acquirerStan": "392",
"acquirerTerminalId": "80100001190",
"acquirerTransactionTime": "2022-09-05T06:45:40.322Z",
"transactionInitiator": "CARDHOLDER",
"bin": "492500"
}
}
}
Click to Pay Reversed Resource
Please note that this is an abbreviated example. See the main Reversed example
for more context.
Click to Pay Response
1
2
3
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8; version=3.x
api-supported-versions: 3.x
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
{
"paymentOrder": "/psp/paymentorders/5adc265f-f87f-4313-577e-08d3dca1a26c",
"reversed": {
"id": "/psp/paymentorders/1f8d409e-8d8c-4ba1-a3ab-08da8caf7918/reversed",
"instrument": "ClickToPay",
"number": 80100001190,
"payeeReference": "1662360210",
"amount": 1500,
"details": {
"nonPaymentToken": "12345678-1234-1234-1234-1234567890AB",
"externalNonPaymentToken": "1234567890",
"cardBrand": "Visa",
"cardType": "Credit",
"maskedPan": "492500******0004",
"maskedDPan": "************0004",
"expiryDate": "12/0023",
"issuerAuthorizationApprovalCode": "L00392",
"acquirerTransactionType": "WALLET",
"acquirerStan": "392",
"acquirerTerminalId": "80100001190",
"acquirerTransactionTime": "2022-09-05T06:45:40.322Z",
"transactionInitiator": "CARDHOLDER"
"bin": "489537"
}
}
}
Google Pay™ Reversed Resource
Please note that this is an abbreviated example. See the main Reversed example
for more context.
Google Pay™ Response
1
2
3
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8; version=3.x
api-supported-versions: 3.x
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
{
"paymentOrder": "/psp/paymentorders/5adc265f-f87f-4313-577e-08d3dca1a26c",
"reversed": {
"id": "/psp/paymentorders/1f8d409e-8d8c-4ba1-a3ab-08da8caf7918/reversed",
"instrument": "GooglePay",
"number": 80100001190,
"payeeReference": "1662360210",
"amount": 1500,
"details": {
"nonPaymentToken": "12345678-1234-1234-1234-1234567890AB",
"externalNonPaymentToken": "1234567890",
"cardBrand": "Visa",
"cardType": "Credit",
"maskedPan": "492500******0004",
"maskedDPan": "************0004",
"expiryDate": "12/0023",
"issuerAuthorizationApprovalCode": "L00392",
"acquirerTransactionType": "WALLET",
"acquirerStan": "392",
"acquirerTerminalId": "80100001190",
"acquirerTransactionTime": "2022-09-05T06:45:40.322Z",
"transactionInitiator": "CARDHOLDER"
"bin": "489537"
}
}
}
MobilePay Reversed Resource
Please note that this is an abbreviated example. See the main Reversed example
for more context.
MobilePay Response
1
2
3
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8; version=3.x
api-supported-versions: 3.x
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
{
"paymentOrder": "/psp/paymentorders/5adc265f-f87f-4313-577e-08d3dca1a26c",
"reversed": {
"id": "/psp/paymentorders/efdcbf77-9a62-426b-a3b1-08da8caf7918/reversed",
"instrument": "MobilePay",
"number": 75100106637,
"payeeReference": "1662364327",
"transactionType": "Authorization",
"amount": 1500,
"submittedAmount": 1500,
"feeAmount": 0,
"discountAmount": 0,
"details": {
"nonPaymentToken": "12345678-1234-1234-1234-1234567890AB",
"externalNonPaymentToken": "1234567890",
"cardBrand": "Visa",
"maskedDPan": "************0004",
"expiryDate": "12/2022",
"issuerAuthorizationApprovalCode": "018117",
"acquirerTransactionType": "MOBILEPAY",
"acquirerStan": "53889",
"acquirerTerminalId": "42",
"acquirerTransactionTime": "2022-09-05T09:54:05Z",
"bin": "489537"
}
}
}
Vipps Reversed Resource
Please note that this is an abbreviated example. See the main Reversed example
for more context.
Vipps Response
1
2
3
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8; version=3.x
api-supported-versions: 3.x
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
{
"paymentOrder": "/psp/paymentorders/5adc265f-f87f-4313-577e-08d3dca1a26c",
"reversed": {
"id": "/psp/paymentorders/a463b145-3278-4aa0-c4db-08da8f1813a2/reversed",
"instrument": "Vipps",
"number": 99463794,
"payeeReference": "1662366424",
"transactionType": "Authorization",
"amount": 1500,
"submittedAmount": 1500,
"feeAmount": 0,
"discountAmount": 0,
"details": {
"nonPaymentToken": "12345678-1234-1234-1234-1234567890AB",
"externalNonPaymentToken": "1234567890",
"cardBrand": "Visa",
"maskedDPan": "************0004",
"acquirerTransactionType": "WALLET",
"acquirerTerminalId": "99488282",
"acquirerTransactionTime": "2022-09-05T09:54:05Z",
"transactionInitiator": "CARDHOLDER",
"bin": "489537"
}
}
}
Swish Reversed Resource
Please note that this is an abbreviated example. See the main Reversed example
for more context.
Swish Response
1
2
3
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8; version=3.x
api-supported-versions: 3.x
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
{
"paymentOrder": "/psp/paymentorders/5adc265f-f87f-4313-577e-08d3dca1a26c",
"reversed": {
"id": "/psp/paymentorders/b0410cd0-61df-4548-a3ad-08da8caf7918/reversed",
"instrument": "Swish",
"number": 74100413405,
"payeeReference": "1662360831",
"transactionType": "Sale",
"amount": 1500,
"submittedAmount": 1500,
"feeAmount": 0,
"discountAmount": 0,
"details": {
"misidn": "+46739000001"
}
}
}
Invoice Reversed Resource
Please note that this is an abbreviated example. See the main Reversed example
for more context.
Invoice Response
1
2
3
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8; version=3.x
api-supported-versions: 3.x
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
{
"paymentOrder": "/psp/paymentorders/5adc265f-f87f-4313-577e-08d3dca1a26c",
"reversed": {
"id": "/psp/paymentorders/05a356df-05e2-49e6-8858-08da8cb4d651/reversed",
"instrument": "Invoice",
"number": 71100775379,
"payeeReference": "1662360980",
"transactionType": "Authorization",
"amount": 1500,
"submittedAmount": 1500,
"feeAmount": 0,
"discountAmount": 0,
"details": {}
}
}
Installment Account Reversed Resource
Please note that this is an abbreviated example. See the main Reversed example
for more context.
Installment Account Response
1
2
3
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8; version=3.x
api-supported-versions: 3.x
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
{
"paymentOrder": "/psp/paymentorders/5adc265f-f87f-4313-577e-08d3dca1a26c",
"reversed": {
"id": "/psp/paymentorders/39eef759-a619-4c91-885b-08da8cb4d651/reversed",
"instrument": "CreditAccount",
"number": 77100038000,
"payeeReference": "1662361777",
"transactionType": "Authorization",
"amount": 1500,
"submittedAmount": 1500,
"feeAmount": 0,
"discountAmount": 0,
"details": {}
}
}
Trustly Reversed Resource
Please note that this is an abbreviated example. See the main Reversed example
for more context.
Trustly Response
1
2
3
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8; version=3.x
api-supported-versions: 3.x
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
{
"paymentOrder": "/psp/paymentorders/5adc265f-f87f-4313-577e-08d3dca1a26c",
"reversed": {
"id": "/psp/paymentorders/bf660901-93d0-4245-4e6b-08da8f165366/reversed",
"instrument": "Trustly",
"number": 79100113652,
"payeeReference": "1662373401",
"orderReference": "orderReference",
"transactionType": "Sale",
"amount": 1500,
"submittedAmount": 1500,
"feeAmount": 0,
"discountAmount": 0,
"details": {
"trustlyOrderId": 123456789
}
}
}
paymentOrder
object
reversed
object
id
string
The relative URL and unique identifier of the paymentorder resource . Please read about URL Usage to understand how this and other URLs should be used in your solution.
instrument
string
capture is needed, we recommend using operations or the transactionType field.
number
integer
The paymentorder number, useful when there’s need to reference the paymentorder in human communication. Not usable for programmatic identification of the paymentorder, where id should be used instead.
payeeReference
string(30)
A unique reference from the merchant system. Set per operation to ensure an exactly-once delivery of a transactional operation. Length and content validation depends on whether the transaction.number or the payeeReference is sent to the acquirer. If Swedbank Pay handles the settlement, the transaction.number is sent to the acquirer and the payeeReference must be in the format of A-Za-z0-9 and string(30). If you handle the settlement, Swedbank Pay will send the payeeReference and it will be limited to the format of string(12). All characters must be digits.
orderReference
string(50)
transactionType
string
Authorization or Sale. Can be used to understand if there is a need for doing a capture on this payment order.
Swedbank Pay recommends using the different operations to figure out if a capture is needed.
amount
integer
The transaction amount (including VAT, if any) entered in the lowest monetary unit of the selected currency. E.g.: 10000 = 100.00 SEK, 5000 = 50.00 SEK. The amount displayed is the final amount the payer paid for their order, including any payment method specific discounts or fees.
submittedAmount
integer
amount field.
feeAmount
integer
discountAmount
integer
tokens
array
type
string
payment, recurrence, transactionOnFile or unscheduled. The different types of available tokens.
token
string
guid.
name
string
expiryDate
string
details
object
nonPaymentToken
string
externalNonPaymentToken
string
paymentAccountReference.
paymentAccountReference
string
paymentAccountReference will also populate the externalNonPaymentToken field.
cardType
string
Credit Card or Debit Card. Indicates the type of card used for the authorization.
maskedPan
string
maskedDPan
string
expiryDate
string
issuerAuthorizationApprovalCode
string
acquirerTransactionType
string
3DSECURE or STANDARD. Indicates the transaction type of the acquirer.
acquirerStan
string
acquirerTerminalId
string
acquirerTransactionTime
string
transactionInitiator
string
MERCHANT or CARDHOLDER.