You can make a card payment calling POST /api/v2/Smart/Transactions/{id}/start/cashless
:
POST /api/v2/Smart/Transactions/STX_3HXQQBSVK2XWNAX7ESCZH9NZY3YZAZ/start/cashless HTTP/1.1
Host: connect-testing.secuconnect.com
Authenticate: Bearer qb56tjj1bcvo9n2nj4u38k84lo
Accept: application/json
Now the payment terminal waits for the customer to authorise the payment.
This request is blocking. Secuconnect API only responds after the authorisation process has been finished or was aborted.
If everything is fine, the API responds with 200 OK
and the representation of the Smart Transaction:
HTTP/1.1 200 OK
Content-Type: application/json
...
{
"object"
:
"smart.transactions"
,
"id"
:
"STX_3HXQQBSVK2XWNAX7ESCZH9NZY3YZAZ"
,
// ...
"device_source"
: {
"object"
:
"smart.devices"
,
"id"
:
"SDV_2T23JN7KS2NVMPJ76SPZV9HGWXFHA2"
},
"device_destination"
: {
"object"
:
"smart.devices"
,
"id"
:
"SDV_N3C58PPZA2NUXX67A0ST289A6JEYA2"
},
"transactions"
: [],
"created"
:
"2021-02-25T08:47:25+01:00"
,
"updated"
:
"2021-02-25T08:48:11+01:00"
,
"status"
:
"ok"
,
// ...
"receipt"
: [
{
"type"
:
"separator"
,
"value"
: {
"caption"
:
"Kartenzahlung"
}
},
{
"type"
:
"textline"
,
"value"
: {
"text"
:
"* * Kundenbeleg * *"
,
"decoration"
: []
}
},
{
"type"
:
"textline"
,
"value"
: {
"text"
:
"MUSTERFIRMA GmbH"
,
"decoration"
: []
}
},
{
"type"
:
"textline"
,
"value"
: {
"text"
:
"Test"
,
"decoration"
: []
}
},
{
"type"
:
"space"
},
{
"type"
:
"name-value"
,
"value"
: {
"name"
:
"Datum:"
,
"value"
:
"25.02.2021"
,
"decoration"
: []
}
},
{
"type"
:
"name-value"
,
"value"
: {
"name"
:
"Uhrzeit:"
,
"value"
:
"08:46:48 Uhr"
,
"decoration"
: []
}
},
{
"type"
:
"name-value"
,
"value"
: {
"name"
:
"Beleg-Nr."
,
"value"
:
"0003"
,
"decoration"
: []
}
},
{
"type"
:
"name-value"
,
"value"
: {
"name"
:
"Trace-Nr."
,
"value"
:
"000011"
,
"decoration"
: []
}
},
{
"type"
:
"space"
},
{
"type"
:
"textline"
,
"value"
: {
"text"
:
"Kartenzahlung"
,
"decoration"
: []
}
},
{
"type"
:
"textline"
,
"value"
: {
"text"
:
"ec-Lastschrift"
,
"decoration"
: []
}
},
{
"type"
:
"space"
},
{
"type"
:
"name-value"
,
"value"
: {
"name"
:
"BLZ"
,
"value"
:
"########"
,
"decoration"
: []
}
},
{
"type"
:
"name-value"
,
"value"
: {
"name"
:
"Konto-Nr."
,
"value"
:
"######3836"
,
"decoration"
: []
}
},
{
"type"
:
"textline"
,
"value"
: {
"text"
:
"Karte 1 gültig bis ##/##"
,
"decoration"
: []
}
},
{
"type"
:
"name-value"
,
"value"
: {
"name"
:
"Terminal-ID"
,
"value"
:
"72015255"
,
"decoration"
: []
}
},
{
"type"
:
"space"
},
{
"type"
:
"name-value"
,
"value"
: {
"name"
:
"Betrag EUR"
,
"value"
:
"0,01"
,
"decoration"
: []
}
},
{
"type"
:
"space"
},
{
"type"
:
"textline"
,
"value"
: {
"text"
:
"Karte akzeptiert"
,
"decoration"
: [
"align-center"
,
"important"
]
}
}
],
"receipt_merchant"
: [
{
"type"
:
"separator"
,
"value"
: {
"caption"
:
"Kartenzahlung"
}
},
{
"type"
:
"textline"
,
"value"
: {
"text"
:
"* * Händlerbeleg * *"
,
"decoration"
: []
}
},
{
"type"
:
"textline"
,
"value"
: {
"text"
:
"MUSTERFIRMA GmbH"
,
"decoration"
: []
}
},
{
"type"
:
"textline"
,
"value"
: {
"text"
:
"Test"
,
"decoration"
: []
}
},
{
"type"
:
"space"
},
{
"type"
:
"name-value"
,
"value"
: {
"name"
:
"Datum:"
,
"value"
:
"25.02.2021"
,
"decoration"
: []
}
},
{
"type"
:
"name-value"
,
"value"
: {
"name"
:
"Uhrzeit:"
,
"value"
:
"08:46:48 Uhr"
,
"decoration"
: []
}
},
{
"type"
:
"name-value"
,
"value"
: {
"name"
:
"Beleg-Nr."
,
"value"
:
"0003"
,
"decoration"
: []
}
},
{
"type"
:
"name-value"
,
"value"
: {
"name"
:
"Trace-Nr."
,
"value"
:
"000011"
,
"decoration"
: []
}
},
{
"type"
:
"space"
},
{
"type"
:
"textline"
,
"value"
: {
"text"
:
"Kartenzahlung"
,
"decoration"
: []
}
},
{
"type"
:
"textline"
,
"value"
: {
"text"
:
"ec-Lastschrift"
,
"decoration"
: []
}
},
{
"type"
:
"space"
},
{
"type"
:
"name-value"
,
"value"
: {
"name"
:
"BLZ"
,
"value"
:
"51100"
,
"decoration"
: []
}
},
{
"type"
:
"name-value"
,
"value"
: {
"name"
:
"Konto-Nr."
,
"value"
:
"1060093836"
,
"decoration"
: []
}
},
{
"type"
:
"textline"
,
"value"
: {
"text"
:
"Karte 1 gültig bis 12/22"
,
"decoration"
: []
}
},
{
"type"
:
"name-value"
,
"value"
: {
"name"
:
"Terminal-ID"
,
"value"
:
"72015255"
,
"decoration"
: []
}
},
{
"type"
:
"space"
},
{
"type"
:
"name-value"
,
"value"
: {
"name"
:
"Betrag EUR"
,
"value"
:
"0,01"
,
"decoration"
: []
}
},
{
"type"
:
"space"
},
{
"type"
:
"textline"
,
"value"
: {
"text"
:
"Karte akzeptiert"
,
"decoration"
: [
"align-center"
,
"important"
]
}
},
{
"type"
:
"space"
},
{
"type"
:
"textline"
,
"value"
: {
"text"
:
"Unterschrift umseitig"
,
"decoration"
: []
}
}
],
"receipt_merchant_print"
:
true
,
"basket_info"
: {
"sum"
: 1,
"gratuity"
:
null
,
"currency"
:
"EUR"
},
"payment_method"
:
"cashless"
,
"receipt_number"
: 3,
// ...
}
The status
of the Smart Transaction tells whether the payment was successful:
Status | Meaning |
---|---|
| Successful card payment |
| Failed, aborted or timed out |
There are two complex fields with receipts for the customer (receipt
) and the merchant (receipt_merchant
). The merchant receipt must be preserved to show it on demand. If mentioned on it, the customer must sign the merchant receipt. This is necessary for all ELV payments (electronic direct debit) and sometimes for credit card. Another Reference section explains how to print the receipts.
The receipt_number
at the bottom of the response is needed to cancel the card transaction. This is only possible for girocard (debit card) and ELV (electronic direct debit) payments, and only before the end-of-day report.