pcp-server-ruby-sdk 1.0.0 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (54) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +28 -0
  3. data/README.md +9 -3
  4. data/api-definition.yaml +4803 -0
  5. data/lib/PCP-server-Ruby-SDK/endpoints/checkout_api_client.rb +24 -0
  6. data/lib/PCP-server-Ruby-SDK/endpoints/payment_execution_api_client.rb +47 -0
  7. data/lib/PCP-server-Ruby-SDK/endpoints/payment_information_api_client.rb +27 -2
  8. data/lib/PCP-server-Ruby-SDK/models/action_type.rb +34 -0
  9. data/lib/PCP-server-Ruby-SDK/models/api_error.rb +1 -1
  10. data/lib/PCP-server-Ruby-SDK/models/avs_result.rb +52 -0
  11. data/lib/PCP-server-Ruby-SDK/models/bank_account_information.rb +17 -5
  12. data/lib/PCP-server-Ruby-SDK/models/bank_payout_method_specific_input.rb +198 -0
  13. data/lib/PCP-server-Ruby-SDK/models/business_relation.rb +30 -0
  14. data/lib/PCP-server-Ruby-SDK/models/capture_output.rb +45 -41
  15. data/lib/PCP-server-Ruby-SDK/models/card_fraud_results.rb +3 -2
  16. data/lib/PCP-server-Ruby-SDK/models/card_recurrence_details.rb +5 -2
  17. data/lib/PCP-server-Ruby-SDK/models/customer.rb +21 -6
  18. data/lib/PCP-server-Ruby-SDK/models/customer_account.rb +51 -0
  19. data/lib/PCP-server-Ruby-SDK/models/financing_payment_method_specific_output.rb +43 -40
  20. data/lib/PCP-server-Ruby-SDK/models/merchant_action.rb +3 -2
  21. data/lib/PCP-server-Ruby-SDK/models/mobile_payment_method_specific_input.rb +16 -33
  22. data/lib/PCP-server-Ruby-SDK/models/mobile_payment_three_dsecure.rb +185 -0
  23. data/lib/PCP-server-Ruby-SDK/models/order_line_details_input.rb +12 -6
  24. data/lib/PCP-server-Ruby-SDK/models/{payment_product320_specific_input.rb → pause_payment_request.rb} +13 -31
  25. data/lib/PCP-server-Ruby-SDK/models/pause_payment_response.rb +192 -0
  26. data/lib/PCP-server-Ruby-SDK/models/payee.rb +212 -0
  27. data/lib/PCP-server-Ruby-SDK/models/payment_event.rb +14 -14
  28. data/lib/PCP-server-Ruby-SDK/models/payment_execution.rb +39 -5
  29. data/lib/PCP-server-Ruby-SDK/models/payment_information_refund_request.rb +212 -0
  30. data/lib/PCP-server-Ruby-SDK/models/payment_information_refund_response.rb +202 -0
  31. data/lib/PCP-server-Ruby-SDK/models/payment_information_response.rb +40 -25
  32. data/lib/PCP-server-Ruby-SDK/models/payment_instructions.rb +222 -0
  33. data/lib/PCP-server-Ruby-SDK/models/payment_product302_specific_input.rb +232 -0
  34. data/lib/PCP-server-Ruby-SDK/models/payout_output.rb +28 -24
  35. data/lib/PCP-server-Ruby-SDK/models/payout_response.rb +6 -25
  36. data/lib/PCP-server-Ruby-SDK/models/recurring_payment_sequence_indicator.rb +30 -0
  37. data/lib/PCP-server-Ruby-SDK/models/redirect_payment_product840_specific_input.rb +14 -4
  38. data/lib/PCP-server-Ruby-SDK/models/refresh_payment_request.rb +192 -0
  39. data/lib/PCP-server-Ruby-SDK/models/refresh_type.rb +30 -0
  40. data/lib/PCP-server-Ruby-SDK/models/sepa_transfer_payment_product_772_specific_input.rb +192 -0
  41. data/lib/PCP-server-Ruby-SDK/models/status_value.rb +12 -10
  42. data/lib/PCP-server-Ruby-SDK/queries/get_checkouts_query.rb +3 -1
  43. data/lib/PCP-server-Ruby-SDK/transformer/apple_pay_transformer.rb +2 -2
  44. data/lib/PCP-server-Ruby-SDK/version.rb +1 -1
  45. data/lib/PCP-server-Ruby-SDK.rb +24 -2
  46. data/package-lock.json +174 -245
  47. data/package.json +1 -1
  48. data/scripts.sh +7 -14
  49. data/spec/endpoints/checkout_api_client_spec.rb +51 -0
  50. data/spec/endpoints/payment_execution_api_client_spec.rb +102 -0
  51. data/spec/endpoints/payment_information_api_client_spec.rb +52 -0
  52. data/spec/transformer/apple_pay_transformer_spec.rb +1 -1
  53. data/spec/utils/server_meta_info_spec.rb +2 -2
  54. metadata +24 -7
@@ -0,0 +1,4803 @@
1
+ openapi: "3.0.3"
2
+
3
+ info:
4
+ version: 1.35.0
5
+ title: "Commerce Platform API"
6
+ description: |
7
+ RESTful API for the creation of Commerce Cases with Checkouts and the execution of Payments.
8
+
9
+ servers:
10
+ - url: "https://commerce-api.payone.com"
11
+ description: Production URL
12
+ - url: "https://preprod.commerce-api.payone.com"
13
+ description: Pre-Production URL
14
+
15
+ tags:
16
+ - name: CommerceCase
17
+ description: Resource for the operations on Commerce Cases.
18
+ - name: Checkout
19
+ description: Resource for the operations on Checkouts.
20
+ - name: OrderManagementCheckoutActions
21
+ description: Order Management Checkout Actions allow operations on the items of a shopping cart. Requires ORDER_MANAGEMENT as allowedPaymentActions.
22
+ - name: PaymentExecution
23
+ description: Resource for operations on Payment Executions. Requires PAYMENT_EXECUTION as allowedPaymentActions.
24
+ - name: PaymentInformation
25
+ description: Resource for operations on Payment Information.
26
+
27
+ paths:
28
+ '/v1/{merchantId}/commerce-cases':
29
+ post:
30
+ summary: Create a Commerce Case
31
+ description: |-
32
+ This endpoint can be used to create a Commerce Case in combination with a Checkout and an Order. A Commerce Case
33
+ is a container for multiple Checkouts and can be directly linked to one customer. The Order can either be
34
+ directly executed or the paymentMethodSpecificInput can also be stored for a later execution over the
35
+ OrderManagementCheckoutActions or Payment Execution endpoint.
36
+ tags:
37
+ - CommerceCase
38
+ operationId: createCommerceCase
39
+ parameters:
40
+ - $ref: '#/components/parameters/merchantIdPath'
41
+ requestBody:
42
+ required: true
43
+ content:
44
+ application/json:
45
+ schema:
46
+ $ref: '#/components/schemas/CreateCommerceCaseRequest'
47
+ responses:
48
+ '201':
49
+ x-nullable: true
50
+ description: |-
51
+ The response contains the references to the Commerce Case and the Checkout and if autoExecuteOrder was set
52
+ to true the payment response.
53
+ content:
54
+ application/json:
55
+ schema:
56
+ $ref: '#/components/schemas/CreateCommerceCaseResponse'
57
+ '202':
58
+ x-nullable: true
59
+ description: |-
60
+ The response contains the references to the Commerce case and the Checkout. Status code 202 will be returned
61
+ if the creation of a Commerce Case and Checkout was successful but the payment was not.
62
+ content:
63
+ application/json:
64
+ schema:
65
+ $ref: '#/components/schemas/CreateCommerceCaseResponse'
66
+ '400':
67
+ x-nullable: true
68
+ description: Commerce Case not found.
69
+ content:
70
+ application/json:
71
+ schema:
72
+ $ref: '#/components/schemas/ErrorResponse'
73
+ get:
74
+ summary: Get a list of Commerce Cases based on Search Parameters
75
+ description: |
76
+ This endpoint will provide a list of Commerce Cases based on the provided criteria.
77
+ Not all parameters are required to be set.
78
+ Results will be returned in descending creation time per default.
79
+ tags:
80
+ - CommerceCase
81
+ operationId: getCommerceCases
82
+ parameters:
83
+ - $ref: '#/components/parameters/merchantIdPath'
84
+ - $ref: '#/components/parameters/offset'
85
+ - $ref: '#/components/parameters/size'
86
+ - $ref: '#/components/parameters/fromDate'
87
+ - $ref: '#/components/parameters/toDate'
88
+ - $ref: '#/components/parameters/commerceCaseIdQuery'
89
+ - $ref: '#/components/parameters/merchantReference'
90
+ - $ref: '#/components/parameters/merchantCustomerId'
91
+ - $ref: '#/components/parameters/includeCheckoutStatus'
92
+ - $ref: '#/components/parameters/includePaymentChannel'
93
+ responses:
94
+ '200':
95
+ x-nullable: true
96
+ description: |
97
+ The response contains all Commerce Cases and Checkouts that match with the provided criteria.
98
+ An empty list will be returned if no criteria was provided.
99
+ content:
100
+ application/json:
101
+ schema:
102
+ $ref: '#/components/schemas/CommerceCasesResponse'
103
+ '400':
104
+ x-nullable: true
105
+ description: Exception when requesting Checkouts with unknown parameters.
106
+ content:
107
+ application/json:
108
+ schema:
109
+ $ref: '#/components/schemas/ErrorResponse'
110
+ '/v1/{merchantId}/commerce-cases/{commerceCaseId}':
111
+ get:
112
+ summary: Get Commerce Case Details
113
+ description: This endpoint can be used to get a specific Commerce Case and all linked Checkouts.
114
+ tags:
115
+ - CommerceCase
116
+ operationId: getCommerceCase
117
+ parameters:
118
+ - $ref: '#/components/parameters/merchantIdPath'
119
+ - $ref: '#/components/parameters/commerceCaseIdPath'
120
+ responses:
121
+ '200':
122
+ x-nullable: true
123
+ description: The response contains the Commerce Case and all linked Checkout.
124
+ content:
125
+ application/json:
126
+ schema:
127
+ $ref: '#/components/schemas/CommerceCaseResponse'
128
+ '404':
129
+ x-nullable: true
130
+ description: Checkout not found.
131
+ content:
132
+ application/json:
133
+ schema:
134
+ $ref: '#/components/schemas/ErrorResponse'
135
+ patch:
136
+ summary: Modify an existing Commerce Case.
137
+ description: This endpoint can be used to update or modify the customer object of a Commerce Case.
138
+ tags:
139
+ - CommerceCase
140
+ operationId: updateCommerceCase
141
+ parameters:
142
+ - $ref: '#/components/parameters/merchantIdPath'
143
+ - $ref: '#/components/parameters/commerceCaseIdPath'
144
+ requestBody:
145
+ required: true
146
+ content:
147
+ application/json:
148
+ schema:
149
+ $ref: '#/components/schemas/PatchCommerceCaseRequest'
150
+ responses:
151
+ '204':
152
+ x-nullable: true
153
+ description: The Commerce Case was updated successfully.
154
+ '400':
155
+ x-nullable: true
156
+ description: |-
157
+ The request was malformed or was missing required data. When a required property was missing the error
158
+ message will indicate which property caused the error.
159
+ content:
160
+ application/json:
161
+ schema:
162
+ $ref: '#/components/schemas/ErrorResponse'
163
+ '404':
164
+ x-nullable: true
165
+ description: Commerce Case not found.
166
+ content:
167
+ application/json:
168
+ schema:
169
+ $ref: '#/components/schemas/ErrorResponse'
170
+ '503':
171
+ x-nullable: true
172
+ description: Service unavailable.
173
+ content:
174
+ application/json:
175
+ schema:
176
+ $ref: '#/components/schemas/ErrorResponse'
177
+ '/v1/{merchantId}/commerce-cases/{commerceCaseId}/checkouts/{checkoutId}/order':
178
+ post:
179
+ summary: Creates an Order that will automatially execute a Payment
180
+ description: |
181
+ This endpoint can be used to create an Order that automatically executes a payment for the respective Checkout.
182
+ The Order request requires items within the ShoppingCart and can be made for a partial or the entire
183
+ ShoppingCart of a Checkout.
184
+ tags:
185
+ - OrderManagementCheckoutActions
186
+ operationId: createOrder
187
+ parameters:
188
+ - $ref: '#/components/parameters/merchantIdPath'
189
+ - $ref: '#/components/parameters/commerceCaseIdPath'
190
+ - $ref: '#/components/parameters/checkoutIdPath'
191
+ requestBody:
192
+ required: true
193
+ content:
194
+ application/json:
195
+ schema:
196
+ $ref: '#/components/schemas/OrderRequest'
197
+ responses:
198
+ '201':
199
+ x-nullable: true
200
+ description: The order request was successfully processed and a payment object was created.
201
+ content:
202
+ application/json:
203
+ schema:
204
+ $ref: '#/components/schemas/OrderResponse'
205
+ '400':
206
+ x-nullable: true
207
+ description: |-
208
+ The request was malformed or was missing required data. When a required property was missing the error
209
+ message will point out which property caused the error.
210
+ content:
211
+ application/json:
212
+ schema:
213
+ $ref: '#/components/schemas/ErrorResponse'
214
+ '402':
215
+ x-nullable: true
216
+ description: The payment was declined by a 3rd party (acquirer, payment processor, etc.)
217
+ content:
218
+ application/json:
219
+ schema:
220
+ $ref: '#/components/schemas/ErrorResponse'
221
+ '403':
222
+ x-nullable: true
223
+ description: You are not allowed to access the service or account or your API authentication failed.
224
+ content:
225
+ application/json:
226
+ schema:
227
+ $ref: '#/components/schemas/ErrorResponse'
228
+ '404':
229
+ x-nullable: true
230
+ description: Payment not found
231
+ content:
232
+ application/json:
233
+ schema:
234
+ $ref: '#/components/schemas/ErrorResponse'
235
+ '409':
236
+ x-nullable: true
237
+ description: Conflict
238
+ content:
239
+ application/json:
240
+ schema:
241
+ $ref: '#/components/schemas/ErrorResponse'
242
+ '502':
243
+ x-nullable: true
244
+ description: |-
245
+ Any 5XX response points to something that went wrong on our end. This could also be that the system was
246
+ unable to route the transaction to an appropriate acquirer/3rd party. Another reason for such a response
247
+ is when the 3rd party's response could not be understood.
248
+ content:
249
+ application/json:
250
+ schema:
251
+ $ref: '#/components/schemas/ErrorResponse'
252
+ '503':
253
+ x-nullable: true
254
+ description: Service unavailable
255
+ content:
256
+ application/json:
257
+ schema:
258
+ $ref: '#/components/schemas/ErrorResponse'
259
+ '/v1/{merchantId}/commerce-cases/{commerceCaseId}/checkouts/{checkoutId}/complete-order':
260
+ post:
261
+ summary: Complete an Order
262
+ description: |-
263
+ For PAYONE Secured Installment (paymentProductId 3391) a two-step process is required.
264
+ The first step is creating an Order, the second step is completing it by calling this API endpoint.
265
+ tags:
266
+ - OrderManagementCheckoutActions
267
+ operationId: completeOrder
268
+ parameters:
269
+ - $ref: '#/components/parameters/merchantIdPath'
270
+ - $ref: '#/components/parameters/commerceCaseIdPath'
271
+ - $ref: '#/components/parameters/checkoutIdPath'
272
+ requestBody:
273
+ content:
274
+ application/json:
275
+ schema:
276
+ $ref: '#/components/schemas/CompleteOrderRequest'
277
+ required: true
278
+ responses:
279
+ 200:
280
+ description: The Order was successfully completed.
281
+ content:
282
+ application/json:
283
+ schema:
284
+ $ref: '#/components/schemas/CompletePaymentResponse'
285
+ 400:
286
+ description: Incorrect input data
287
+ content:
288
+ application/json:
289
+ schema:
290
+ $ref: '#/components/schemas/ErrorResponse'
291
+ 402:
292
+ description: The payment was declined by a 3rd party (acquirer, payment processor, etc.)
293
+ content:
294
+ application/json:
295
+ schema:
296
+ $ref: '#/components/schemas/ErrorResponse'
297
+ 403:
298
+ description: You are not allowed to access the service or account or your API authentication failed.
299
+ content:
300
+ application/json:
301
+ schema:
302
+ $ref: '#/components/schemas/ErrorResponse'
303
+ 409:
304
+ description: Complete is not allowed
305
+ content:
306
+ application/json:
307
+ schema:
308
+ $ref: '#/components/schemas/ErrorResponse'
309
+ 422:
310
+ description: The request was well-formed but was unable to be processed due to semantic errors
311
+ content:
312
+ application/json:
313
+ schema:
314
+ $ref: '#/components/schemas/ErrorResponse'
315
+ 500:
316
+ description: Internal server exception
317
+ content:
318
+ application/json:
319
+ schema:
320
+ $ref: '#/components/schemas/ErrorResponse'
321
+ 502:
322
+ description: Any 5XX response points to something that went wrong on our
323
+ end. This could also be that the system was unable to route the transaction
324
+ to an appropriate acquirer/3rd party. Another reason for such a response
325
+ is when the 3rd party's response could not be understood.
326
+ content:
327
+ application/json:
328
+ schema:
329
+ $ref: '#/components/schemas/ErrorResponse'
330
+ 503:
331
+ description: Service unavailable
332
+ content:
333
+ application/json:
334
+ schema:
335
+ $ref: '#/components/schemas/ErrorResponse'
336
+ '/v1/{merchantId}/commerce-cases/{commerceCaseId}/checkouts/{checkoutId}/deliver':
337
+ post:
338
+ summary: Mark items of a Checkout as delivered and automatically capture the payment for the items
339
+ description: |
340
+ This endpoint can be used to mark items from a Checkout as delivered and to automatically capture the payments
341
+ for those items.
342
+ The return can only be done for Checkouts with status COMPLETED, BILLED or CHARGEBACKED and the items have to
343
+ be in the status ORDERED.
344
+ If the payment has already been captured (in case of a SALE), the deliver request will only update the item
345
+ status.
346
+ tags:
347
+ - OrderManagementCheckoutActions
348
+ operationId: deliverOrder
349
+ parameters:
350
+ - $ref: '#/components/parameters/merchantIdPath'
351
+ - $ref: '#/components/parameters/commerceCaseIdPath'
352
+ - $ref: '#/components/parameters/checkoutIdPath'
353
+ requestBody:
354
+ required: true
355
+ content:
356
+ application/json:
357
+ schema:
358
+ $ref: '#/components/schemas/DeliverRequest'
359
+ responses:
360
+ '201':
361
+ x-nullable: true
362
+ description: The deliver was successfully created.
363
+ content:
364
+ application/json:
365
+ schema:
366
+ $ref: '#/components/schemas/DeliverResponse'
367
+ '400':
368
+ x-nullable: true
369
+ description: |-
370
+ The request was malformed or was missing required data. When a required property was missing the error
371
+ message will point out which property caused the error.
372
+ content:
373
+ application/json:
374
+ schema:
375
+ $ref: '#/components/schemas/ErrorResponse'
376
+ '403':
377
+ x-nullable: true
378
+ description: You are not allowed to access the service or account or your API authentication failed.
379
+ content:
380
+ application/json:
381
+ schema:
382
+ $ref: '#/components/schemas/ErrorResponse'
383
+ '404':
384
+ x-nullable: true
385
+ description: |-
386
+ The most common cause for this response is that the Checkout status was not PENDING_COMPLETION, BILLED or
387
+ CHARGEBACKED.
388
+ content:
389
+ application/json:
390
+ schema:
391
+ $ref: '#/components/schemas/ErrorResponse'
392
+ '/v1/{merchantId}/commerce-cases/{commerceCaseId}/checkouts/{checkoutId}/return':
393
+ post:
394
+ summary: Mark items of a Checkout as returned and automatically refund the payment for the items
395
+ description: |
396
+ This endpoint can be used to mark items from a Checkout as returned and will automatically refund the payments
397
+ for those items.
398
+ The return can only be done for Checkouts with status BILLED or CHARGEBACKED and the items have to be in the
399
+ status DELIVERED.
400
+ tags:
401
+ - OrderManagementCheckoutActions
402
+ operationId: returnOrder
403
+ parameters:
404
+ - $ref: '#/components/parameters/merchantIdPath'
405
+ - $ref: '#/components/parameters/commerceCaseIdPath'
406
+ - $ref: '#/components/parameters/checkoutIdPath'
407
+ requestBody:
408
+ required: false
409
+ content:
410
+ application/json:
411
+ schema:
412
+ $ref: '#/components/schemas/ReturnRequest'
413
+ responses:
414
+ '201':
415
+ x-nullable: true
416
+ description: The return was successfully executed.
417
+ content:
418
+ application/json:
419
+ schema:
420
+ $ref: '#/components/schemas/ReturnResponse'
421
+ '400':
422
+ x-nullable: true
423
+ description: |-
424
+ The request was malformed or was missing required data. When a required property was missing the error
425
+ message will indicate which property caused the error.
426
+ content:
427
+ application/json:
428
+ schema:
429
+ $ref: '#/components/schemas/ErrorResponse'
430
+ '403':
431
+ x-nullable: true
432
+ description: You are not allowed to access the service or account or your API authentication failed.
433
+ content:
434
+ application/json:
435
+ schema:
436
+ $ref: '#/components/schemas/ErrorResponse'
437
+ '404':
438
+ x-nullable: true
439
+ description: |-
440
+ The most common cause for this response is that the Checkout status was not PENDING_COMPLETION, BILLED or
441
+ CHARGEBACKED.
442
+ content:
443
+ application/json:
444
+ schema:
445
+ $ref: '#/components/schemas/ErrorResponse'
446
+ '/v1/{merchantId}/commerce-cases/{commerceCaseId}/checkouts/{checkoutId}/cancel':
447
+ post:
448
+ summary: Mark items of a Checkout as cancelled and automatically cancel the payment for the items
449
+ description: |-
450
+ This endpoint can be used to mark items from a Checkout as cancelled and reverse the payment associated with
451
+ this Checkout.
452
+ The Cancel endpoint can be used to cancel a full or partial order.
453
+ The Cancel request will mark all or (for cancelType PARTIAL) the provided items as CANCELLED, and – in case of
454
+ an existing authorization – will reverse the payment.
455
+
456
+ In the light of card payments, reversing an authorization that is not needed will prevent you from having to pay
457
+ a fee/penalty for unused authorization requests.
458
+ Whilst scheme regulations require that acquirers and PSPs support authorization reversals, there are no rules
459
+ towards issuers mandating them to process the reversal advice.
460
+ Therefore, there is no guarantee the authorization hold is released.
461
+ The authorization reversal can only be performed by the card issuer, and under no circumstances will we be
462
+ responsible for performing the authorization reversal.
463
+
464
+ The cancellationReason is mandatory for BNPL payment methods (paymentProductId 3390, 3391 and 3392). For other
465
+ payment methods the cancellationReason is not mandatory but can be used for reporting and reconciliation
466
+ purposes.
467
+ tags:
468
+ - OrderManagementCheckoutActions
469
+ operationId: cancelOrder
470
+ parameters:
471
+ - $ref: '#/components/parameters/merchantIdPath'
472
+ - $ref: '#/components/parameters/commerceCaseIdPath'
473
+ - $ref: '#/components/parameters/checkoutIdPath'
474
+ requestBody:
475
+ required: false
476
+ content:
477
+ application/json:
478
+ schema:
479
+ $ref: '#/components/schemas/CancelRequest'
480
+ responses:
481
+ '200':
482
+ x-nullable: true
483
+ description: |-
484
+ The payment has been cancelled. Some acquirers/issuers will provide some feedback in case a reversal of the
485
+ authorization has been performed.
486
+ content:
487
+ application/json:
488
+ schema:
489
+ $ref: '#/components/schemas/CancelResponse'
490
+ '400':
491
+ x-nullable: true
492
+ description: Incorrect input data
493
+ content:
494
+ application/json:
495
+ schema:
496
+ $ref: '#/components/schemas/ErrorResponse'
497
+ '402':
498
+ x-nullable: true
499
+ description: Payment required
500
+ content:
501
+ application/json:
502
+ schema:
503
+ $ref: '#/components/schemas/ErrorResponse'
504
+ '403':
505
+ x-nullable: true
506
+ description: You are not allowed to access the service or account or your API authentication failed.
507
+ content:
508
+ application/json:
509
+ schema:
510
+ $ref: '#/components/schemas/ErrorResponse'
511
+ '404':
512
+ x-nullable: true
513
+ description: Payment was not found
514
+ content:
515
+ application/json:
516
+ schema:
517
+ $ref: '#/components/schemas/ErrorResponse'
518
+ '409':
519
+ x-nullable: true
520
+ description: Cancellation is not allowed because payment is closed
521
+ content:
522
+ application/json:
523
+ schema:
524
+ $ref: '#/components/schemas/ErrorResponse'
525
+ '500':
526
+ x-nullable: true
527
+ description: Internal server exception
528
+ content:
529
+ application/json:
530
+ schema:
531
+ $ref: '#/components/schemas/ErrorResponse'
532
+ '/v1/{merchantId}/commerce-cases/{commerceCaseId}/checkouts':
533
+ post:
534
+ summary: Add a Checkout to an existing Commerce Case
535
+ description: |-
536
+ This endpoint can be used to add a new Checkout in combination with an Order to an existing Commerce Case. The
537
+ Order can either be directly executed or the paymentMethodSpecificInput can also be stored for a later execution
538
+ over the OrderManagementCheckout Action or Payment Execution endpoint.
539
+ tags:
540
+ - Checkout
541
+ operationId: createCheckout
542
+ parameters:
543
+ - $ref: '#/components/parameters/merchantIdPath'
544
+ - $ref: '#/components/parameters/commerceCaseIdPath'
545
+ requestBody:
546
+ required: true
547
+ content:
548
+ application/json:
549
+ schema:
550
+ $ref: '#/components/schemas/CreateCheckoutRequest'
551
+ responses:
552
+ '201':
553
+ x-nullable: true
554
+ description: The response contains the reference of the Checkout and possible the response for the payment.
555
+ content:
556
+ application/json:
557
+ schema:
558
+ $ref: '#/components/schemas/CreateCheckoutResponse'
559
+ '202':
560
+ x-nullable: true
561
+ description: |-
562
+ The response contains the reference of the Checkout. But the Payment Execution was not successful.
563
+ content:
564
+ application/json:
565
+ schema:
566
+ $ref: '#/components/schemas/CreateCheckoutResponse'
567
+ '400':
568
+ x-nullable: true
569
+ description: Payment not found.
570
+ content:
571
+ application/json:
572
+ schema:
573
+ $ref: '#/components/schemas/ErrorResponse'
574
+ '/v1/{merchantId}/checkouts':
575
+ get:
576
+ summary: Get a list of Checkouts based on Search Parameters
577
+ description: |
578
+ This endpoint will provide a list of Checkouts based on the provided criteria.
579
+ Not all parameters are required to be set.
580
+ Results will be returned in descending creation time per default.
581
+ Only up to the first 10,000 results will be returned.
582
+ tags:
583
+ - Checkout
584
+ operationId: getCheckouts
585
+ parameters:
586
+ - $ref: '#/components/parameters/merchantIdPath'
587
+ - $ref: '#/components/parameters/offset'
588
+ - $ref: '#/components/parameters/size'
589
+ - $ref: '#/components/parameters/fromDate'
590
+ - $ref: '#/components/parameters/toDate'
591
+ - $ref: '#/components/parameters/fromCheckoutAmount'
592
+ - $ref: '#/components/parameters/toCheckoutAmount'
593
+ - $ref: '#/components/parameters/fromOpenAmount'
594
+ - $ref: '#/components/parameters/toOpenAmount'
595
+ - $ref: '#/components/parameters/fromCollectedAmount'
596
+ - $ref: '#/components/parameters/toCollectedAmount'
597
+ - $ref: '#/components/parameters/fromCancelledAmount'
598
+ - $ref: '#/components/parameters/toCancelledAmount'
599
+ - $ref: '#/components/parameters/fromRefundAmount'
600
+ - $ref: '#/components/parameters/toRefundAmount'
601
+ - $ref: '#/components/parameters/fromChargebackAmount'
602
+ - $ref: '#/components/parameters/toChargebackAmount'
603
+ - $ref: '#/components/parameters/checkoutIdQuery'
604
+ - $ref: '#/components/parameters/merchantReference'
605
+ - $ref: '#/components/parameters/merchantCustomerId'
606
+ - $ref: '#/components/parameters/includePaymentProductId'
607
+ - $ref: '#/components/parameters/includeCheckoutStatus'
608
+ - $ref: '#/components/parameters/includeExtendedCheckoutStatus'
609
+ - $ref: '#/components/parameters/includePaymentChannel'
610
+ - $ref: '#/components/parameters/paymentReference'
611
+ - $ref: '#/components/parameters/paymentId'
612
+ - $ref: '#/components/parameters/firstName'
613
+ - $ref: '#/components/parameters/surname'
614
+ - $ref: '#/components/parameters/email'
615
+ - $ref: '#/components/parameters/phoneNumber'
616
+ - $ref: '#/components/parameters/dateOfBirth'
617
+ - $ref: '#/components/parameters/companyInformation'
618
+ - $ref: '#/components/parameters/terminalId'
619
+ - $ref: '#/components/parameters/reportingToken'
620
+ responses:
621
+ '200':
622
+ x-nullable: true
623
+ description: |
624
+ The response containing all found Checkouts for the provided criteria.
625
+ content:
626
+ application/json:
627
+ schema:
628
+ $ref: '#/components/schemas/CheckoutsResponse'
629
+ '400':
630
+ x-nullable: true
631
+ description: Exception when requesting Checkouts with given parameters.
632
+ content:
633
+ application/json:
634
+ schema:
635
+ $ref: '#/components/schemas/ErrorResponse'
636
+ '/v1/{merchantId}/commerce-cases/{commerceCaseId}/checkouts/{checkoutId}':
637
+ get:
638
+ summary: Get Checkout Details
639
+ description: This endpoint can be used to get a Checkout.
640
+ tags:
641
+ - Checkout
642
+ operationId: getCheckout
643
+ parameters:
644
+ - $ref: '#/components/parameters/merchantIdPath'
645
+ - $ref: '#/components/parameters/commerceCaseIdPath'
646
+ - $ref: '#/components/parameters/checkoutIdPath'
647
+ responses:
648
+ '200':
649
+ x-nullable: true
650
+ description: The response contains the Checkout.
651
+ content:
652
+ application/json:
653
+ schema:
654
+ $ref: '#/components/schemas/CheckoutResponse'
655
+ '404':
656
+ x-nullable: true
657
+ description: Checkout not found
658
+ content:
659
+ application/json:
660
+ schema:
661
+ $ref: '#/components/schemas/ErrorResponse'
662
+ patch:
663
+ summary: Modify a Checkout
664
+ description: This endpoint can be used to update or modify the data of a Checkout.
665
+ tags:
666
+ - Checkout
667
+ operationId: updateCheckout
668
+ parameters:
669
+ - $ref: '#/components/parameters/merchantIdPath'
670
+ - $ref: '#/components/parameters/commerceCaseIdPath'
671
+ - $ref: '#/components/parameters/checkoutIdPath'
672
+ requestBody:
673
+ required: true
674
+ content:
675
+ application/json:
676
+ schema:
677
+ $ref: '#/components/schemas/PatchCheckoutRequest'
678
+ responses:
679
+ '204':
680
+ x-nullable: true
681
+ description: The Checkout is updated successfully.
682
+ '400':
683
+ x-nullable: true
684
+ description: Payment not found.
685
+ content:
686
+ application/json:
687
+ schema:
688
+ $ref: '#/components/schemas/ErrorResponse'
689
+ '409':
690
+ x-nullable: true
691
+ description: Conflict
692
+ content:
693
+ application/json:
694
+ schema:
695
+ $ref: '#/components/schemas/ErrorResponse'
696
+ delete:
697
+ summary: Delete a Checkout
698
+ description: This endpoint can be used to delete an unused Checkout.
699
+ tags:
700
+ - Checkout
701
+ operationId: deleteCheckout
702
+ parameters:
703
+ - $ref: '#/components/parameters/merchantIdPath'
704
+ - $ref: '#/components/parameters/commerceCaseIdPath'
705
+ - $ref: '#/components/parameters/checkoutIdPath'
706
+ responses:
707
+ '204':
708
+ x-nullable: true
709
+ description: The Checkout was successfully deleted.
710
+ '403':
711
+ x-nullable: true
712
+ description: You are not allowed to delete the Checkout
713
+ content:
714
+ application/json:
715
+ schema:
716
+ $ref: '#/components/schemas/ErrorResponse'
717
+ '404':
718
+ x-nullable: true
719
+ description: The Checkout could not be found
720
+ content:
721
+ application/json:
722
+ schema:
723
+ $ref: '#/components/schemas/ErrorResponse'
724
+ '/v1/{merchantId}/commerce-cases/{commerceCaseId}/checkouts/{checkoutId}/payment-executions':
725
+ post:
726
+ summary: Create a Payment
727
+ description: |-
728
+ This endpoint can be used to create a payment for a specific payment method. The amount of the payment cannot
729
+ exceed the overall Checkout amount.
730
+ OrderManagementActions will be impossible after using a PaymentExecution endpoint.
731
+ tags:
732
+ - PaymentExecution
733
+ operationId: createPayment
734
+ parameters:
735
+ - $ref: '#/components/parameters/merchantIdPath'
736
+ - $ref: '#/components/parameters/commerceCaseIdPath'
737
+ - $ref: '#/components/parameters/checkoutIdPath'
738
+ requestBody:
739
+ required: true
740
+ content:
741
+ application/json:
742
+ schema:
743
+ $ref: '#/components/schemas/PaymentExecutionRequest'
744
+ responses:
745
+ '201':
746
+ x-nullable: true
747
+ description: The payment request was successfully processed and a payment object was created.
748
+ content:
749
+ application/json:
750
+ schema:
751
+ $ref: '#/components/schemas/CreatePaymentResponse'
752
+ '400':
753
+ x-nullable: true
754
+ description: |-
755
+ The request was malformed or was missing required data. When a required property was missing the error
756
+ message will point out which property caused the error.
757
+ content:
758
+ application/json:
759
+ schema:
760
+ $ref: '#/components/schemas/ErrorResponse'
761
+ '402':
762
+ x-nullable: true
763
+ description: The payment was declined by a 3rd party (acquirer, payment processor, etc.)
764
+ content:
765
+ application/json:
766
+ schema:
767
+ $ref: '#/components/schemas/ErrorResponse'
768
+ '403':
769
+ x-nullable: true
770
+ description: You are not allowed to access the service or account or your API authentication failed.
771
+ content:
772
+ application/json:
773
+ schema:
774
+ $ref: '#/components/schemas/ErrorResponse'
775
+ '404':
776
+ x-nullable: true
777
+ description: Payment not found
778
+ content:
779
+ application/json:
780
+ schema:
781
+ $ref: '#/components/schemas/ErrorResponse'
782
+ '409':
783
+ x-nullable: true
784
+ description: Conflict
785
+ content:
786
+ application/json:
787
+ schema:
788
+ $ref: '#/components/schemas/ErrorResponse'
789
+ '502':
790
+ x-nullable: true
791
+ description: |-
792
+ Any 5XX response points to something that went wrong on our end. This could also be that the system was
793
+ unable to route the transaction to an appropriate acquirer/3rd party. Another reason for such a response
794
+ is when the 3rd party's response could not be understood.
795
+ content:
796
+ application/json:
797
+ schema:
798
+ $ref: '#/components/schemas/ErrorResponse'
799
+ '503':
800
+ x-nullable: true
801
+ description: Service unavailable
802
+ content:
803
+ application/json:
804
+ schema:
805
+ $ref: '#/components/schemas/ErrorResponse'
806
+ '/v1/{merchantId}/commerce-cases/{commerceCaseId}/checkouts/{checkoutId}/payment-executions/{paymentExecutionId}/capture':
807
+ post:
808
+ summary: Capture a Payment
809
+ description: |-
810
+ This endpoint can be used to capture authorized amounts of a payment. The Capture can only be done for Checkouts
811
+ with status COMPLETED, BILLED or CHARGEBACKED.
812
+ OrderManagementActions will be impossible after using a PaymentExecution endpoint.
813
+ It is possible to perform multiple partial captures by providing an amount that is lower than the total
814
+ authorized amount.
815
+
816
+ The cancellationReason is mandatory for BNPL payment methods (paymentProductId 3390, 3391 and 3392) if isFinal
817
+ is set to true and the amount of the Capture is lower than the authorized amount.
818
+ For other payment methods the cancellationReason is not mandatory in this case but can be used for reporting and
819
+ reconciliation purposes.
820
+ tags:
821
+ - PaymentExecution
822
+ operationId: capturePaymentExecution
823
+ parameters:
824
+ - $ref: '#/components/parameters/merchantIdPath'
825
+ - $ref: '#/components/parameters/commerceCaseIdPath'
826
+ - $ref: '#/components/parameters/checkoutIdPath'
827
+ - $ref: '#/components/parameters/paymentExecutionId'
828
+ requestBody:
829
+ required: true
830
+ content:
831
+ application/json:
832
+ schema:
833
+ $ref: '#/components/schemas/CapturePaymentRequest'
834
+ responses:
835
+ '201':
836
+ x-nullable: true
837
+ description: The Capture was successfully created.
838
+ content:
839
+ application/json:
840
+ schema:
841
+ $ref: '#/components/schemas/CapturePaymentResponse'
842
+ '400':
843
+ x-nullable: true
844
+ description: |-
845
+ The request was malformed or was missing required data. When a required property was missing the error
846
+ message will point out which property caused the error.
847
+ content:
848
+ application/json:
849
+ schema:
850
+ $ref: '#/components/schemas/ErrorResponse'
851
+ '403':
852
+ x-nullable: true
853
+ description: You are not allowed to access the service or account or your API authentication failed.
854
+ content:
855
+ application/json:
856
+ schema:
857
+ $ref: '#/components/schemas/ErrorResponse'
858
+ '404':
859
+ x-nullable: true
860
+ description: |-
861
+ The most common cause for this response is that the Checkout status was not PENDING_COMPLETION, BILLED or
862
+ CHARGEBACKED.
863
+ content:
864
+ application/json:
865
+ schema:
866
+ $ref: '#/components/schemas/ErrorResponse'
867
+ '/v1/{merchantId}/commerce-cases/{commerceCaseId}/checkouts/{checkoutId}/payment-executions/{paymentExecutionId}/cancel':
868
+ post:
869
+ summary: Cancel a Payment
870
+ description: |-
871
+ This endpoint can be used to reverse the payment associated with this Checkout. The Cancel is only possible for
872
+ the entire amount of the payment and not partial payments.
873
+ OrderManagementActions will be impossible after using a PaymentExecution endpoint.
874
+
875
+ In the light of card payments, reversing an authorization that is not needed will prevent you from having to pay
876
+ a fee/penalty for unused authorization requests.
877
+ Whilst scheme regulations require that acquirers and PSPs support authorization reversals, there are no rules
878
+ towards issuers mandating them to process the reversal advice.
879
+ Therefore, there is no guarantee the authorization hold is released.
880
+ The authorization reversal can only be performed by the card issuer, and under no circumstances will we be
881
+ responsible for performing the authorization reversal.
882
+
883
+ The cancellationReason is mandatory for BNPL payment methods (paymentProductId 3390, 3391 and 3392). For other
884
+ payment methods the cancellationReason is not mandatory but can be used for reporting and reconciliation
885
+ purposes.
886
+ tags:
887
+ - PaymentExecution
888
+ operationId: cancelPaymentExecution
889
+ parameters:
890
+ - $ref: '#/components/parameters/merchantIdPath'
891
+ - $ref: '#/components/parameters/commerceCaseIdPath'
892
+ - $ref: '#/components/parameters/checkoutIdPath'
893
+ - $ref: '#/components/parameters/paymentExecutionId'
894
+ requestBody:
895
+ required: true
896
+ content:
897
+ application/json:
898
+ schema:
899
+ $ref: '#/components/schemas/CancelPaymentRequest'
900
+ responses:
901
+ '200':
902
+ x-nullable: true
903
+ description: |-
904
+ The payment has been cancelled. Some acquirers/issuers will provide some feedback in case a reversal of the
905
+ authorization has been performed.
906
+ content:
907
+ application/json:
908
+ schema:
909
+ $ref: '#/components/schemas/CancelPaymentResponse'
910
+ '400':
911
+ x-nullable: true
912
+ description: Incorrect input data
913
+ content:
914
+ application/json:
915
+ schema:
916
+ $ref: '#/components/schemas/ErrorResponse'
917
+ '402':
918
+ x-nullable: true
919
+ description: Payment required
920
+ content:
921
+ application/json:
922
+ schema:
923
+ $ref: '#/components/schemas/ErrorResponse'
924
+ '403':
925
+ x-nullable: true
926
+ description: You are not allowed to access the service or account or your API authentication failed.
927
+ content:
928
+ application/json:
929
+ schema:
930
+ $ref: '#/components/schemas/ErrorResponse'
931
+ '404':
932
+ x-nullable: true
933
+ description: Payment was not found
934
+ content:
935
+ application/json:
936
+ schema:
937
+ $ref: '#/components/schemas/ErrorResponse'
938
+ '409':
939
+ x-nullable: true
940
+ description: Cancellation is not allowed because payment is closed
941
+ content:
942
+ application/json:
943
+ schema:
944
+ $ref: '#/components/schemas/ErrorResponse'
945
+ '500':
946
+ x-nullable: true
947
+ description: Internal server exception
948
+ content:
949
+ application/json:
950
+ schema:
951
+ $ref: '#/components/schemas/ErrorResponse'
952
+ '/v1/{merchantId}/commerce-cases/{commerceCaseId}/checkouts/{checkoutId}/payment-executions/{paymentExecutionId}/refund':
953
+ post:
954
+ summary: Refund a Payment
955
+ description: |-
956
+ This endpoint can be used to refund a payment for the associated Checkout. The Refund can only be done for
957
+ Checkouts with status BILLED or CHARGEBACKED.
958
+ OrderManagementActions will be impossible after using a PaymentExecution endpoint.
959
+ tags:
960
+ - PaymentExecution
961
+ operationId: refundPaymentExecution
962
+ parameters:
963
+ - $ref: '#/components/parameters/merchantIdPath'
964
+ - $ref: '#/components/parameters/commerceCaseIdPath'
965
+ - $ref: '#/components/parameters/checkoutIdPath'
966
+ - $ref: '#/components/parameters/paymentExecutionId'
967
+ requestBody:
968
+ required: true
969
+ content:
970
+ application/json:
971
+ schema:
972
+ $ref: '#/components/schemas/RefundRequest'
973
+ responses:
974
+ '201':
975
+ x-nullable: true
976
+ description: The Refund was successfully created.
977
+ content:
978
+ application/json:
979
+ schema:
980
+ $ref: '#/components/schemas/RefundPaymentResponse'
981
+ '400':
982
+ x-nullable: true
983
+ description: |-
984
+ The request was malformed or was missing required data. When a required property was missing the error
985
+ message will point out which property caused the error.
986
+ content:
987
+ application/json:
988
+ schema:
989
+ $ref: '#/components/schemas/RefundErrorResponse'
990
+ '403':
991
+ x-nullable: true
992
+ description: You are not allowed to access the service or account or your API authentication failed.
993
+ content:
994
+ application/json:
995
+ schema:
996
+ $ref: '#/components/schemas/ErrorResponse'
997
+ '404':
998
+ x-nullable: true
999
+ description: The most common cause for this response id that the payment was not in a cancelable state.
1000
+ content:
1001
+ application/json:
1002
+ schema:
1003
+ $ref: '#/components/schemas/RefundErrorResponse'
1004
+ '/v1/{merchantId}/commerce-cases/{commerceCaseId}/checkouts/{checkoutId}/payment-executions/{paymentExecutionId}/complete':
1005
+ post:
1006
+ summary: Complete a Payment
1007
+ description: |-
1008
+ For PAYONE Secured Installment (paymentProductId 3391) a two-step process is required.
1009
+ The first step is creating a Payment, the second step is completing it by calling this API endpoint.
1010
+ OrderManagementActions will be impossible after using a PaymentExecution endpoint.
1011
+ tags:
1012
+ - PaymentExecution
1013
+ operationId: completePayment
1014
+ parameters:
1015
+ - $ref: '#/components/parameters/merchantIdPath'
1016
+ - $ref: '#/components/parameters/commerceCaseIdPath'
1017
+ - $ref: '#/components/parameters/checkoutIdPath'
1018
+ - $ref: '#/components/parameters/paymentExecutionId'
1019
+ requestBody:
1020
+ content:
1021
+ application/json:
1022
+ schema:
1023
+ $ref: '#/components/schemas/CompletePaymentRequest'
1024
+ required: true
1025
+ responses:
1026
+ 200:
1027
+ description: The completion was successful.
1028
+ content:
1029
+ application/json:
1030
+ schema:
1031
+ $ref: '#/components/schemas/CompletePaymentResponse'
1032
+ 400:
1033
+ description: Incorrect input data
1034
+ content:
1035
+ application/json:
1036
+ schema:
1037
+ $ref: '#/components/schemas/ErrorResponse'
1038
+ 402:
1039
+ description: The payment was declined by a 3rd party (acquirer, payment processor, etc.)
1040
+ content:
1041
+ application/json:
1042
+ schema:
1043
+ $ref: '#/components/schemas/ErrorResponse'
1044
+ 403:
1045
+ description: You are not allowed to access the service or account or your API authentication failed.
1046
+ content:
1047
+ application/json:
1048
+ schema:
1049
+ $ref: '#/components/schemas/ErrorResponse'
1050
+ 409:
1051
+ description: Complete is not allowed
1052
+ content:
1053
+ application/json:
1054
+ schema:
1055
+ $ref: '#/components/schemas/ErrorResponse'
1056
+ 422:
1057
+ description: The request was well-formed but was unable to be processed due to semantic errors
1058
+ content:
1059
+ application/json:
1060
+ schema:
1061
+ $ref: '#/components/schemas/ErrorResponse'
1062
+ 500:
1063
+ description: Internal server exception
1064
+ content:
1065
+ application/json:
1066
+ schema:
1067
+ $ref: '#/components/schemas/ErrorResponse'
1068
+ 502:
1069
+ description: Any 5XX response points to something that went wrong on our
1070
+ end. This could also be that the system was unable to route the transaction
1071
+ to an appropriate acquirer/3rd party. Another reason for such a response
1072
+ is when the 3rd party's response could not be understood.
1073
+ content:
1074
+ application/json:
1075
+ schema:
1076
+ $ref: '#/components/schemas/ErrorResponse'
1077
+ 503:
1078
+ description: Service unavailable
1079
+ content:
1080
+ application/json:
1081
+ schema:
1082
+ $ref: '#/components/schemas/ErrorResponse'
1083
+ '/v1/{merchantId}/commerce-cases/{commerceCaseId}/checkouts/{checkoutId}/payment-executions/{paymentExecutionId}/pause':
1084
+ post:
1085
+ summary: Pause a Payment for selected payment methods
1086
+ description: |-
1087
+ Defers next dunning step-up after a consumer has announced to send
1088
+ back a shipped order. Merchant intends to do a REFUND call soon.
1089
+ OrderManagementActions will be impossible after using a PaymentExecution endpoint.
1090
+
1091
+ Currently only applicable for PAYONE Buy Now, Pay Later (BNPL).
1092
+
1093
+ * 3390 - PAYONE Secured Invoice
1094
+ * 3391 - PAYONE Secured Installment
1095
+ * 3392 - PAYONE Secured Direct Debit
1096
+ tags:
1097
+ - PaymentExecution
1098
+ operationId: pausePayment
1099
+ parameters:
1100
+ - $ref: '#/components/parameters/merchantIdPath'
1101
+ - $ref: '#/components/parameters/commerceCaseIdPath'
1102
+ - $ref: '#/components/parameters/checkoutIdPath'
1103
+ - $ref: '#/components/parameters/paymentExecutionId'
1104
+ requestBody:
1105
+ content:
1106
+ application/json:
1107
+ schema:
1108
+ $ref: '#/components/schemas/PausePaymentRequest'
1109
+ responses:
1110
+ 200:
1111
+ description: The pause was successful.
1112
+ content:
1113
+ application/json:
1114
+ schema:
1115
+ $ref: '#/components/schemas/PausePaymentResponse'
1116
+ 400:
1117
+ description: Incorrect input data
1118
+ content:
1119
+ application/json:
1120
+ schema:
1121
+ $ref: '#/components/schemas/ErrorResponse'
1122
+ 402:
1123
+ description: The payment was declined by a 3rd party (acquirer, payment
1124
+ processor, etc.)
1125
+ content:
1126
+ application/json:
1127
+ schema:
1128
+ $ref: '#/components/schemas/ErrorResponse'
1129
+ 403:
1130
+ description: You are not allowed to access the service or account or your
1131
+ API authentication failed.
1132
+ content:
1133
+ application/json:
1134
+ schema:
1135
+ $ref: '#/components/schemas/ErrorResponse'
1136
+ 409:
1137
+ description: Pause is not allowed
1138
+ content:
1139
+ application/json:
1140
+ schema:
1141
+ $ref: '#/components/schemas/ErrorResponse'
1142
+ 422:
1143
+ description: The request was well-formed but was unable to be processed
1144
+ due to semantic errors
1145
+ content:
1146
+ application/json:
1147
+ schema:
1148
+ $ref: '#/components/schemas/ErrorResponse'
1149
+ 500:
1150
+ description: Internal server exception
1151
+ content:
1152
+ application/json:
1153
+ schema:
1154
+ $ref: '#/components/schemas/ErrorResponse'
1155
+ 502:
1156
+ description: Any 5XX response points to something that went wrong on our
1157
+ end. This could also be that the system was unable to route the transaction
1158
+ to an appropriate acquirer/3rd party. Another reason for such a response
1159
+ is when the 3rd party's response could not be understood.
1160
+ content:
1161
+ application/json:
1162
+ schema:
1163
+ $ref: '#/components/schemas/ErrorResponse'
1164
+ 503:
1165
+ description: Service unavailable
1166
+ content:
1167
+ application/json:
1168
+ schema:
1169
+ $ref: '#/components/schemas/ErrorResponse'
1170
+ '/v1/{merchantId}/commerce-cases/{commerceCaseId}/checkouts/{checkoutId}/payment-executions/{paymentExecutionId}/refresh':
1171
+ post:
1172
+ summary: Refresh information of a Payment Execution
1173
+ description: |-
1174
+ This endpoint can be used to refresh the information of a Payment Execution.
1175
+
1176
+ This endpoint can be used to refresh a Payment Execution in two different modes:
1177
+ * PAYMENT_EVENTS = Refresh all events that belong to a payment. It can be used for a synchronisation with
1178
+ the payment gateway e.g. in case of possible inconsistencies between the Commerce Platform and the payment gateway.
1179
+ between the commerce platform and the payment platform.
1180
+ * PAYMENT_PROVIDER_DETAILS = Refresh the payment status of the payment and return the payment provider details.
1181
+ It can be used for a synchronisation of the payment with the external payment provider. At the moment this call
1182
+ will update the customer payment status of a transaction for PAYONE Buy Now, Pay Later (BNPL).
1183
+
1184
+ ATTENTION: This Refresh endpoint includes a rate limit of one request per Payment Execution every twelve hours.
1185
+ The reason for this rate limit that for the currently supported use case a change in payment provider details is
1186
+ not expected to change more frequently.
1187
+ tags:
1188
+ - PaymentExecution
1189
+ operationId: refreshPayment
1190
+ parameters:
1191
+ - $ref: '#/components/parameters/merchantIdPath'
1192
+ - $ref: '#/components/parameters/commerceCaseIdPath'
1193
+ - $ref: '#/components/parameters/checkoutIdPath'
1194
+ - $ref: '#/components/parameters/paymentExecutionId'
1195
+ requestBody:
1196
+ content:
1197
+ application/json:
1198
+ schema:
1199
+ $ref: '#/components/schemas/RefreshPaymentRequest'
1200
+ responses:
1201
+ 200:
1202
+ description: The refresh was successful.
1203
+ content:
1204
+ application/json:
1205
+ schema:
1206
+ $ref: '#/components/schemas/PaymentExecution'
1207
+ 400:
1208
+ description: Incorrect input data
1209
+ content:
1210
+ application/json:
1211
+ schema:
1212
+ $ref: '#/components/schemas/ErrorResponse'
1213
+ 403:
1214
+ description: You are not allowed to access the service or account or your
1215
+ API authentication failed.
1216
+ content:
1217
+ application/json:
1218
+ schema:
1219
+ $ref: '#/components/schemas/ErrorResponse'
1220
+ 500:
1221
+ description: Internal server exception
1222
+ content:
1223
+ application/json:
1224
+ schema:
1225
+ $ref: '#/components/schemas/ErrorResponse'
1226
+ 502:
1227
+ description: Any 5XX response points to something that went wrong on our
1228
+ end. This could also be that the system was unable to route the transaction
1229
+ to an appropriate acquirer/3rd party. Another reason for such a response
1230
+ is when the 3rd party's response could not be understood.
1231
+ content:
1232
+ application/json:
1233
+ schema:
1234
+ $ref: '#/components/schemas/ErrorResponse'
1235
+ 503:
1236
+ description: Service unavailable
1237
+ content:
1238
+ application/json:
1239
+ schema:
1240
+ $ref: '#/components/schemas/ErrorResponse'
1241
+
1242
+ '/v1/{merchantId}/commerce-cases/{commerceCaseId}/checkouts/{checkoutId}/payment-information':
1243
+ post:
1244
+ summary: Create a Payment Information
1245
+ description: |-
1246
+ Creates a new Payment Information for the given Checkout.
1247
+ tags:
1248
+ - PaymentInformation
1249
+ operationId: createPaymentInformation
1250
+ parameters:
1251
+ - $ref: '#/components/parameters/merchantIdPath'
1252
+ - $ref: '#/components/parameters/commerceCaseIdPath'
1253
+ - $ref: '#/components/parameters/checkoutIdPath'
1254
+ requestBody:
1255
+ required: true
1256
+ content:
1257
+ application/json:
1258
+ schema:
1259
+ $ref: '#/components/schemas/PaymentInformationRequest'
1260
+ responses:
1261
+ '201':
1262
+ x-nullable: true
1263
+ description: The response contains the reference of the created Payment Information.
1264
+ content:
1265
+ application/json:
1266
+ schema:
1267
+ $ref: '#/components/schemas/PaymentInformationResponse'
1268
+ '400':
1269
+ x-nullable: true
1270
+ description: Incorrect input data
1271
+ content:
1272
+ application/json:
1273
+ schema:
1274
+ $ref: '#/components/schemas/ErrorResponse'
1275
+ '404':
1276
+ x-nullable: true
1277
+ description: Payment not found
1278
+ content:
1279
+ application/json:
1280
+ schema:
1281
+ $ref: '#/components/schemas/ErrorResponse'
1282
+ '409':
1283
+ x-nullable: true
1284
+ description: Creation of Payment Information is not allowed
1285
+ content:
1286
+ application/json:
1287
+ schema:
1288
+ $ref: '#/components/schemas/ErrorResponse'
1289
+ '500':
1290
+ x-nullable: true
1291
+ description: Internal server exception
1292
+ content:
1293
+ application/json:
1294
+ schema:
1295
+ $ref: '#/components/schemas/ErrorResponse'
1296
+ '/v1/{merchantId}/commerce-cases/{commerceCaseId}/checkouts/{checkoutId}/payment-information/{paymentInformationId}':
1297
+ get:
1298
+ summary: Get a Payment Information
1299
+ description: |-
1300
+ This endpoint can be used to get a paymentInformation of a Checkout.
1301
+ tags:
1302
+ - PaymentInformation
1303
+ operationId: getPaymentInformation
1304
+ parameters:
1305
+ - $ref: '#/components/parameters/merchantIdPath'
1306
+ - $ref: '#/components/parameters/commerceCaseIdPath'
1307
+ - $ref: '#/components/parameters/checkoutIdPath'
1308
+ - $ref: '#/components/parameters/paymentInformationId'
1309
+ responses:
1310
+ '200':
1311
+ x-nullable: true
1312
+ description: The response contains the reference of the created Payment Information.
1313
+ content:
1314
+ application/json:
1315
+ schema:
1316
+ $ref: '#/components/schemas/PaymentInformationResponse'
1317
+ '404':
1318
+ x-nullable: true
1319
+ description: Payment not found
1320
+ content:
1321
+ application/json:
1322
+ schema:
1323
+ $ref: '#/components/schemas/ErrorResponse'
1324
+ '/v1/{merchantId}/commerce-cases/{commerceCaseId}/checkouts/{checkoutId}/payment-information/{paymentInformationId}/refund':
1325
+ post:
1326
+ summary: Refund a Payment Information
1327
+ description: |-
1328
+ This endpoint can be used to initiate an online refund for a POS terminal transaction.
1329
+ The platform will automatically detect the payment method of the original transaction and select the most appropriate mode to refund the transaction.
1330
+ tags:
1331
+ - PaymentInformation
1332
+ operationId: refundPaymentInformation
1333
+ parameters:
1334
+ - $ref: '#/components/parameters/merchantIdPath'
1335
+ - $ref: '#/components/parameters/commerceCaseIdPath'
1336
+ - $ref: '#/components/parameters/checkoutIdPath'
1337
+ - $ref: '#/components/parameters/paymentInformationId'
1338
+ requestBody:
1339
+ required: true
1340
+ content:
1341
+ application/json:
1342
+ schema:
1343
+ $ref: '#/components/schemas/PaymentInformationRefundRequest'
1344
+ responses:
1345
+ '201':
1346
+ x-nullable: true
1347
+ description: The Refund was successfully created.
1348
+ content:
1349
+ application/json:
1350
+ schema:
1351
+ $ref: '#/components/schemas/PaymentInformationRefundResponse'
1352
+ '400':
1353
+ x-nullable: true
1354
+ description: |-
1355
+ The request was malformed or was missing required data. When a required property was missing the error
1356
+ message will point out which property caused the error.
1357
+ content:
1358
+ application/json:
1359
+ schema:
1360
+ $ref: '#/components/schemas/RefundErrorResponse'
1361
+ '403':
1362
+ x-nullable: true
1363
+ description: You are not allowed to access the service or account or your API authentication failed.
1364
+ content:
1365
+ application/json:
1366
+ schema:
1367
+ $ref: '#/components/schemas/ErrorResponse'
1368
+ '404':
1369
+ x-nullable: true
1370
+ description: The most common cause for this response id that the payment was not in a cancelable state.
1371
+ content:
1372
+ application/json:
1373
+ schema:
1374
+ $ref: '#/components/schemas/RefundErrorResponse'
1375
+
1376
+ components:
1377
+ parameters:
1378
+ checkoutIdPath:
1379
+ in: path
1380
+ name: checkoutId
1381
+ description: Unique identifier of a Checkout
1382
+ required: true
1383
+ schema:
1384
+ type: string
1385
+ format: UUID
1386
+ checkoutIdQuery:
1387
+ in: query
1388
+ name: checkoutId
1389
+ description: Unique identifier of a Checkout
1390
+ schema:
1391
+ type: string
1392
+ format: UUID
1393
+ example: 7a3444d3-f6ce-4b6e-b6c4-2486a160cf19
1394
+ commerceCaseIdPath:
1395
+ in: path
1396
+ name: commerceCaseId
1397
+ description: Unique identifier of a Commerce Case.
1398
+ required: true
1399
+ schema:
1400
+ type: string
1401
+ format: UUID
1402
+ commerceCaseIdQuery:
1403
+ in: query
1404
+ name: commerceCaseId
1405
+ description: Unique identifier of a Commerce Case.
1406
+ schema:
1407
+ type: string
1408
+ format: UUID
1409
+ example: 7a3444d3-f6ce-4b6e-b6c4-2486a160cf19
1410
+ companyInformation:
1411
+ in: query
1412
+ name: companyInformation
1413
+ description: Filter your results by the name of the company.
1414
+ schema:
1415
+ type: string
1416
+ x-trim-at: 50
1417
+ example: Sinclair's company name
1418
+ dateOfBirth:
1419
+ in: query
1420
+ name: dateOfBirth
1421
+ description: |-
1422
+ Filter your results by the date of birth.
1423
+ Format YYYYMMDD
1424
+ schema:
1425
+ type: string
1426
+ maxLength: 8
1427
+ pattern: ^((19|20|21)\d{6})?$
1428
+ example: 20041101
1429
+ email:
1430
+ in: query
1431
+ name: email
1432
+ description: Filter your results by the customer email address.
1433
+ schema:
1434
+ type: string
1435
+ x-trim-at: 70
1436
+ example: Sinclair.Müller@example.com
1437
+ firstName:
1438
+ in: query
1439
+ name: firstName
1440
+ description: |-
1441
+ Filter your results by the customer first name. It is also possible to filter by the first name from the
1442
+ shipping address.
1443
+ schema:
1444
+ type: string
1445
+ x-trim-at: 35
1446
+ example: Sinclair
1447
+ fromCancelledAmount:
1448
+ in: query
1449
+ description: |-
1450
+ Minimum cancelled amount of the Checkouts that shall be included in the response. Amount in cents always
1451
+ having 2 decimals.
1452
+ name: fromCancelledAmount
1453
+ schema:
1454
+ type: integer
1455
+ format: int64
1456
+ maximum: 999999999999
1457
+ minimum: 0
1458
+ example: 1000
1459
+ fromChargebackAmount:
1460
+ in: query
1461
+ description: |-
1462
+ Minimum chargeback amount of the Checkouts that shall be included in the response. Amount in cents always
1463
+ having 2 decimals.
1464
+ name: fromChargebackAmount
1465
+ schema:
1466
+ type: integer
1467
+ format: int64
1468
+ maximum: 999999999999
1469
+ minimum: 0
1470
+ example: 1000
1471
+ fromCheckoutAmount:
1472
+ in: query
1473
+ description: |-
1474
+ Minimum monetary value of the Checkouts that shall be included in the response. Amount in cents always
1475
+ having 2 decimals.
1476
+ name: fromCheckoutAmount
1477
+ schema:
1478
+ type: integer
1479
+ format: int64
1480
+ maximum: 999999999999
1481
+ minimum: 0
1482
+ example: 1000
1483
+ fromCollectedAmount:
1484
+ in: query
1485
+ description: |-
1486
+ Minimum collected amount of the Checkouts that shall be included in the response. Amount in cents always
1487
+ having 2 decimals.
1488
+ name: fromCollectedAmount
1489
+ schema:
1490
+ type: integer
1491
+ format: int64
1492
+ maximum: 999999999999
1493
+ minimum: 0
1494
+ example: 1000
1495
+ fromDate:
1496
+ in: query
1497
+ name: fromDate
1498
+ schema:
1499
+ type: string
1500
+ format: date-time
1501
+ description: |
1502
+ Date and time in RFC3339 format after which Items (Checkouts or Commerce-Cases, depending on the context) should be included in the request.
1503
+ Accepted formats are:
1504
+ * YYYY-MM-DD'T'HH:mm:ss'Z'
1505
+ * YYYY-MM-DD'T'HH:mm:ss+XX:XX
1506
+ * YYYY-MM-DD'T'HH:mm:ss-XX:XX
1507
+ * YYYY-MM-DD'T'HH:mm'Z'
1508
+ * YYYY-MM-DD'T'HH:mm+XX:XX
1509
+ * YYYY-MM-DD'T'HH:mm-XX:XX
1510
+
1511
+ All other formats may be ignored by the system.
1512
+ examples:
1513
+ YYYY-MM-DDThh:mm:ssZ:
1514
+ value: 2022-11-10T13:34:23Z
1515
+ YYYY-MM-DDThh:mm:ss+XX:XX:
1516
+ value: 2022-11-10T14:34:23+01:00
1517
+ fromOpenAmount:
1518
+ in: query
1519
+ description: |-
1520
+ Minimum open amount of the Checkouts that shall be included in the response. Amount in cents always having
1521
+ 2 decimals.
1522
+ name: fromOpenAmount
1523
+ schema:
1524
+ type: integer
1525
+ format: int64
1526
+ maximum: 999999999999
1527
+ minimum: 0
1528
+ example: 1000
1529
+ fromRefundAmount:
1530
+ in: query
1531
+ description: |-
1532
+ Minimum refunded amount of the Checkouts that shall be included in the response. Amount in cents always having
1533
+ 2 decimals.
1534
+ name: fromRefundAmount
1535
+ schema:
1536
+ type: integer
1537
+ format: int64
1538
+ maximum: 999999999999
1539
+ minimum: 0
1540
+ example: 1000
1541
+ includeCheckoutStatus:
1542
+ in: query
1543
+ name: includeCheckoutStatus
1544
+ description: |-
1545
+ Filter your results by Checkout status so that only Checkouts with the specified statuses are returned.
1546
+ schema:
1547
+ type: array
1548
+ items:
1549
+ $ref: '#/components/schemas/StatusCheckout'
1550
+ includeExtendedCheckoutStatus:
1551
+ in: query
1552
+ name: includeExtendedCheckoutStatus
1553
+ description: |-
1554
+ Filter your results by extended Checkout status so that only Checkouts with the specified statuses are returned.
1555
+ schema:
1556
+ type: array
1557
+ items:
1558
+ $ref: '#/components/schemas/ExtendedCheckoutStatus'
1559
+ includePaymentChannel:
1560
+ in: query
1561
+ name: includePaymentChannel
1562
+ description: |-
1563
+ Filter your results by payment channel so that only Checkouts which reference transactions on the given
1564
+ channels are returned.
1565
+ schema:
1566
+ type: array
1567
+ items:
1568
+ $ref: '#/components/schemas/PaymentChannel'
1569
+ includePaymentProductId:
1570
+ in: query
1571
+ name: includePaymentProductId
1572
+ description: |-
1573
+ Filter your results by payment product ID so that only Checkouts containing a Payment Execution with one of
1574
+ the specified payment product IDs are returned.
1575
+ schema:
1576
+ type: array
1577
+ items:
1578
+ type: integer
1579
+ format: int32
1580
+ maximum: 99999
1581
+ minimum: 0
1582
+ example: 840
1583
+ merchantCustomerId:
1584
+ in: query
1585
+ name: merchantCustomerId
1586
+ description: Unique identifier for the customer.
1587
+ schema:
1588
+ type: string
1589
+ maxLength: 20
1590
+ example: 1234
1591
+ merchantIdPath:
1592
+ in: path
1593
+ name: merchantId
1594
+ description: The merchantId identifies uniquely the merchant. A Checkout has exactly one merchant.
1595
+ required: true
1596
+ schema:
1597
+ type: string
1598
+ minLength: 0
1599
+ maxLength: 64
1600
+ example: 3241
1601
+ merchantReference:
1602
+ in: query
1603
+ name: merchantReference
1604
+ description: |-
1605
+ Unique reference of the Checkout that is also returned for reporting and reconciliation purposes.
1606
+ schema:
1607
+ type: string
1608
+ maxLength: 40
1609
+ example: your-checkout-6372
1610
+ offset:
1611
+ in: query
1612
+ name: offset
1613
+ description: The offset to load Items (Checkouts or Commerce-Cases, depending on the context) starting with 0.
1614
+ schema:
1615
+ type: integer
1616
+ minimum: 0
1617
+ default: 0
1618
+ example: 0
1619
+ paymentExecutionId:
1620
+ in: path
1621
+ name: paymentExecutionId
1622
+ description: Unique identifier of a paymentExecution
1623
+ required: true
1624
+ schema:
1625
+ type: string
1626
+ format: UUID
1627
+ paymentId:
1628
+ in: query
1629
+ name: paymentId
1630
+ description: Filter your results by the paymentExecutionId, paymentInformationId or the id of the payment.
1631
+ schema:
1632
+ type: string
1633
+ example: 664423132
1634
+ paymentInformationId:
1635
+ in: path
1636
+ name: paymentInformationId
1637
+ description: Unique identifier of a paymentInformation
1638
+ required: true
1639
+ schema:
1640
+ type: string
1641
+ format: UUID
1642
+ paymentReference:
1643
+ in: query
1644
+ name: paymentReference
1645
+ description: Filter your results by the merchantReference of the paymentExecution or paymentInformation.
1646
+ schema:
1647
+ type: string
1648
+ example: Reference-4172
1649
+ phoneNumber:
1650
+ in: query
1651
+ name: phoneNumber
1652
+ description: Filter your results by the customer phone number.
1653
+ schema:
1654
+ type: string
1655
+ x-trim-at: 20
1656
+ example: '+1234567890'
1657
+ reportingToken:
1658
+ in: query
1659
+ name: reportingToken
1660
+ description: Filter your results by the reportingToken.
1661
+ schema:
1662
+ type: string
1663
+ x-trim-at: 40
1664
+ example: 12a037cc-833d-8b45-8f6f-11c34171f4e1
1665
+ size:
1666
+ in: query
1667
+ name: size
1668
+ description: The number of Items (Checkouts or Commerce-Cases, depending on the context) loaded per page
1669
+ schema:
1670
+ type: integer
1671
+ minimum: 1
1672
+ maximum: 100
1673
+ default: 25
1674
+ example: 10
1675
+ surname:
1676
+ in: query
1677
+ name: surname
1678
+ description: |-
1679
+ Filter your results by the customer surname. It is also possible to filter by the surname from the shipping
1680
+ address.
1681
+ schema:
1682
+ type: string
1683
+ x-trim-at: 35
1684
+ example: Müller
1685
+ terminalId:
1686
+ in: query
1687
+ name: terminalId
1688
+ description: |-
1689
+ Filter your results by the terminalId.
1690
+ schema:
1691
+ type: string
1692
+ minLength: 8
1693
+ maxLength: 8
1694
+ example: "60023723"
1695
+ toCancelledAmount:
1696
+ in: query
1697
+ description: |-
1698
+ Maximum cancelled amount of the Checkouts that shall be included in the response. Amount in cents always
1699
+ having 2 decimals.
1700
+ name: toCancelledAmount
1701
+ schema:
1702
+ type: integer
1703
+ format: int64
1704
+ maximum: 999999999999
1705
+ minimum: 0
1706
+ example: 1000
1707
+ toChargebackAmount:
1708
+ in: query
1709
+ description: |-
1710
+ Maximum chargeback amount of the Checkouts that shall be included in the response. Amount in cents always
1711
+ having 2 decimals.
1712
+ name: toChargebackAmount
1713
+ schema:
1714
+ type: integer
1715
+ format: int64
1716
+ maximum: 999999999999
1717
+ minimum: 0
1718
+ example: 1000
1719
+ toCheckoutAmount:
1720
+ in: query
1721
+ description: |-
1722
+ Maximum monetary value of the Checkouts that shall be included in the response. Amount in cents always
1723
+ having 2 decimals.
1724
+ name: toCheckoutAmount
1725
+ schema:
1726
+ type: integer
1727
+ format: int64
1728
+ maximum: 999999999999
1729
+ minimum: 0
1730
+ example: 1000
1731
+ toCollectedAmount:
1732
+ in: query
1733
+ description: |-
1734
+ Maximum collected amount of the Checkouts that shall be included in the response. Amount in cents always
1735
+ having 2 decimals.
1736
+ name: toCollectedAmount
1737
+ schema:
1738
+ type: integer
1739
+ format: int64
1740
+ maximum: 999999999999
1741
+ minimum: 0
1742
+ example: 1000
1743
+ toDate:
1744
+ in: query
1745
+ name: toDate
1746
+ schema:
1747
+ type: string
1748
+ format: date-time
1749
+ description: |
1750
+ Date and time in RFC3339 format after which Items (Checkouts or Commerce-Cases, depending on the context) should be included in the request.
1751
+ Accepted formats are:
1752
+ * YYYY-MM-DD'T'HH:mm:ss'Z'
1753
+ * YYYY-MM-DD'T'HH:mm:ss+XX:XX
1754
+ * YYYY-MM-DD'T'HH:mm:ss-XX:XX
1755
+ * YYYY-MM-DD'T'HH:mm'Z'
1756
+ * YYYY-MM-DD'T'HH:mm+XX:XX
1757
+ * YYYY-MM-DD'T'HH:mm-XX:XX
1758
+ All other formats may be ignored by the system.
1759
+ examples:
1760
+ YYYY-MM-DDThh:mm:ssZ:
1761
+ value: 2022-11-10T13:34:23Z
1762
+ YYYY-MM-DDThh:mm:ss+XX:XX:
1763
+ value: 2022-11-10T14:34:23+01:00
1764
+ toOpenAmount:
1765
+ in: query
1766
+ description: |-
1767
+ Maximum open amount of the Checkouts that shall be included in the response. Amount in cents always having 2
1768
+ decimals.
1769
+ name: toOpenAmount
1770
+ schema:
1771
+ type: integer
1772
+ format: int64
1773
+ maximum: 999999999999
1774
+ minimum: 0
1775
+ example: 1000
1776
+ toRefundAmount:
1777
+ in: query
1778
+ description: |-
1779
+ Maximum refunded amount of the Checkouts that shall be included in the response. Amount in cents always having
1780
+ 2 decimals.
1781
+ name: toRefundAmount
1782
+ schema:
1783
+ type: integer
1784
+ format: int64
1785
+ maximum: 999999999999
1786
+ minimum: 0
1787
+ example: 1000
1788
+ schemas:
1789
+ Address:
1790
+ type: object
1791
+ description: Object containing billing address details
1792
+ additionalProperties: false
1793
+ properties:
1794
+ additionalInfo:
1795
+ type: string
1796
+ description: Second line of street or additional address information such as apartments and suits
1797
+ example: Apartment 203
1798
+ maxLength: 50
1799
+ city:
1800
+ type: string
1801
+ description: City
1802
+ example: Kiel
1803
+ minLength: 2
1804
+ maxLength: 40
1805
+ countryCode:
1806
+ type: string
1807
+ pattern: ^[a-zA-Z]{2}$
1808
+ description: ISO 3166-1 alpha-2 country code
1809
+ example: DE
1810
+ maxLength: 2
1811
+ houseNumber:
1812
+ type: string
1813
+ description: House number
1814
+ example: 3
1815
+ maxLength: 10
1816
+ state:
1817
+ type: string
1818
+ pattern: ^[a-zA-Z0-9]{1,3}$
1819
+ description: State (ISO 3166-2 subdivisions), only if country=US, CA, CN, JP, MX, BR, AR, ID, TH, IN.
1820
+ example: BR
1821
+ minLength: 1
1822
+ maxLength: 3
1823
+ street:
1824
+ type: string
1825
+ description: Street name
1826
+ example: Coral Avenue
1827
+ maxLength: 50
1828
+ zip:
1829
+ type: string
1830
+ description: Zip code
1831
+ example: 12345
1832
+ minLength: 2
1833
+ maxLength: 10
1834
+ AddressPersonal:
1835
+ type: object
1836
+ description: Object containing personal or shipping address information.
1837
+ additionalProperties: false
1838
+ properties:
1839
+ additionalInfo:
1840
+ type: string
1841
+ description: Second line of street or additional address information such as apartments and suits
1842
+ example: Apartment 203
1843
+ maxLength: 50
1844
+ city:
1845
+ type: string
1846
+ description: City
1847
+ example: Kiel
1848
+ minLength: 2
1849
+ maxLength: 40
1850
+ countryCode:
1851
+ type: string
1852
+ description: ISO 3166-1 alpha-2 country code
1853
+ example: DE
1854
+ maxLength: 2
1855
+ houseNumber:
1856
+ type: string
1857
+ description: House number
1858
+ example: 3
1859
+ maxLength: 10
1860
+ state:
1861
+ type: string
1862
+ description: State (ISO 3166-2 subdivisions), only if country=US, CA, CN, JP, MX, BR, AR, ID, TH, IN.
1863
+ example: MX
1864
+ minLength: 1
1865
+ maxLength: 3
1866
+ street:
1867
+ type: string
1868
+ description: Street name
1869
+ example: Coral Avenue
1870
+ maxLength: 50
1871
+ zip:
1872
+ type: string
1873
+ description: Zip code
1874
+ example: 1234
1875
+ minLength: 2
1876
+ maxLength: 10
1877
+ name:
1878
+ $ref: '#/components/schemas/PersonalName'
1879
+ AllowedPaymentActions:
1880
+ type: string
1881
+ enum:
1882
+ - ORDER_MANAGEMENT
1883
+ - PAYMENT_EXECUTION
1884
+ description: |
1885
+ Indicates which payment endpoints can be used for the respective Checkout.
1886
+ The systems offers two alternatives to trigger a payment and consecutive events:
1887
+ OrderManagementCheckoutActions or the Payment Execution resource.
1888
+ Both alternatives can be used simultaneously but once one of the Payment Execution endpoints is used the
1889
+ Order Management endpoints can no longer be used for that Checkout since it is no longer possible to match
1890
+ payment events to items of the Checkout.
1891
+ AmountOfMoney:
1892
+ type: object
1893
+ description: Object containing amount and ISO currency code attributes
1894
+ additionalProperties: false
1895
+ properties:
1896
+ amount:
1897
+ type: integer
1898
+ description: Amount in cents and always having 2 decimals
1899
+ format: int64
1900
+ maximum: 999999999999
1901
+ minimum: 0
1902
+ example: 1000
1903
+ currencyCode:
1904
+ type: string
1905
+ description: Three-letter ISO currency code representing the currency for the amount
1906
+ minLength: 3
1907
+ maxLength: 3
1908
+ example: EUR
1909
+ required:
1910
+ - amount
1911
+ - currencyCode
1912
+ ApplePaymentDataTokenInformation:
1913
+ type: object
1914
+ description: |-
1915
+ Additional information about the Apple payment data token. This information are needed for checking the validity
1916
+ of the payment data token before decryption.
1917
+ properties:
1918
+ version:
1919
+ type: string
1920
+ description: |-
1921
+ Version information about the payment token. Currently only EC_v1 for ECC-encrypted data is supported.
1922
+ enum:
1923
+ - EC_V1
1924
+ example: EC_V1
1925
+ signature:
1926
+ type: string
1927
+ description: |-
1928
+ Detached PKCS #7 signature, Base64 encoded as string. Signature of the payment and header data. The
1929
+ signature includes the signing certificate, its intermediate CA certificate, and information about the
1930
+ signing algorithm.
1931
+ header:
1932
+ $ref: '#/components/schemas/ApplePaymentDataTokenHeaderInformation'
1933
+ required:
1934
+ - version
1935
+ - signature
1936
+ - header
1937
+ ApplePaymentDataTokenHeaderInformation:
1938
+ type: object
1939
+ description: Additional information about the Apple payment data token header.
1940
+ properties:
1941
+ transactionId:
1942
+ type: string
1943
+ description: A hexadecimal Transaction identifier identifier as a string.
1944
+ applicationData:
1945
+ type: string
1946
+ description: |-
1947
+ SHA–256 hash, hex encoded as a string. Hash of the applicationData property of the original PKPaymentRequest
1948
+ object.
1949
+ required:
1950
+ - transactionId
1951
+ APIError:
1952
+ description: Contains detailed information on one single error.
1953
+ type: object
1954
+ additionalProperties: false
1955
+ properties:
1956
+ errorCode:
1957
+ type: string
1958
+ description: Error code
1959
+ example: 50001130
1960
+ category:
1961
+ type: string
1962
+ description: |-
1963
+ Category the error belongs to. The category should give an indication of the type of error you are dealing
1964
+ with. Do not expect a finite set of possible categories, as they are subject to change. Common values are:
1965
+ * DIRECT_PLATFORM_ERROR - indicating that a functional error has occurred in the platform.
1966
+ * PAYMENT_PLATFORM_ERROR - indicating that a functional error has occurred in the payment platform.
1967
+ * IO_ERROR - indicating that a technical error has occurred within the payment platform or between the
1968
+ payment platform and third party systems.
1969
+ * COMMERCE_PLATFORM_ERROR - indicating an error originating from the Commerce Platform.
1970
+ * COMMERCE_PORTAL_BACKEND_ERROR - indicating an error originating from the Commerce Portal Backend.
1971
+ example: PAYMENT_PLATFORM_ERROR
1972
+ httpStatusCode:
1973
+ type: integer
1974
+ description: HTTP status code for this error that can be used to determine the type of error
1975
+ format: int32
1976
+ example: 404
1977
+ id:
1978
+ type: string
1979
+ description: ID of the error. This is a short human-readable message that briefly describes the error.
1980
+ example: general-error-technical-fault-internal
1981
+ message:
1982
+ type: string
1983
+ description: |-
1984
+ Human-readable error message that is not meant to be relayed to customer as it might tip off people who are
1985
+ trying to commit fraud
1986
+ example: Authorisation declined
1987
+ propertyName:
1988
+ type: string
1989
+ description: |-
1990
+ Returned only if the error relates to a value that was missing or incorrect.
1991
+
1992
+ Contains a location path to the value as a JSonata query.
1993
+
1994
+ Some common examples:
1995
+ * a.b selects the value of property b of root property a,
1996
+ * a[1] selects the first element of the array in root property a,
1997
+ * a[b='some value'] selects all elements of the array in root property a that have a property b with value
1998
+ 'some value'.
1999
+ example: paymentId
2000
+ required:
2001
+ - errorCode
2002
+ AuthorizationMode:
2003
+ type: string
2004
+ x-enum-to-string: false
2005
+ enum:
2006
+ - PRE_AUTHORIZATION
2007
+ - SALE
2008
+ description: |-
2009
+ Determines the type of the authorization that will be used. Allowed values:
2010
+ * PRE_AUTHORIZATION - The payment creation results in a pre-authorization that is ready for Capture. Pre-
2011
+ authortizations can be reversed and can be captured within 30 days. The capture amount can be lower than the
2012
+ authorized amount.
2013
+ * SALE - The payment creation results in an authorization that is already captured at the moment of approval.
2014
+
2015
+ If the parameter is not provided in the request, the default value will be PRE_AUTHORIZATION
2016
+ BankAccountInformation:
2017
+ type: object
2018
+ description: Object containing information about the end customer's bank account.
2019
+ properties:
2020
+ iban:
2021
+ maxLength: 35
2022
+ type: string
2023
+ description: |-
2024
+ IBAN of the end customer's bank account.
2025
+ The IBAN is the International Bank Account Number. It is an internationally agreed format for the BBAN and
2026
+ includes the ISO country code and two check digits.
2027
+ example: DE02370502990000684712
2028
+ bic:
2029
+ maxLength: 11
2030
+ type: string
2031
+ description: Bank Identification Code
2032
+ example: COLSDE33XXX
2033
+ accountHolder:
2034
+ maxLength: 50
2035
+ type: string
2036
+ description: |-
2037
+ Account holder of the bank account with the given IBAN.
2038
+ Does not necessarily have to be the end customer (e.g. joint accounts).
2039
+ example: Max Mustermann
2040
+ required:
2041
+ - accountHolder
2042
+ - iban
2043
+ BankPayoutMethodSpecificInput:
2044
+ type: object
2045
+ description: Object containing the specific input details for SEPA tranfers
2046
+ properties:
2047
+ paymentProductId:
2048
+ type: integer
2049
+ format: int32
2050
+ maximum: 99999
2051
+ minimum: 0
2052
+ description: |-
2053
+ Payment product identifier - please check product documentation for a full overview of possible values.
2054
+ example: 772
2055
+ paymentProduct772SpecificInput:
2056
+ $ref: '#/components/schemas/SepaTransferPaymentProduct772SpecificInput'
2057
+ CancelItem:
2058
+ type: object
2059
+ properties:
2060
+ id:
2061
+ type: string
2062
+ format: UUID
2063
+ description: Id of the item to cancel.
2064
+ example: "4f0c512e-f12c-11ec-8ea0-0242ac120002"
2065
+ quantity:
2066
+ type: integer
2067
+ description: |-
2068
+ Quantity of the units being cancelled, should be greater than zero
2069
+ Note: Must not be all spaces or all zeros
2070
+ format: int64
2071
+ maximum: 9999
2072
+ minimum: 1
2073
+ example: 1
2074
+ required:
2075
+ - id
2076
+ - quantity
2077
+ CancellationReason:
2078
+ type: string
2079
+ description: |-
2080
+ Reason why an order was cancelled. Possible values:
2081
+ * CONSUMER_REQUEST - The consumer requested a cancellation of the Order
2082
+ * UNDELIVERABLE - The merchant cannot fulfill the Order
2083
+ * DUPLICATE - The Order was created twice accidentally
2084
+ * FRAUDULENT- Consumer turned out to be a fraudster
2085
+ * ORDER_SHIPPED_IN_FULL - The merchant shipped everything and wants to cancel the remaining authorized amount of
2086
+ the Order
2087
+ * AUTOMATED_SHIPMENT_FAILED - A technical error was thrown during an automated shipment API call rendering the
2088
+ Order impossible to complete
2089
+
2090
+ Mandatory for PAYONE Buy Now, Pay Later (BNPL):
2091
+ * 3390 - PAYONE Secured Invoice
2092
+ * 3391 - PAYONE Secured Installment
2093
+ * 3392 - PAYONE Secured Direct Debit
2094
+ enum:
2095
+ - CONSUMER_REQUEST
2096
+ - UNDELIVERABLE
2097
+ - DUPLICATE
2098
+ - FRAUDULENT
2099
+ - ORDER_SHIPPED_IN_FULL
2100
+ - AUTOMATED_SHIPMENT_FAILED
2101
+ example: CONSUMER_REQUEST
2102
+ CancelPaymentRequest:
2103
+ type: object
2104
+ properties:
2105
+ cancellationReason:
2106
+ $ref: '#/components/schemas/CancellationReason'
2107
+ CancelPaymentResponse:
2108
+ type: object
2109
+ additionalProperties: false
2110
+ properties:
2111
+ payment:
2112
+ $ref: '#/components/schemas/PaymentResponse'
2113
+ CancelRequest:
2114
+ type: object
2115
+ description: |
2116
+ Request to mark items as of the respective Checkout as cancelled and to automatically reverse the associated
2117
+ payment.
2118
+ A Cancel can be created for a full or the partial ShoppingCart of the Checkout.
2119
+ The platform will automatically calculate the respective amount to trigger the Cancel. For a partial Cancel a
2120
+ list of items must be provided.
2121
+
2122
+ The cancellationReason is mandatory for BNPL payment methods (paymentProductId 3390, 3391 and 3392).
2123
+ For other payment methods the cancellationReason is not mandatory but can be used for reporting and
2124
+ reconciliation purposes.
2125
+ properties:
2126
+ cancelType:
2127
+ $ref: '#/components/schemas/CancelType'
2128
+ cancellationReason:
2129
+ $ref: '#/components/schemas/CancellationReason'
2130
+ cancelItems:
2131
+ type: array
2132
+ items:
2133
+ $ref: '#/components/schemas/CancelItem'
2134
+ CancelResponse:
2135
+ type: object
2136
+ properties:
2137
+ cancelPaymentResponse:
2138
+ $ref: '#/components/schemas/CancelPaymentResponse'
2139
+ shoppingCart:
2140
+ $ref: '#/components/schemas/ShoppingCartResult'
2141
+ CancelType:
2142
+ type: string
2143
+ description: |
2144
+ The cancelType refers to the ShoppingCart items of the Checkout.
2145
+ cancelType = FULL should be provided if all items should be marked as cancelled and the payment for the entire
2146
+ ShoppingCart should be reversed.
2147
+ cancelType = PARTIAL should be provided if only certain items should be marked as cancelled and the Cancel
2148
+ should not be made for the entire ShoppingCart. For this type the list of items has to be provided.
2149
+ Please note that a reversal for a partial payment will not reverse the respective amount from the authorization
2150
+ but only reduces the openAmount that is ready for collecting.
2151
+
2152
+ Following conditions apply to the Cancel request:
2153
+ * items must be in status ORDERED
2154
+ * there was no Capture, Refund or Cancel triggered over the Payment Execution resource
2155
+ * for the cancelType FULL no items are provided in the request
2156
+ Note: If a DISCOUNT productType is among the ShoppingCart items, only cancelType FULL is possible.
2157
+ enum:
2158
+ - FULL
2159
+ - PARTIAL
2160
+ CaptureOutput:
2161
+ type: object
2162
+ description: |
2163
+ Object containing Capture details.
2164
+ additionalProperties: false
2165
+ properties:
2166
+ amountOfMoney:
2167
+ $ref: '#/components/schemas/AmountOfMoney'
2168
+ merchantParameters:
2169
+ type: string
2170
+ description: |-
2171
+ It allows you to store additional parameters for the transaction in JSON format.
2172
+ This field must not contain any personal data.
2173
+ maxLength: 1000
2174
+ example: "{'SessionID':'126548354','ShopperID':'7354131'}"
2175
+ references:
2176
+ $ref: '#/components/schemas/PaymentReferences'
2177
+ paymentMethod:
2178
+ type: string
2179
+ description: Payment method identifier used by our payment engine.
2180
+ paymentInstructions:
2181
+ $ref: '#/components/schemas/PaymentInstructions'
2182
+ CapturePaymentRequest:
2183
+ type: object
2184
+ additionalProperties: false
2185
+ description: |
2186
+ If the shopping cart is specified, a Capture is made with the amount of the shopping cart for the items that are
2187
+ specified.
2188
+ properties:
2189
+ amount:
2190
+ type: integer
2191
+ format: int64
2192
+ maximum: 999999999999
2193
+ minimum: 1
2194
+ description: |-
2195
+ Here you can specify the amount that you want to capture (specified in cents, where single digit currencies
2196
+ are presumed to have 2 digits). The amount can be lower than the amount that was authorized, but not higher.
2197
+ If left empty, the full amount will be captured and the request will be final.
2198
+ If the full amount is captured, the request will also be final.
2199
+ isFinal:
2200
+ type: boolean
2201
+ default: false
2202
+ description: |
2203
+ This property indicates whether this will be the final operation.
2204
+ If the full amount should not captured but the property is set to true, the remaining amount will automatically be cancelled.
2205
+ cancellationReason:
2206
+ $ref: '#/components/schemas/CancellationReason'
2207
+ references:
2208
+ $ref: '#/components/schemas/PaymentReferences'
2209
+ delivery:
2210
+ $ref: '#/components/schemas/DeliveryInformation'
2211
+ CapturePaymentResponse:
2212
+ type: object
2213
+ additionalProperties: false
2214
+ properties:
2215
+ captureOutput:
2216
+ $ref: '#/components/schemas/CaptureOutput'
2217
+ status:
2218
+ $ref: '#/components/schemas/StatusValue'
2219
+ statusOutput:
2220
+ $ref: '#/components/schemas/PaymentStatusOutput'
2221
+ id:
2222
+ type: string
2223
+ description: Unique payment transaction identifier of the payment gateway.
2224
+ example: '3066019730_1'
2225
+ CardFraudResults:
2226
+ type: object
2227
+ description: |
2228
+ Fraud results contained in the CardFraudResults object.
2229
+ additionalProperties: false
2230
+ properties:
2231
+ avsResult:
2232
+ description: |2-
2233
+ Result of the Address Verification Service checks. Possible values are:
2234
+ * A - Address (Street) matches, Zip does not
2235
+ * B - Street address match for international transactions—Postal code not verified due to incompatible
2236
+ formats
2237
+ * C - Street address and postal code not verified for international transaction due to incompatible formats
2238
+ * D - Street address and postal code match for international transaction, cardholder name is incorrect
2239
+ * E - AVS error
2240
+ * F - Address does match and five digit ZIP code does match (UK only)
2241
+ * G - Address information is unavailable; international transaction; non-AVS participant
2242
+ * H - Billing address and postal code match, cardholder name is incorrect (Amex)
2243
+ * I - Address information not verified for international transaction
2244
+ * K - Cardholder name matches (Amex)
2245
+ * L - Cardholder name and postal code match (Amex)
2246
+ * M - Cardholder name, street address, and postal code match for international transaction
2247
+ * N - No Match on Address (Street) or Zip
2248
+ * O - Cardholder name and address match (Amex)
2249
+ * P - Postal codes match for international transaction—Street address not verified due to incompatible formats
2250
+ * Q - Billing address matches, cardholder is incorrect (Amex)
2251
+ * R - Retry, System unavailable or Timed out
2252
+ * S - Service not supported by issuer
2253
+ * U - Address information is unavailable
2254
+ * W - 9 digit Zip matches, Address (Street) does not
2255
+ * X - Exact AVS Match
2256
+ * Y - Address (Street) and 5 digit Zip match
2257
+ * Z - 5 digit Zip matches, Address (Street) does not
2258
+ * 0 - No service available
2259
+ example: A
2260
+ type: string
2261
+ enum:
2262
+ - A
2263
+ - B
2264
+ - C
2265
+ - D
2266
+ - E
2267
+ - F
2268
+ - G
2269
+ - H
2270
+ - I
2271
+ - K
2272
+ - L
2273
+ - M
2274
+ - N
2275
+ - O
2276
+ - P
2277
+ - Q
2278
+ - R
2279
+ - S
2280
+ - U
2281
+ - W
2282
+ - X
2283
+ - Y
2284
+ - Z
2285
+ - "0"
2286
+ CardPaymentDetails:
2287
+ type: object
2288
+ description: Information for card payments realized at a POS.
2289
+ properties:
2290
+ maskedCardNumber:
2291
+ type: string
2292
+ description: Reference to the card of the transaction.
2293
+ maxLength: 40
2294
+ example: 672559XXXXXX1108
2295
+ paymentProcessingToken:
2296
+ type: string
2297
+ description: ID of the token. This property is populated when the payment was done with a token.
2298
+ example: 0ca037cc-9079-4df7-8f6f-f2a3443ee521
2299
+ maxLength: 40
2300
+ reportingToken:
2301
+ type: string
2302
+ description: Token to identify the card in the reporting.
2303
+ example: 12a037cc-833d-8b45-8f6f-11c34171f4e1
2304
+ maxLength: 40
2305
+ cardAuthorizationId:
2306
+ type: string
2307
+ description: |
2308
+ Identifier for a successful authorization, reversal or refund.
2309
+ Usually provided by the issuer system. Only provided for card payments.
2310
+ example: 260042
2311
+ maxLength: 8
2312
+ CardInfo:
2313
+ type: object
2314
+ description: |
2315
+ Object containing additional non PCI DSS relevant card information.
2316
+ used instead of card (missing fields: cardNumber, expiryDate, cvv)
2317
+ properties:
2318
+ cardholderName:
2319
+ type: string
2320
+ description: The card holder's name on the card.
2321
+ x-trim-at: 50
2322
+ CartItemOrderStatus:
2323
+ type: object
2324
+ readOnly: true
2325
+ description: Detailed information regarding an occurred payment event.
2326
+ properties:
2327
+ cartItemStatus:
2328
+ $ref: '#/components/schemas/CartItemStatus'
2329
+ quantity:
2330
+ type: integer
2331
+ description: |-
2332
+ Amount of units for which this status is applicable, should be greater than zero
2333
+ format: int64
2334
+ maximum: 9999
2335
+ minimum: 0
2336
+ example: 1
2337
+ CardPaymentMethodSpecificOutput:
2338
+ type: object
2339
+ description: |
2340
+ Object containing the card payment method details.
2341
+ additionalProperties: false
2342
+ properties:
2343
+ paymentProductId:
2344
+ type: integer
2345
+ format: int32
2346
+ maximum: 99999
2347
+ minimum: 0
2348
+ description: |-
2349
+ Payment product identifier - please check product documentation for a full overview of possible values.
2350
+ example: 840
2351
+ authorisationCode:
2352
+ description: Card Authorization code as returned by the acquirer
2353
+ type: string
2354
+ fraudResults:
2355
+ $ref: '#/components/schemas/CardFraudResults'
2356
+ threeDSecureResults:
2357
+ $ref: '#/components/schemas/ThreeDSecureResults'
2358
+ CardPaymentMethodSpecificInput:
2359
+ type: object
2360
+ description: |
2361
+ Object containing the specific input details for card payments.
2362
+ additionalProperties: false
2363
+ properties:
2364
+ authorizationMode:
2365
+ $ref: '#/components/schemas/AuthorizationMode'
2366
+ recurring:
2367
+ $ref: '#/components/schemas/CardRecurrenceDetails'
2368
+ paymentProcessingToken:
2369
+ type: string
2370
+ description: ID of the token to use to create the payment.
2371
+ example: 0ca037cc-9079-4df7-8f6f-f2a3443ee521
2372
+ maxLength: 40
2373
+ reportingToken:
2374
+ type: string
2375
+ readOnly: true
2376
+ description: Token to identify the card in the reporting.
2377
+ example: 12a037cc-833d-8b45-8f6f-11c34171f4e1
2378
+ maxLength: 40
2379
+ transactionChannel:
2380
+ $ref: '#/components/schemas/TransactionChannel'
2381
+ unscheduledCardOnFileRequestor:
2382
+ $ref: '#/components/schemas/UnscheduledCardOnFileRequestor'
2383
+ unscheduledCardOnFileSequenceIndicator:
2384
+ $ref: '#/components/schemas/UnscheduledCardOnFileSequenceIndicator'
2385
+ paymentProductId:
2386
+ type: integer
2387
+ format: int32
2388
+ maximum: 99999
2389
+ minimum: 0
2390
+ description: |-
2391
+ Payment product identifier - please check product documentation for a full overview of possible values.
2392
+ example: 840
2393
+ card:
2394
+ $ref: '#/components/schemas/CardInfo'
2395
+ returnUrl:
2396
+ type: string
2397
+ description: |-
2398
+ The URL that the customer is redirect to after the payment flow has finished. You can add any number of key
2399
+ value pairs in the query string that, for instance help you to identify the customer when they return to
2400
+ your site. Please note that we will also append some additional key value pairs that will also help you with
2401
+ this identification process.
2402
+ Note: The provided URL should be absolute and contain the protocol to use, e.g. http:// or https://. For use
2403
+ on mobile devices a custom protocol can be used in the form of protocol://. This protocol must be registered
2404
+ on the device first.
2405
+ URLs without a protocol will be rejected.
2406
+ maxLength: 200
2407
+ example: https://secure.ogone.com/ncol/test/displayparams.asp
2408
+ cardOnFileRecurringFrequency:
2409
+ type: string
2410
+ description: |-
2411
+ Period of payment occurrence for recurring and installment payments. Allowed values:
2412
+ * Yearly
2413
+ * Quarterly
2414
+ * Monthly
2415
+
2416
+ * Weekly
2417
+ * Daily
2418
+ Supported soon
2419
+ enum:
2420
+ - Yearly
2421
+ - Quarterly
2422
+ - Monthly
2423
+ - Weekly
2424
+ - Daily
2425
+ cardOnFileRecurringExpiration:
2426
+ maxLength: 8
2427
+ pattern: ^((19|20|21)\d{6})?$
2428
+ type: string
2429
+ description: |-
2430
+ The end date of the last scheduled payment in a series of transactions.
2431
+ Format YYYYMMDD Supported soon
2432
+ CardRecurrenceDetails:
2433
+ type: object
2434
+ description: Object containing data related to recurring.
2435
+ properties:
2436
+ recurringPaymentSequenceIndicator:
2437
+ type: string
2438
+ description: |-
2439
+ * first = This transaction is the first of a series of recurring transactions
2440
+ * recurring = This transaction is a subsequent transaction in a series of recurring transactions
2441
+
2442
+ Note: For any first of a recurring the system will automatically create a token as you will need to use a
2443
+ token for any subsequent recurring transactions. In case a token already exists this is indicated in the
2444
+ response with a value of False for the isNewToken property in the response.
2445
+ enum:
2446
+ - first
2447
+ - recurring
2448
+ CartItemInput:
2449
+ type: object
2450
+ description: This object contains information of all items in the cart.
2451
+ If a cart item is provided, the productPrice and quantity is required.
2452
+ additionalProperties: false
2453
+ properties:
2454
+ invoiceData:
2455
+ $ref: '#/components/schemas/CartItemInvoiceData'
2456
+ orderLineDetails:
2457
+ $ref: '#/components/schemas/OrderLineDetailsInput'
2458
+ CartItemPatch:
2459
+ type: object
2460
+ description: This object contains information of all items in the cart.
2461
+ If a cart item is provided, the productPrice and quantity is required.
2462
+ additionalProperties: false
2463
+ properties:
2464
+ invoiceData:
2465
+ $ref: '#/components/schemas/CartItemInvoiceData'
2466
+ orderLineDetails:
2467
+ $ref: '#/components/schemas/OrderLineDetailsPatch'
2468
+ CartItemResult:
2469
+ type: object
2470
+ description: This object contains information of all items in the cart.
2471
+ If a cart item is provided, the productPrice and quantity is required.
2472
+ additionalProperties: false
2473
+ properties:
2474
+ invoiceData:
2475
+ $ref: '#/components/schemas/CartItemInvoiceData'
2476
+ orderLineDetails:
2477
+ $ref: '#/components/schemas/OrderLineDetailsResult'
2478
+ CheckoutResponse:
2479
+ type: object
2480
+ xml:
2481
+ name: 'checkoutResponse'
2482
+ description: |
2483
+ The Checkout corresponds to the order of the WL API. We do not take additionalInput from the WL API. We have no
2484
+ shipping and use deliveryAddress instead of address.
2485
+ properties:
2486
+ commerceCaseId:
2487
+ description: reference to the Commerce Case.
2488
+ type: string
2489
+ format: UUID
2490
+ example: "4f0c512e-f12c-11ec-8ea0-0242ac120002"
2491
+ checkoutId:
2492
+ description: reference to the Checkout.
2493
+ type: string
2494
+ format: UUID
2495
+ example: "4f0c512e-f12c-11ec-8ea0-0242ac120002"
2496
+ merchantCustomerId:
2497
+ type: string
2498
+ description: Unique identifier for the customer.
2499
+ maxLength: 20
2500
+ example: "1234"
2501
+ amountOfMoney:
2502
+ $ref: '#/components/schemas/AmountOfMoney'
2503
+ references:
2504
+ $ref: '#/components/schemas/CheckoutReferences'
2505
+ shipping:
2506
+ $ref: '#/components/schemas/Shipping'
2507
+ shoppingCart:
2508
+ $ref: '#/components/schemas/ShoppingCartResult'
2509
+ paymentExecutions:
2510
+ type: array
2511
+ items:
2512
+ $ref: '#/components/schemas/PaymentExecution'
2513
+ checkoutStatus:
2514
+ $ref: '#/components/schemas/StatusCheckout'
2515
+ statusOutput:
2516
+ $ref: '#/components/schemas/StatusOutput'
2517
+ paymentInformation:
2518
+ type: array
2519
+ items:
2520
+ $ref: '#/components/schemas/PaymentInformationResponse'
2521
+ creationDateTime:
2522
+ $ref: '#/components/schemas/CreationDateTime'
2523
+ allowedPaymentActions:
2524
+ type: array
2525
+ items:
2526
+ $ref: '#/components/schemas/AllowedPaymentActions'
2527
+ CompleteFinancingPaymentMethodSpecificInput:
2528
+ type: object
2529
+ description: |
2530
+ To complete the Payment the completeFinancingMethodSpecificInput has to be provided.
2531
+ At the moment it is only available for PAYONE Secured Installment (paymentProductId 3391).
2532
+ properties:
2533
+ paymentProductId:
2534
+ maximum: 99999
2535
+ minimum: 0
2536
+ type: integer
2537
+ description: |-
2538
+ Payment product identifier. Currently supported payment methods:
2539
+ * 3391 - PAYONE Secured Installment
2540
+ format: int32
2541
+ example: 3391
2542
+ requiresApproval:
2543
+ type: boolean
2544
+ description: |-
2545
+ * true = the payment requires approval before the funds will be captured using the Approve payment or
2546
+ Capture payment API
2547
+ * false = the payment does not require approval, and the funds will be captured automatically
2548
+
2549
+ If the parameter is not provided in the request, the default value will be true
2550
+ paymentProduct3391SpecificInput:
2551
+ $ref: '#/components/schemas/PaymentProduct3391SpecificInput'
2552
+ CompleteOrderRequest:
2553
+ type: object
2554
+ description: |-
2555
+ The Complete-Order request is the last step to finalize the initial Order. It requires the completePaymentMethodSpecificInput.
2556
+ The previously provided data from the Commerce Case, Checkout and Order will automatically be loaded and used for the completion of the Order.
2557
+ properties:
2558
+ completePaymentMethodSpecificInput:
2559
+ $ref: '#/components/schemas/CompletePaymentMethodSpecificInput'
2560
+ CompletePaymentMethodSpecificInput:
2561
+ type: object
2562
+ description: |
2563
+ To complete the Order the completePaymentMethodSpecificInput has to be provided, containing the selected installmentOptionId as well as the the bankAccountInformation of the customer.
2564
+ properties:
2565
+ paymentProduct3391SpecificInput:
2566
+ $ref: '#/components/schemas/PaymentProduct3391SpecificInput'
2567
+ CompletePaymentRequest:
2568
+ type: object
2569
+ description: |-
2570
+ The Complete request is the last step to finalize the initially created Payment.
2571
+ It requires the completeFinancingPaymentMethodSpecificInput.
2572
+ The data for the order object should not differ from the previously provided information in Commerce Case, Checkout and Payment, but will not be validated nor automatically loaded from the Commerce Platform.
2573
+ properties:
2574
+ financingPaymentMethodSpecificInput:
2575
+ $ref: '#/components/schemas/CompleteFinancingPaymentMethodSpecificInput'
2576
+ order:
2577
+ $ref: '#/components/schemas/Order'
2578
+ device:
2579
+ $ref: '#/components/schemas/CustomerDevice'
2580
+ CompletePaymentResponse:
2581
+ type: object
2582
+ properties:
2583
+ creationOutput:
2584
+ $ref: '#/components/schemas/PaymentCreationOutput'
2585
+ merchantAction:
2586
+ $ref: '#/components/schemas/MerchantAction'
2587
+ payment:
2588
+ $ref: '#/components/schemas/PaymentResponse'
2589
+ CreateCheckoutRequest:
2590
+ type: object
2591
+ description: |
2592
+ Request to create a Checkout for a Commerce Case.
2593
+ The payment for the Checkout can be directly executed if autoExecuteOrder = true.
2594
+ In this case, the paymentMethodSpecificInput must be provided and only a full order is possible.
2595
+
2596
+ If no amountOfMoney is provided, the platform will calculate the respective Checkout amount based on the
2597
+ cartItem productPrice and quantity.
2598
+
2599
+ In case of a payment error, the payment can be retried by providing the respective commerceCaseId and checkoutId
2600
+ to the the Order or Payment Execution endpoint.
2601
+ properties:
2602
+ amountOfMoney:
2603
+ $ref: '#/components/schemas/AmountOfMoney'
2604
+ references:
2605
+ $ref: '#/components/schemas/CheckoutReferences'
2606
+ shipping:
2607
+ $ref: '#/components/schemas/Shipping'
2608
+ shoppingCart:
2609
+ $ref: '#/components/schemas/ShoppingCartInput'
2610
+ orderRequest:
2611
+ $ref: '#/components/schemas/OrderRequest'
2612
+ creationDateTime:
2613
+ $ref: '#/components/schemas/CreationDateTime'
2614
+ autoExecuteOrder:
2615
+ description: |
2616
+ Set this flag to directly execute a payment when creating a Commerce Case or Checkout.
2617
+ If the value for autoExecuteOrder is set to true, the paymentMethodSpecificInput for the order is mandatory
2618
+ and has to be provided. The autoExecuteOrder can only be used for orderType = full.
2619
+ If no shoppingCart information has been provided, a Payment Execution will be created instead of an Order. As a consequence, only Payment Execution endpoints can be used.
2620
+ type: boolean
2621
+ default: false
2622
+ CreateCheckoutResponse:
2623
+ type: object
2624
+ description: Object containing the reference of the Checkout for following requests.
2625
+ properties:
2626
+ checkoutId:
2627
+ description: |-
2628
+ Reference to the Checkout. Can be used for following requests to get and update the Checkout and execute the
2629
+ payment.
2630
+ type: string
2631
+ format: UUID
2632
+ example: "707ef15b-7a0a-48f2-b7d8-c95103418a9c"
2633
+ shoppingCart:
2634
+ $ref: '#/components/schemas/ShoppingCartResult'
2635
+ paymentResponse:
2636
+ $ref: '#/components/schemas/CreatePaymentResponse'
2637
+ errorResponse:
2638
+ $ref: '#/components/schemas/ErrorResponse'
2639
+ amountOfMoney:
2640
+ $ref: '#/components/schemas/AmountOfMoney'
2641
+ references:
2642
+ $ref: '#/components/schemas/CheckoutReferences'
2643
+ shipping:
2644
+ $ref: '#/components/schemas/Shipping'
2645
+ paymentExecution:
2646
+ $ref: '#/components/schemas/PaymentExecution'
2647
+ checkoutStatus:
2648
+ $ref: '#/components/schemas/StatusCheckout'
2649
+ statusOutput:
2650
+ $ref: '#/components/schemas/StatusOutput'
2651
+ creationDateTime:
2652
+ $ref: '#/components/schemas/CreationDateTime'
2653
+ allowedPaymentActions:
2654
+ type: array
2655
+ items:
2656
+ $ref: '#/components/schemas/AllowedPaymentActions'
2657
+ CheckoutReferences:
2658
+ type: object
2659
+ description: Object containing all details that are linked to the Checkout.
2660
+ additionalProperties: false
2661
+ properties:
2662
+ merchantReference:
2663
+ type: string
2664
+ description: Unique reference of the Checkout that is also returned for reporting and reconciliation purposes.
2665
+ maxLength: 40
2666
+ example: customer-order-1234
2667
+ merchantShopReference:
2668
+ type: string
2669
+ description:
2670
+ Optional parameter to define the shop or touchpoint where a sale has been realized (e.g. different stores).
2671
+ maxLength: 64
2672
+ example: Shop-12345
2673
+ CheckoutsResponse:
2674
+ type: object
2675
+ description: Object that holds the number of found Checkouts and the requested page of Checkouts
2676
+ additionalProperties: false
2677
+ properties:
2678
+ numberOfCheckouts:
2679
+ minimum: 0
2680
+ type: integer
2681
+ description: Number of found Checkouts
2682
+ format: int64
2683
+ example: 3390
2684
+ checkouts:
2685
+ type: array
2686
+ description: List of Checkouts
2687
+ items:
2688
+ $ref: '#/components/schemas/CheckoutResponse'
2689
+ CompanyInformation:
2690
+ description: Object containing details of the company.
2691
+ type: object
2692
+ additionalProperties: false
2693
+ properties:
2694
+ name:
2695
+ type: string
2696
+ description: Name of company from a customer perspective
2697
+ x-trim-at: 50
2698
+ example: Customer Company Name
2699
+ CommerceCaseResponse:
2700
+ properties:
2701
+ merchantReference:
2702
+ type: string
2703
+ description: |-
2704
+ Unique reference of the Commerce Case that is also returned for reporting and reconciliation purposes.
2705
+ maxLength: 40
2706
+ example: customer-commerce-case-123
2707
+ commerceCaseId:
2708
+ type: string
2709
+ format: UUID
2710
+ description: |-
2711
+ Unique ID reference of the Commerce Case. It can be used to add additional Checkouts to the Commerce Case.
2712
+ example: 0c3ab9d7-19ed-40da-9a0e-1f96f4cfb8ae
2713
+ customer:
2714
+ $ref: '#/components/schemas/Customer'
2715
+ checkouts:
2716
+ type: array
2717
+ items:
2718
+ $ref: '#/components/schemas/CheckoutResponse'
2719
+ creationDateTime:
2720
+ $ref: '#/components/schemas/CreationDateTime'
2721
+ CommerceCasesResponse:
2722
+ type: array
2723
+ description: List of Commerce Cases
2724
+ items:
2725
+ $ref: '#/components/schemas/CommerceCaseResponse'
2726
+ CreateCommerceCaseResponse:
2727
+ type: object
2728
+ description: |-
2729
+ The response contains references to the created Commerce case and the Checkout. It also contains the payment
2730
+ response if the flag 'autoExecuteOrder' was set to true.
2731
+ properties:
2732
+ commerceCaseId:
2733
+ description: Unique ID of the Commerce Case. It can used to add additional Checkouts to the Commerce Case.
2734
+ type: string
2735
+ format: UUID
2736
+ example: "707ef15b-7a0a-48f2-b7d8-c95103418a9c"
2737
+ merchantReference:
2738
+ type: string
2739
+ description: |-
2740
+ Unique reference of the Commerce Case that is also returned for reporting and reconciliation purposes.
2741
+ maxLength: 40
2742
+ example: customer-commerce-case-123
2743
+ customer:
2744
+ $ref: '#/components/schemas/Customer'
2745
+ checkout:
2746
+ $ref: '#/components/schemas/CreateCheckoutResponse'
2747
+ creationDateTime:
2748
+ $ref: '#/components/schemas/CreationDateTime'
2749
+ ContactDetails:
2750
+ type: object
2751
+ description: |-
2752
+ Object containing contact details like email address and phone number.
2753
+ additionalProperties: false
2754
+ properties:
2755
+ emailAddress:
2756
+ type: string
2757
+ description: Email address of the customer
2758
+ x-trim-at: 70
2759
+ example: "wile.e.coyote@acmelabs.com"
2760
+ phoneNumber:
2761
+ type: string
2762
+ description: Phone number of the customer
2763
+ x-trim-at: 20
2764
+ example: "+1234567890"
2765
+ CreateCommerceCaseRequest:
2766
+ properties:
2767
+ merchantReference:
2768
+ type: string
2769
+ description: |-
2770
+ Unique reference of the Commerce Case that is also returned for reporting and reconciliation purposes.
2771
+ maxLength: 40
2772
+ example: customer-commerce-case-123
2773
+ customer:
2774
+ $ref: '#/components/schemas/Customer'
2775
+ creationDateTime:
2776
+ $ref: '#/components/schemas/CreationDateTime'
2777
+ checkout:
2778
+ $ref: '#/components/schemas/CreateCheckoutRequest'
2779
+ CreationDateTime:
2780
+ type: string
2781
+ format: date-time
2782
+ description: |
2783
+ Creation date and time of the Checkout in RFC3339 format. It can either be provided in the request or
2784
+ otherwise will be automatically set to the time when the request CreateCommerceCase was received.
2785
+ Response values will always be in UTC time, but when providing this field in the requests, the time offset
2786
+ can have different formats.
2787
+
2788
+ Accepted formats are:
2789
+ * YYYY-MM-DD'T'HH:mm:ss'Z'
2790
+ * YYYY-MM-DD'T'HH:mm:ss+XX:XX
2791
+ * YYYY-MM-DD'T'HH:mm:ss-XX:XX
2792
+ * YYYY-MM-DD'T'HH:mm'Z'
2793
+ * YYYY-MM-DD'T'HH:mm+XX:XX
2794
+ * YYYY-MM-DD'T'HH:mm-XX:XX
2795
+
2796
+ All other formats may be ignored by the system.
2797
+ example: 2023-12-06T23:59:60Z
2798
+ CreatePaymentResponse:
2799
+ type: object
2800
+ description: Object containing details on the created payment it has directly be executed.
2801
+ additionalProperties: false
2802
+ properties:
2803
+ creationOutput:
2804
+ $ref: '#/components/schemas/PaymentCreationOutput'
2805
+ merchantAction:
2806
+ $ref: '#/components/schemas/MerchantAction'
2807
+ payment:
2808
+ $ref: '#/components/schemas/PaymentResponse'
2809
+ paymentExecutionId:
2810
+ description: reference to the paymentExecution.
2811
+ type: string
2812
+ format: UUID
2813
+ example: "4f0c512e-f12c-11ec-8ea0-0242ac120002"
2814
+ Customer:
2815
+ type: object
2816
+ description: |
2817
+ Object containing the details of a customer.
2818
+ additionalProperties: false
2819
+ properties:
2820
+ companyInformation:
2821
+ $ref: '#/components/schemas/CompanyInformation'
2822
+ merchantCustomerId:
2823
+ type: string
2824
+ description: Unique identifier for the customer.
2825
+ maxLength: 20
2826
+ example: "1234"
2827
+ billingAddress:
2828
+ $ref: '#/components/schemas/Address'
2829
+ contactDetails:
2830
+ $ref: '#/components/schemas/ContactDetails'
2831
+ fiscalNumber:
2832
+ maxLength: 14
2833
+ type: string
2834
+ description: |-
2835
+ Fiscal registration number of the customer or the tax registration number of the company for a business
2836
+ customer. Please find below specifics per country:
2837
+ * Brazil - Consumer (CPF) with a length of 11 digits
2838
+ * Brazil - Company (CNPJ) with a length of 14 digits
2839
+ * Denmark - Consumer (CPR-nummer or personnummer) with a length of 10 digits
2840
+ * Finland - Consumer (Finnish: henkilötunnus (abbreviated as HETU), Swedish: personbeteckning) with a
2841
+ length of 11 characters
2842
+ * Norway - Consumer (fødselsnummer) with a length of 11 digits
2843
+ * Sweden - Consumer (personnummer) with a length of 10 or 12 digits
2844
+ businessRelation:
2845
+ type: string
2846
+ description: |-
2847
+ Business relation to the customer. Possible values:
2848
+ * B2C - Indicates business to consumer
2849
+ * B2B - Indicates business to business
2850
+
2851
+ Mandatory for the the following payment methods:
2852
+ * 3390 - PAYONE Secured Invoice
2853
+ * 3391 - PAYONE Secured Installment
2854
+ * 3392 - PAYONE Secured Direct Debit
2855
+ enum:
2856
+ - B2C
2857
+ - B2B
2858
+ locale:
2859
+ maxLength: 2
2860
+ type: string
2861
+ description: |-
2862
+ The locale that the customer should be addressed in (for 3rd parties).
2863
+
2864
+ Note: Only the language code is supported.
2865
+ example: de
2866
+ personalInformation:
2867
+ $ref: '#/components/schemas/PersonalInformation'
2868
+ account:
2869
+ $ref: '#/components/schemas/CustomerAccount'
2870
+ CustomerAccount:
2871
+ type: object
2872
+ description: Object containing data related to the account the customer has with you.
2873
+ properties:
2874
+ createDate:
2875
+ type: string
2876
+ format: date-time
2877
+ description: |
2878
+ Creation date and time of the customer account in ISO 8601 format (UTC).
2879
+ Accepted formats are:
2880
+ * YYYY-MM-DD'T'HH:mm:ss'Z'
2881
+ * YYYY-MM-DD'T'HH:mm:ss+XX:XX
2882
+ * YYYY-MM-DD'T'HH:mm:ss-XX:XX
2883
+ * YYYY-MM-DD'T'HH:mm'Z'
2884
+ * YYYY-MM-DD'T'HH:mm+XX:XX
2885
+ * YYYY-MM-DD'T'HH:mm-XX:XX
2886
+ example: 2023-10-05T14:30:15.123Z
2887
+
2888
+ CustomerDevice:
2889
+ type: object
2890
+ properties:
2891
+ ipAddress:
2892
+ maxLength: 45
2893
+ type: string
2894
+ description: The IP address of the customer client from the HTTP Headers.
2895
+ deviceToken:
2896
+ maxLength: 255
2897
+ type: string
2898
+ description: Tokenized representation of the end customers device. For example
2899
+ used for PAYONE Buy Now, Pay Later (BNPL).
2900
+ description: |
2901
+ Object containing information about the device of the end customer.
2902
+ DeliveryInformation:
2903
+ type: object
2904
+ description: |-
2905
+ Delivery object contains additional information about the delivery/shipment, which is the basis for the Capture.
2906
+ The amountOfMoney in the cartItem will not be used in the request.
2907
+ properties:
2908
+ items:
2909
+ type: array
2910
+ description: Items delivered.
2911
+ items:
2912
+ $ref: '#/components/schemas/CartItemInput'
2913
+ DeliverItem:
2914
+ type: object
2915
+ properties:
2916
+ id:
2917
+ type: string
2918
+ format: UUID
2919
+ description: Id of the item to deliver.
2920
+ example: "4f0c512e-f12c-11ec-8ea0-0242ac120002"
2921
+ quantity:
2922
+ type: integer
2923
+ description: |-
2924
+ Quantity of the units being delivered, should be greater than zero
2925
+ Note: Must not be all spaces or all zeros
2926
+ format: int64
2927
+ maximum: 9999
2928
+ minimum: 1
2929
+ example: 1
2930
+ required:
2931
+ - id
2932
+ - quantity
2933
+ DeliverRequest:
2934
+ type: object
2935
+ description: |
2936
+ Request to mark items of the respective Checkout as delivered and to automatically execute a Capture.
2937
+ A Deliver can be created for a full or the partial ShoppingCart of the Checkout.
2938
+ The platform will automatically calculate the respective amount to trigger the Capture. For a partial Deliver a
2939
+ list of items must be provided.
2940
+ The item details for the Capture will be automatically loaded from the Checkout.
2941
+
2942
+ The cancellationReason must be provided if deliverType is set to PARTIAL and isFinal is set to true for BNPL
2943
+ payment methods (paymentProductId 3390, 3391 and 3392).
2944
+ For other payment methods the cancellationReason is not mandatory in this case but can be used for reporting
2945
+ and reconciliation purposes.
2946
+ properties:
2947
+ deliverType:
2948
+ $ref: '#/components/schemas/DeliverType'
2949
+ isFinal:
2950
+ type: boolean
2951
+ default: false
2952
+ description: |
2953
+ This property indicates whether this will be the final operation.
2954
+ For deliverType FULL, it is always the final operation.
2955
+ If deliverType PARTIAL is provided and the property is set to true, the remaining amount of the items will be cancelled and the items are marked as CANCELLED.
2956
+ cancellationReason:
2957
+ $ref: '#/components/schemas/CancellationReason'
2958
+ deliverItems:
2959
+ type: array
2960
+ items:
2961
+ $ref: '#/components/schemas/DeliverItem'
2962
+ DeliverResponse:
2963
+ type: object
2964
+ properties:
2965
+ capturePaymentResponse:
2966
+ $ref: '#/components/schemas/CapturePaymentResponse'
2967
+ shoppingCart:
2968
+ $ref: '#/components/schemas/ShoppingCartResult'
2969
+ DeliverType:
2970
+ type: string
2971
+ description: |
2972
+ The deliverType refers to the ShoppingCart items of the Checkout.
2973
+ deliverType = FULL should be provided if all items should be marked as delivered and the payment for the entire
2974
+ ShoppingCart should be captured.
2975
+ deliverType = PARTIAL should be provided if only certain items should be marked as delivered and the Capture
2976
+ should not be made for the entire ShoppingCart. For this type the list of items has to be provided.
2977
+ Following conditions apply to the Deliver request:
2978
+ * items must be in status ORDERED
2979
+ * there was no Capture, Refund or Cancel triggered over the Payment Execution resource
2980
+ * for the deliverType FULL no items are provided in the request
2981
+ Note: If a DISCOUNT productType is among the ShoppingCart items, only deliverType FULL is possible.
2982
+ enum:
2983
+ - FULL
2984
+ - PARTIAL
2985
+
2986
+ ErrorResponse:
2987
+ type: object
2988
+ additionalProperties: false
2989
+ properties:
2990
+ errorId:
2991
+ type: string
2992
+ description: Unique reference of this error response for debugging purposes
2993
+ errors:
2994
+ type: array
2995
+ items:
2996
+ $ref: '#/components/schemas/APIError'
2997
+
2998
+ ExtendedCheckoutStatus:
2999
+ type: string
3000
+ description: |
3001
+ The extendedCheckoutStatus provides a more granular status of the Checkout based on the respective amounts. The
3002
+ extendedCheckoutStatus include the regular Checkout status OPEN, DELETED, PENDING_COMPLETION, COMPLETED, BILLED,
3003
+ and CHARGEBACKED as well as three additional status:
3004
+
3005
+ 1. PARTIALLY_BILLED: Checkout amount has been partially collected. Overall the Checkout status is BILLED and one
3006
+ of the following conditions is true:
3007
+ (1) the openAmount is greater than zero or
3008
+ (2) the openAmount is zero, the refundAmount is zero and the checkoutAmount is not equal to collectedAmount plus the cancelledAmount.
3009
+ 2. PARTIALLY_REFUNDED: The entire Checkout amount has been captured and an amount has been partially refunded to
3010
+ customer. Overall the Checkout status is BILLED, the openAmount is zero and the refundAmount and collectedAmount
3011
+ are greater than zero.
3012
+ 3. REFUNDED: The entire Checkout amount has been refunded to the customer. Overall the Checkout status is
3013
+ BILLED, the openAmount and collectedAmount are zero but the refundAmount is greater than zero.
3014
+ enum:
3015
+ - OPEN
3016
+ - DELETED
3017
+ - PENDING_COMPLETION
3018
+ - COMPLETED
3019
+ - PARTIALLY_BILLED
3020
+ - BILLED
3021
+ - CHARGEBACKED
3022
+ - PARTIALLY_REFUNDED
3023
+ - REFUNDED
3024
+ example: OPEN
3025
+ FinancingPaymentMethodSpecificInput:
3026
+ type: object
3027
+ description: Object containing the specific input details for financing payment methods (Buy Now Pay Later)
3028
+ properties:
3029
+ paymentProductId:
3030
+ maximum: 99999
3031
+ minimum: 0
3032
+ type: integer
3033
+ description: |-
3034
+ Payment product identifier - please check product documentation for a full overview of possible values.
3035
+ Currently supported payment methods
3036
+ * 3390 - PAYONE Secured Invoice
3037
+ * 3391 - PAYONE Secured Installment
3038
+ * 3392 - PAYONE Secured Direct Debit
3039
+ format: int32
3040
+ example: 3390
3041
+ requiresApproval:
3042
+ type: boolean
3043
+ description: |-
3044
+ * true = the payment requires approval before the funds will be captured using the Approve payment or
3045
+ Capture payment API
3046
+ * false = the payment does not require approval, and the funds will be captured automatically
3047
+
3048
+ If the parameter is not provided in the request, the default value will be true
3049
+ paymentProduct3392SpecificInput:
3050
+ $ref: '#/components/schemas/PaymentProduct3392SpecificInput'
3051
+ FinancingPaymentMethodSpecificOutput:
3052
+ type: object
3053
+ description: Object containing the specific output details for financing payment methods (Buy Now Pay Later)
3054
+ properties:
3055
+ paymentProductId:
3056
+ maximum: 99999
3057
+ minimum: 0
3058
+ type: integer
3059
+ description: |-
3060
+ Payment product identifier - please check product documentation for a full overview of possible values.
3061
+ Currently supported payment methods
3062
+ * 3390 - PAYONE Secured Invoice
3063
+ * 3391 - PAYONE Secured Installment
3064
+ * 3392 - PAYONE Secured Direct Debit
3065
+ format: int32
3066
+ example: 3390
3067
+ paymentProduct3391SpecificOutput:
3068
+ $ref: '#/components/schemas/PaymentProduct3391SpecificOutput'
3069
+ paymentInstructions:
3070
+ $ref: '#/components/schemas/PaymentInstructions'
3071
+ InstallmentOption:
3072
+ type: object
3073
+ properties:
3074
+ installmentOptionId:
3075
+ type: string
3076
+ description: Installment option Identifier. Use this in the Complete Payment
3077
+ for the selected installment option.
3078
+ example: IOP_478d44fea0494eea86bc87f9e4a63328
3079
+ numberOfPayments:
3080
+ type: integer
3081
+ description: The number of monthly payments for this installment.
3082
+ format: int32
3083
+ example: 12
3084
+ monthlyAmount:
3085
+ type: object
3086
+ description: Monthly rate amount.
3087
+ allOf:
3088
+ - $ref: '#/components/schemas/AmountOfMoney'
3089
+ lastRateAmount:
3090
+ type: object
3091
+ description: Last rate amount.
3092
+ allOf:
3093
+ - $ref: '#/components/schemas/AmountOfMoney'
3094
+ effectiveInterestRate:
3095
+ type: integer
3096
+ description: Effective interest amount in percent with two decimals.
3097
+ format: int32
3098
+ example: 1209
3099
+ nominalInterestRate:
3100
+ type: integer
3101
+ description: Nominal interest amount in percent with two decimals.
3102
+ format: int32
3103
+ example: 1199
3104
+ totalAmount:
3105
+ type: object
3106
+ description: Total rate amount.
3107
+ allOf:
3108
+ - $ref: '#/components/schemas/AmountOfMoney'
3109
+ firstRateDate:
3110
+ maxLength: 8
3111
+ pattern: ^((19|20|21)\d{6})?$
3112
+ type: string
3113
+ description: |-
3114
+ Due date of first rate.
3115
+ Format: YYYYMMDD
3116
+ creditInformation:
3117
+ type: object
3118
+ description: Link with credit information.
3119
+ allOf:
3120
+ - $ref: '#/components/schemas/LinkInformation'
3121
+ required:
3122
+ - creditInformation
3123
+ - effectiveInterestRate
3124
+ - firstRateDate
3125
+ - installmentOptionId
3126
+ - lastRateAmount
3127
+ - monthlyAmount
3128
+ - nominalInterestRate
3129
+ - numberOfPayments
3130
+ - totalAmount
3131
+ CartItemInvoiceData:
3132
+ type: object
3133
+ description: Object containing the line items of the invoice or shopping cart.
3134
+ properties:
3135
+ description:
3136
+ type: string
3137
+ description: |
3138
+ Shopping cart item description.
3139
+ The description will also be displayed in the portal as the product name.
3140
+ example: Smartwatch
3141
+ x-trim-at: 116
3142
+ LinkInformation:
3143
+ type: object
3144
+ description: URL and content type information for an web resource.
3145
+ properties:
3146
+ href:
3147
+ type: string
3148
+ description: URL of link.
3149
+ type:
3150
+ type: string
3151
+ description: Content type of linked data.
3152
+ required:
3153
+ - href
3154
+ - type
3155
+ CartItemStatus:
3156
+ type: string
3157
+ enum:
3158
+ - ORDERED
3159
+ - DELIVERED
3160
+ - CANCELLED
3161
+ - RETURNED
3162
+ - WAITING_FOR_PAYMENT
3163
+ description: Indicates in which status the line item is
3164
+ MandateRecurrenceType:
3165
+ type: string
3166
+ enum:
3167
+ - UNIQUE
3168
+ - RECURRING
3169
+ description: |-
3170
+ Specifies whether the mandate is for one-off or recurring payments. Possible values are:
3171
+ * UNIQUE
3172
+ * RECURRING
3173
+ MerchantAction:
3174
+ type: object
3175
+ description: |-
3176
+ Object that contains the action, including the needed data, that you should perform next, like showing
3177
+ instructions, showing the transaction results or redirect to a third party to complete the payment
3178
+ additionalProperties: false
3179
+ properties:
3180
+ actionType:
3181
+ type: string
3182
+ description: |-
3183
+ Action merchants needs to take in the online payment process. Possible values are:
3184
+ * REDIRECT - The customer needs to be redirected using the details found in redirectData
3185
+ * SHOW_FORM - The customer needs to be shown a form with the fields found in formFields. You can submit the
3186
+ data entered by the user in a Complete payment request.
3187
+ * SHOW_INSTRUCTIONS - The customer needs to be shown payment instruction using the details found in
3188
+ showData. Alternatively the instructions can be rendered by us using the instructionsRenderingData
3189
+ * SHOW_TRANSACTION_RESULTS - The customer needs to be shown the transaction results using the details found
3190
+ in showData. Alternatively the instructions can be rendered by us using the instructionsRenderingData
3191
+ * MOBILE_THREEDS_CHALLENGE - The customer needs to complete a challenge as part of the 3D Secure
3192
+ authentication inside your mobile app. The details contained in mobileThreeDSecureChallengeParameters need
3193
+ to be provided to the EMVco certified Mobile SDK as a challengeParameters object.
3194
+ * CALL_THIRD_PARTY - The merchant needs to call a third party using the data found in thirdPartyData
3195
+ example: REDIRECT
3196
+ enum:
3197
+ - REDIRECT
3198
+ - SHOW_FORM
3199
+ - SHOW_INSTRUCTIONS
3200
+ - SHOW_TRANSACTION_RESULTS
3201
+ - MOBILE_THREEDS_CHALLENGE
3202
+ - CALL_THIRD_PARTY
3203
+ redirectData:
3204
+ $ref: '#/components/schemas/RedirectData'
3205
+ MobilePaymentMethodSpecificInput:
3206
+ type: object
3207
+ description: Object containing the specific input details for mobile payments.
3208
+ additionalProperties: false
3209
+ properties:
3210
+ paymentProductId:
3211
+ type: integer
3212
+ format: int32
3213
+ maximum: 99999
3214
+ minimum: 0
3215
+ description: |-
3216
+ Payment product identifier - please check product documentation for a full overview of possible values.
3217
+ example: 840
3218
+ authorizationMode:
3219
+ $ref: '#/components/schemas/AuthorizationMode'
3220
+ encryptedPaymentData:
3221
+ type: string
3222
+ description: |-
3223
+ The payment data if we will do the decryption of the encrypted payment data. Typically you'd use
3224
+ encryptedCustomerInput in the root of the create payment request to provide the encrypted payment data
3225
+ instead.
3226
+ publicKeyHash:
3227
+ type: string
3228
+ description: |-
3229
+ Public Key Hash A unique identifier to retrieve key used by Apple to encrypt information.
3230
+ ephemeralKey:
3231
+ type: string
3232
+ description: Ephemeral Key A unique generated key used by Apple to encrypt data.
3233
+ threeDSecure:
3234
+ $ref: '#/components/schemas/MobilePaymentThreeDSecure'
3235
+ paymentProduct302SpecificInput:
3236
+ $ref: '#/components/schemas/PaymentProduct302SpecificInput'
3237
+ MobilePaymentMethodSpecificOutput:
3238
+ type: object
3239
+ description: Object containing the mobile payment method details.
3240
+ additionalProperties: false
3241
+ properties:
3242
+ paymentProductId:
3243
+ type: integer
3244
+ format: int32
3245
+ maximum: 99999
3246
+ minimum: 0
3247
+ description: |-
3248
+ Payment product identifier - please check product documentation for a full overview of possible values.
3249
+ example: 302
3250
+ authorisationCode:
3251
+ description: Card Authorization code as returned by the acquirer
3252
+ type: string
3253
+ fraudResults:
3254
+ $ref: '#/components/schemas/CardFraudResults'
3255
+ threeDSecureResults:
3256
+ $ref: '#/components/schemas/ThreeDSecureResults'
3257
+ network:
3258
+ type: string
3259
+ description: The card network that was used for a mobile payment method operation
3260
+ MobilePaymentThreeDSecure:
3261
+ type: object
3262
+ description: |-
3263
+ Object containing specific data regarding 3-D Secure for card digital wallets.
3264
+ Necessary to perform 3D Secure when there is no liability shift from the wallet and corresponding card network.
3265
+ properties:
3266
+ redirectionData:
3267
+ $ref: '#/components/schemas/RedirectionData'
3268
+ Order:
3269
+ type: object
3270
+ description: |-
3271
+ Order object containing order related data Please note that this object is required to be able to submit the
3272
+ amount.
3273
+ properties:
3274
+ amountOfMoney:
3275
+ $ref: '#/components/schemas/AmountOfMoney'
3276
+ customer:
3277
+ $ref: '#/components/schemas/Customer'
3278
+ references:
3279
+ $ref: '#/components/schemas/References'
3280
+ shipping:
3281
+ $ref: '#/components/schemas/Shipping'
3282
+ shoppingCart:
3283
+ $ref: '#/components/schemas/ShoppingCartInput'
3284
+ required:
3285
+ - references
3286
+ OrderItem:
3287
+ type: object
3288
+ description: Items should only be provided for orderType = PARTIAL
3289
+ properties:
3290
+ id:
3291
+ type: string
3292
+ format: UUID
3293
+ description: |-
3294
+ Id of the item from the ShoppingCart. The id will be returned in the response from create Checkout request.
3295
+ example: "4f0c512e-f12c-11ec-8ea0-0242ac120002"
3296
+ quantity:
3297
+ type: integer
3298
+ description: |
3299
+ Quantity of the specific item. Must be greater than zero.
3300
+ Note: Must not be all spaces or all zeros
3301
+ format: int64
3302
+ maximum: 9999
3303
+ minimum: 1
3304
+ example: 1
3305
+ required:
3306
+ - id
3307
+ - quantity
3308
+ OrderLineDetailsInput:
3309
+ type: object
3310
+ description: |
3311
+ Object containing additional information that when supplied can have a beneficial effect on the discountrates.
3312
+ additionalProperties: false
3313
+ properties:
3314
+ productCode:
3315
+ type: string
3316
+ description: Product or UPC Code
3317
+ x-trim-at: 50
3318
+ example: ASP01
3319
+ productPrice:
3320
+ type: integer
3321
+ description: The price of one unit of the product, the value should be zero or greater.
3322
+ format: int64
3323
+ maximum: 2147483647
3324
+ minimum: 0
3325
+ example: 480
3326
+ productType:
3327
+ $ref: '#/components/schemas/ProductType'
3328
+ quantity:
3329
+ type: integer
3330
+ description: |-
3331
+ Quantity of the units being purchased, should be greater than zero
3332
+ Note: Must not be all spaces or all zeros
3333
+ format: int64
3334
+ maximum: 9999
3335
+ minimum: 0
3336
+ example: 1
3337
+ taxAmount:
3338
+ type: integer
3339
+ description: Tax on the line item, with the last two digits implied as decimal places.
3340
+ format: int64
3341
+ maximum: 2147483647
3342
+ minimum: 0
3343
+ example: 0
3344
+ taxAmountPerUnit:
3345
+ type: boolean
3346
+ description: |-
3347
+ This field indicates if the `taxAmount` is to be interpreted as the tax amount per unit rather than for the entire line item.
3348
+ This field is included in the response only when `taxAmount` is set; otherwise, it will return as `null`.
3349
+ format: int64
3350
+ example: true
3351
+ default: false
3352
+ productUrl:
3353
+ type: string
3354
+ description: |-
3355
+ URL of the product in shop.
3356
+
3357
+ Used for PAYONE Buy Now, Pay Later (BNPL).
3358
+ format: uri
3359
+ maxLength: 2048
3360
+ example: https://shop.url/watches/watch01
3361
+ productImageUrl:
3362
+ type: string
3363
+ description: |-
3364
+ URL of a product image.
3365
+
3366
+ Used for PAYONE Buy Now, Pay Later (BNPL).
3367
+ format: uri
3368
+ maxLength: 2048
3369
+ example: https://shop.url/watches/watch01.jpg
3370
+ productCategoryPath:
3371
+ type: string
3372
+ description: |-
3373
+ Category path of the item.
3374
+
3375
+ Used for PAYONE Buy Now, Pay Later (BNPL).
3376
+ maxLength: 2048
3377
+ example: Watches > Smartwatches
3378
+ merchantShopDeliveryReference:
3379
+ type: string
3380
+ description: |-
3381
+ Optional parameter to define the delivery shop or touchpoint where an item has been collected (e.g. for
3382
+ Click & Collect or Click & Reserve).
3383
+ x-trim-at: 50
3384
+ example: Store-12345
3385
+ required:
3386
+ - productPrice
3387
+ - quantity
3388
+ OrderLineDetailsPatch:
3389
+ type: object
3390
+ description: |
3391
+ Object containing additional information that when supplied can have a beneficial effect on the discountrates.
3392
+ additionalProperties: false
3393
+ allOf:
3394
+ - $ref: '#/components/schemas/OrderLineDetailsInput'
3395
+ properties:
3396
+ id:
3397
+ description: Unique identifier of a cart item
3398
+ type: string
3399
+ format: UUID
3400
+ example: 7a3444d3-f6ce-4b6e-b6c4-2486a160cf19
3401
+ status:
3402
+ type: array
3403
+ items:
3404
+ $ref: '#/components/schemas/CartItemOrderStatus'
3405
+ OrderLineDetailsResult:
3406
+ type: object
3407
+ description: |
3408
+ Object containing additional information that when supplied can have a beneficial effect on the discountrates.
3409
+ additionalProperties: false
3410
+ allOf:
3411
+ - $ref: '#/components/schemas/OrderLineDetailsInput'
3412
+ properties:
3413
+ id:
3414
+ description: Unique identifier of a cart item
3415
+ type: string
3416
+ format: UUID
3417
+ example: 7a3444d3-f6ce-4b6e-b6c4-2486a160cf19
3418
+ status:
3419
+ type: array
3420
+ items:
3421
+ $ref: '#/components/schemas/CartItemOrderStatus'
3422
+ ProductType:
3423
+ type: string
3424
+ description: |-
3425
+ Enum to classify items that are purchased
3426
+ * GOODS - Goods
3427
+ * SHIPMENT - Shipping charges
3428
+ * HANDLING_FEE - Handling fee
3429
+ * DISCOUNT - Voucher / discount
3430
+ enum:
3431
+ - GOODS
3432
+ - SHIPMENT
3433
+ - HANDLING_FEE
3434
+ - DISCOUNT
3435
+ References:
3436
+ type: object
3437
+ description: Object that holds all reference properties that are linked to this transaction.
3438
+ properties:
3439
+ descriptor:
3440
+ type: string
3441
+ description: |-
3442
+ Descriptive text that is used towards to customer, either during an online Checkout at a third party and/or
3443
+ on the statement of the customer. For card transactions this is usually referred to as a Soft Descriptor.
3444
+ The maximum allowed length varies per card acquirer:
3445
+ * AIB - 22 characters
3446
+ * American Express - 25 characters
3447
+ * Atos Origin BNP - 15 characters
3448
+ * Barclays - 25 characters
3449
+ * Catella - 22 characters
3450
+ * CBA - 20 characters
3451
+ * Elavon - 25 characters
3452
+ * First Data - 25 characters
3453
+ * INICIS (INIPAY) - 22-30 characters
3454
+ * JCB - 25 characters
3455
+ * Merchant Solutions - 22-25 characters
3456
+ * Payvision (EU & HK) - 25 characters
3457
+ * SEB Euroline - 22 characters
3458
+ * Sub1 Argentina - 15 characters
3459
+ * Wells Fargo - 25 characters
3460
+
3461
+ Note that we advise you to use 22 characters as the max length as beyond this our experience is that issuers
3462
+ will start to truncate. We currently also only allow per API call overrides for AIB and Barclays
3463
+ For alternative payment products the maximum allowed length varies per payment product:
3464
+ * 402 e-Przelewy - 30 characters
3465
+ * 404 INICIS - 80 characters
3466
+ * 802 Nordea ePayment Finland - 234 characters
3467
+ * 809 iDeal - 32 characters
3468
+ * 836 SOFORT - 42 characters
3469
+ * 840 PayPal - 127 characters
3470
+ * 841 WebMoney - 175 characters
3471
+ * 849 Yandex - 64 characters
3472
+ * 861 Alipay - 256 characters
3473
+ * 863 WeChat Pay - 32 characters
3474
+ * 880 BOKU - 20 characters
3475
+ * 8580 Qiwi - 255 characters
3476
+ * 1504 Konbini - 80 characters
3477
+
3478
+ All other payment products don't support a descriptor.
3479
+ maxLength: 256
3480
+ merchantReference:
3481
+ type: string
3482
+ description: |
3483
+ The merchantReference is a unique identifier for a payment and can be used for reporting purposes. The
3484
+ merchantReference is required for the execution of a payment and has to be unique. In case a payment has
3485
+ failed the same merchantReference can be used again.
3486
+ Once a successful payment has been made the same merchantReference can no longer be used and will be
3487
+ rejected.
3488
+ maxLength: 20
3489
+ example: 5a891df0b8cf11edaeb2af87d8ff0b2f
3490
+ merchantParameters:
3491
+ type: string
3492
+ description:
3493
+ It allows you to store additional parameters for the transaction in JSON format.
3494
+ This field must not contain any personal data.
3495
+ maxLength: 1000
3496
+ example: "{'SessionID':'126548354','ShopperID':'7354131'}"
3497
+ required:
3498
+ - merchantReference
3499
+ OrderRequest:
3500
+ type: object
3501
+ description: |
3502
+ Request to execute an Order for the corresponding Checkout for a specific payment method.
3503
+ The provided data from the Commerce Case and the Checkout regarding customer, shipping, and ShoppingCart will be
3504
+ automatically loaded and used for the Payment Execution.
3505
+ In case the paymentMethodSpecificInput has already been provided when creating the Commerce Case or Checkout,
3506
+ this input will automatically be used.
3507
+ An Order can be created for a full or the partial ShoppingCart of the Checkout. For a partial Order a list of
3508
+ items must be provided. The platform will automatically calculate the respective amount to trigger the payment
3509
+ execution.
3510
+ properties:
3511
+ orderType:
3512
+ $ref: '#/components/schemas/OrderType'
3513
+ orderReferences:
3514
+ $ref: '#/components/schemas/References'
3515
+ items:
3516
+ type: array
3517
+ items:
3518
+ $ref: '#/components/schemas/OrderItem'
3519
+ paymentMethodSpecificInput:
3520
+ $ref: '#/components/schemas/PaymentMethodSpecificInput'
3521
+ OrderResponse:
3522
+ type: object
3523
+ description: Object that contains details on the created payment in case one has been created.
3524
+ additionalProperties: false
3525
+ properties:
3526
+ createPaymentResponse:
3527
+ $ref: '#/components/schemas/CreatePaymentResponse'
3528
+ shoppingCart:
3529
+ $ref: '#/components/schemas/ShoppingCartResult'
3530
+ OrderType:
3531
+ type: string
3532
+ description: |
3533
+ The orderType refers to the ShoppingCart of the Checkout.
3534
+ orderType = FULL should be provided if a payment for the entire ShoppingCart should be created.
3535
+ orderType = PARTIAL should be provided if the payment should be created only for certain items of the
3536
+ ShoppingCart. For this type the list of items has to be provided.
3537
+ Following conditions apply to the Order request:
3538
+ * amount of the Checkout can not be zero
3539
+ * the ShoppingCart cannot be empty
3540
+ * for orderType = FULL the Checkout status is OPEN, there is no other order and/or Payment Execution and no
3541
+ items should be provided in the body
3542
+ * if no paymentMethodSpecificInput has been provided in the creation of the Commerce Case or Checkout it has
3543
+ to be provided in this request
3544
+ enum:
3545
+ - FULL
3546
+ - PARTIAL
3547
+ PatchCheckoutRequest:
3548
+ type: object
3549
+ description: |
3550
+ An existing shopping cart of a Checkout will not be overwritten with the Patch request.
3551
+ New items can be added to the shoppingCart by providing them in the request.
3552
+ To change existing items (delete, modify or add), the respective itemId must be provided. An item can be completely removed if quantity = 0 is provided.
3553
+
3554
+ The price of an item can be changed as long as no payment has happened for this item (i.e. as long as an item has no specific status).
3555
+ Items with a status can no longer be removed entirely, however the quantity can be increased or decreased (for items without payment) by using the itemId.
3556
+
3557
+ If no amountOfMoney for the Checkout is provided, the platform will calculate the respective amount based on the cartItem productPrice and productQuantity.
3558
+ properties:
3559
+ amountOfMoney:
3560
+ $ref: '#/components/schemas/AmountOfMoney'
3561
+ references:
3562
+ $ref: '#/components/schemas/CheckoutReferences'
3563
+ shipping:
3564
+ $ref: '#/components/schemas/Shipping'
3565
+ shoppingCart:
3566
+ $ref: '#/components/schemas/ShoppingCartPatch'
3567
+ paymentMethodSpecificInput:
3568
+ $ref: '#/components/schemas/PaymentMethodSpecificInput'
3569
+ paymentReferences:
3570
+ $ref: '#/components/schemas/References'
3571
+ PatchCommerceCaseRequest:
3572
+ type: object
3573
+ description: |
3574
+ Update the customer data of the given Commerce Case
3575
+ properties:
3576
+ customer:
3577
+ $ref: '#/components/schemas/Customer'
3578
+ PausePaymentRequest:
3579
+ type: object
3580
+ description: Request to pause a payment for a specific payment method.
3581
+ properties: {}
3582
+ PausePaymentResponse:
3583
+ type: object
3584
+ properties:
3585
+ status:
3586
+ $ref: '#/components/schemas/StatusValue'
3587
+ PaymentChannel:
3588
+ type: string
3589
+ enum:
3590
+ - ECOMMERCE
3591
+ - POS
3592
+ PaymentCreationOutput:
3593
+ type: object
3594
+ description: |-
3595
+ Object containing the details of the created payment.
3596
+ additionalProperties: false
3597
+ properties:
3598
+ externalReference:
3599
+ type: string
3600
+ description: |-
3601
+ The external reference is an identifier for this transaction and can be used for reconciliation purposes.
3602
+ example: "C1232O2342"
3603
+ Payee:
3604
+ required:
3605
+ - name
3606
+ - iban
3607
+ type: object
3608
+ properties:
3609
+ iban:
3610
+ type: string
3611
+ description: IBAN of the payee's or beneficiary's bank account. The IBAN is the International Bank Account Number. It is an internationally agreed format for the BBAN and includes the ISO country code and two check digits.
3612
+ example: DE02370502990000684712
3613
+ maxLength: 50
3614
+ bic:
3615
+ type: string
3616
+ description: Bank Identification Code
3617
+ example: COKSDE33XXX
3618
+ maxLength: 11
3619
+ name:
3620
+ type: string
3621
+ description: Name of the payee
3622
+ example: Max Mustermann
3623
+ description: Payee bank account details as part of the payment instructions
3624
+ PaymentEvent:
3625
+ type: object
3626
+ description: Detailed information regarding an occurred payment event.
3627
+ properties:
3628
+ type:
3629
+ $ref: '#/components/schemas/PaymentType'
3630
+ amountOfMoney:
3631
+ $ref: '#/components/schemas/AmountOfMoney'
3632
+ paymentStatus:
3633
+ $ref: '#/components/schemas/StatusValue'
3634
+ cancellationReason:
3635
+ $ref: '#/components/schemas/CancellationReason'
3636
+ returnReason:
3637
+ type: string
3638
+ description: |-
3639
+ Reason of the Refund (e.g. communicated by or to the costumer).
3640
+ maxLength: 255
3641
+ example: Customer complained
3642
+ paymentInstructions:
3643
+ $ref: '#/components/schemas/PaymentInstructions'
3644
+ PaymentExecution:
3645
+ type: object
3646
+ description: |-
3647
+ Object contains information of the payment with a specific payment method.
3648
+ properties:
3649
+ paymentExecutionId:
3650
+ description: Unique ID of paymentExecution.
3651
+ type: string
3652
+ format: UUID
3653
+ example: "4f0c512e-f12c-11ec-8ea0-0242ac120002"
3654
+ paymentId:
3655
+ type: string
3656
+ description: Unique payment transaction identifier of the payment gateway.
3657
+ example: '3066019730_1'
3658
+ cardPaymentMethodSpecificInput:
3659
+ $ref: '#/components/schemas/CardPaymentMethodSpecificInput'
3660
+ mobilePaymentMethodSpecificInput:
3661
+ $ref: '#/components/schemas/MobilePaymentMethodSpecificInput'
3662
+ redirectPaymentMethodSpecificInput:
3663
+ $ref: '#/components/schemas/RedirectPaymentMethodSpecificInput'
3664
+ sepaDirectDebitPaymentMethodSpecificInput:
3665
+ $ref: '#/components/schemas/SepaDirectDebitPaymentMethodSpecificInput'
3666
+ financingPaymentMethodSpecificInput:
3667
+ $ref: '#/components/schemas/FinancingPaymentMethodSpecificInput'
3668
+ bankPayoutMethodSpecificInput:
3669
+ $ref: '#/components/schemas/BankPayoutMethodSpecificInput'
3670
+ paymentChannel:
3671
+ $ref: '#/components/schemas/PaymentChannel'
3672
+ references:
3673
+ $ref: '#/components/schemas/References'
3674
+ previousPayment:
3675
+ type: string
3676
+ format: UUID
3677
+ example: "cee5276d-6b1e-4a4f-a46f-27b7550d484e"
3678
+ creationDateTime:
3679
+ type: string
3680
+ format: date-time
3681
+ description: |-
3682
+ The date and time when the payment was created.
3683
+
3684
+ Format will be in one of the following formats:
3685
+ * YYYY-MM-DD'T'HH:mm:ss'Z'
3686
+ * YYYY-MM-DD'T'HH:mm:ss+XX:XX
3687
+ * YYYY-MM-DD'T'HH:mm:ss-XX:XX
3688
+ example: 2022-01-01T00:00:00Z
3689
+ lastUpdated:
3690
+ type: string
3691
+ format: date-time
3692
+ description: |-
3693
+ The date and time when the payment was last updated.
3694
+
3695
+ Format will be in one of the following formats:
3696
+ * YYYY-MM-DD'T'HH:mm:ss'Z'
3697
+ * YYYY-MM-DD'T'HH:mm:ss+XX:XX
3698
+ * YYYY-MM-DD'T'HH:mm:ss-XX:XX
3699
+ example: 2022-01-01T00:00:00Z
3700
+ events:
3701
+ type: array
3702
+ items:
3703
+ $ref: '#/components/schemas/PaymentEvent'
3704
+ PaymentExecutionRequest:
3705
+ type: object
3706
+ description: |
3707
+ Request to trigger a payment for a respective Checkout providing the input for a specific payment method.
3708
+ The data from the Commerce case and the Checkout will not be loaded automatically and there is no validation
3709
+ between the data input in place.
3710
+ Depending on the payment method, information of the customer and / or the shopping cart might be required.
3711
+ For more details regarding payment method specific input please check the documentation.
3712
+ properties:
3713
+ paymentMethodSpecificInput:
3714
+ $ref: '#/components/schemas/PaymentMethodSpecificInput'
3715
+ paymentExecutionSpecificInput:
3716
+ $ref: '#/components/schemas/PaymentExecutionSpecificInput'
3717
+ PaymentExecutionSpecificInput:
3718
+ type: object
3719
+ description: |
3720
+ The amount of the paymentSpecificInput might differ from the Checkout amount in case of partial payments but cannot be higher.
3721
+ Additionally, the total amount of the provided shopping cart cannot exceed the Checkout amount.
3722
+ If a different currency is provided than in the Checkout, the payment execution will be declined.
3723
+ Provided details of the customer and shipping from the Checkout will be automatically loaded and used in the Payment Execution request.
3724
+ The ShoppingCart might differ from the one provided in the Checkout (e.g., for partial payments) and might be required by the payment provider (e.g., BNPL).
3725
+ If the ShoppingCart elements differ from the data provided in the Checkout, the existing data will not be overwritten.
3726
+ properties:
3727
+ amountOfMoney:
3728
+ $ref: '#/components/schemas/AmountOfMoney'
3729
+ shoppingCart:
3730
+ $ref: '#/components/schemas/ShoppingCartInput'
3731
+ paymentReferences:
3732
+ $ref: '#/components/schemas/References'
3733
+ required:
3734
+ - paymentReferences
3735
+ PaymentInformationRefundRequest:
3736
+ type: object
3737
+ description: |
3738
+ Request to initiate refund for a Payment Information of Checkout.
3739
+ It is possible to initiate multiple partial refunds by providing an amount that is lower than the total captured amount of the Payment Information.
3740
+ additionalProperties: false
3741
+ properties:
3742
+ amountOfMoney:
3743
+ $ref: '#/components/schemas/PositiveAmountOfMoney'
3744
+ references:
3745
+ $ref: '#/components/schemas/PaymentReferences'
3746
+ accountHolder:
3747
+ maxLength: 50
3748
+ type: string
3749
+ description: |-
3750
+ Account holder of the bank account.
3751
+ Does not necessarily have to be the customer (e.g. joint accounts).
3752
+ The name of the account holder is required for payment methods that will use a credit transfer for the refund (e.g. girocard, SEPA Direct Debit)
3753
+ example: Max Mustermann
3754
+ required:
3755
+ - amountOfMoney
3756
+ PaymentInformationRefundResponse:
3757
+ type: object
3758
+ additionalProperties: false
3759
+ properties:
3760
+ payment:
3761
+ $ref: '#/components/schemas/PayoutResponse'
3762
+ paymentExecutionId:
3763
+ description: reference to the paymentExecution.
3764
+ type: string
3765
+ format: UUID
3766
+ example: "4f0c512e-f12c-11ec-8ea0-0242ac120002"
3767
+ PaymentInformationRequest:
3768
+ type: object
3769
+ additionalProperties: false
3770
+ properties:
3771
+ amountOfMoney:
3772
+ $ref: '#/components/schemas/AmountOfMoney'
3773
+ type:
3774
+ $ref: '#/components/schemas/PaymentType'
3775
+ paymentChannel:
3776
+ $ref: '#/components/schemas/PaymentChannel'
3777
+ paymentProductId:
3778
+ type: integer
3779
+ format: int32
3780
+ maximum: 99999
3781
+ minimum: 0
3782
+ description: |-
3783
+ Payment method identifier - please check the product documentation for a full overview of possible values.
3784
+ merchantReference:
3785
+ type: string
3786
+ description: |
3787
+ Unique reference of the PaymentInformation. In case of card present transactions, the reference from the ECR
3788
+ or terminal will be used. It is always the reference for external transactions.
3789
+ (e.g. card present payments, cash payments or payments processed by other payment providers).
3790
+ maxLength: 40
3791
+ example: 6a891660b8cf16edaeb26f87d86f0b2f
3792
+ required:
3793
+ - amountOfMoney
3794
+ - type
3795
+ - paymentChannel
3796
+ - paymentProductId
3797
+ PaymentInformationResponse:
3798
+ type: object
3799
+ description: Object containing the related data of the created Payment Information.
3800
+ properties:
3801
+ commerceCaseId:
3802
+ description: Unique ID of the Commerce Case.
3803
+ type: string
3804
+ format: UUID
3805
+ example: "4f0c512e-f12c-11ec-8ea0-0242ac120002"
3806
+ checkoutId:
3807
+ description: Unique ID of the Commerce Case.
3808
+ type: string
3809
+ format: UUID
3810
+ example: "4f0c512e-f12c-11ec-8ea0-0242ac120002"
3811
+ merchantCustomerId:
3812
+ type: string
3813
+ description: Unique identifier of the customer.
3814
+ maxLength: 20
3815
+ example: "1234"
3816
+ paymentInformationId:
3817
+ description: Unique ID of the Payment Information.
3818
+ type: string
3819
+ format: UUID
3820
+ example: "637ef15b-1a0a-48f2-27d8-c954a344329c"
3821
+ paymentChannel:
3822
+ $ref: '#/components/schemas/PaymentChannel'
3823
+ paymentProductId:
3824
+ type: integer
3825
+ format: int32
3826
+ maximum: 99999
3827
+ minimum: 0
3828
+ description: |-
3829
+ Payment product identifier - please check see product documentation for a full overview of possible values.
3830
+ example: 840
3831
+ terminalId:
3832
+ description: Unique identifier of the POS terminal of the payment transaction.
3833
+ type: string
3834
+ minLength: 8
3835
+ maxLength: 8
3836
+ example: "60023723"
3837
+ cardAcceptorId:
3838
+ description: |-
3839
+ Unique ID that identifies a store location or transaction point and which refers to the contract number of
3840
+ the merchant accepting the card.
3841
+ type: string
3842
+ maxLength: 15
3843
+ example: "455600217015"
3844
+ merchantReference:
3845
+ type: string
3846
+ description: |
3847
+ Unique reference of the PaymentInformation. In case of card present transactions, the reference from the ECR
3848
+ or terminal will be used. It is always the reference for external transactions.
3849
+ (e.g. card present payments, cash payments or payments processed by other payment providers).
3850
+ maxLength: 40
3851
+ example: 6a891660b8cf16edaeb26f87d86f0b2f
3852
+ creationDateTime:
3853
+ type: string
3854
+ format: date-time
3855
+ description: |-
3856
+ The date and time when the payment was created.
3857
+
3858
+ Format will be in one of the following formats:
3859
+ * YYYY-MM-DD'T'HH:mm:ss'Z'
3860
+ * YYYY-MM-DD'T'HH:mm:ss+XX:XX
3861
+ * YYYY-MM-DD'T'HH:mm:ss-XX:XX
3862
+ example: 2022-01-01T00:00:00Z
3863
+ lastUpdated:
3864
+ type: string
3865
+ format: date-time
3866
+ description: |-
3867
+ The date and time when the payment was last updated.
3868
+
3869
+ Format will be in one of the following formats:
3870
+ * YYYY-MM-DD'T'HH:mm:ss'Z'
3871
+ * YYYY-MM-DD'T'HH:mm:ss+XX:XX
3872
+ * YYYY-MM-DD'T'HH:mm:ss-XX:XX
3873
+ example: 2022-01-01T00:00:00Z
3874
+ cardPaymentDetails:
3875
+ $ref: '#/components/schemas/CardPaymentDetails'
3876
+ events:
3877
+ type: array
3878
+ items:
3879
+ $ref: '#/components/schemas/PaymentEvent'
3880
+ PaymentInstructions:
3881
+ required:
3882
+ - payee
3883
+ - dueDate
3884
+ - referenceNumber
3885
+ type: object
3886
+ properties:
3887
+ payee:
3888
+ $ref: '#/components/schemas/Payee'
3889
+ dueDate:
3890
+ maxLength: 8
3891
+ pattern: ^((19|20|21)\d{6})?$
3892
+ type: string
3893
+ description: |-
3894
+ Due date of the payment.
3895
+ Format: YYYYMMDD
3896
+ referenceNumber:
3897
+ type: string
3898
+ description: External payment reference number as part of payment instructions for the consumer
3899
+ example: R.1208-368
3900
+ status:
3901
+ type: string
3902
+ description: Status, usually describing the status of the invoice if paid, overdue, open...
3903
+ description: Object containing information on payment instructions details (e.g. on the invoice payments)
3904
+ PaymentMethodSpecificInput:
3905
+ type: object
3906
+ description: |
3907
+ Input for the payment for a respective payment method.
3908
+ In case the paymentMethodSpecificInput has already been provided when creating the Commerce Case or Checkout, it
3909
+ will automatically be used for the Payment Execution.
3910
+ If a new input will be provided, the existing input will be updated.
3911
+ properties:
3912
+ cardPaymentMethodSpecificInput:
3913
+ $ref: '#/components/schemas/CardPaymentMethodSpecificInput'
3914
+ mobilePaymentMethodSpecificInput:
3915
+ $ref: '#/components/schemas/MobilePaymentMethodSpecificInput'
3916
+ redirectPaymentMethodSpecificInput:
3917
+ $ref: '#/components/schemas/RedirectPaymentMethodSpecificInput'
3918
+ sepaDirectDebitPaymentMethodSpecificInput:
3919
+ $ref: '#/components/schemas/SepaDirectDebitPaymentMethodSpecificInput'
3920
+ financingPaymentMethodSpecificInput:
3921
+ $ref: '#/components/schemas/FinancingPaymentMethodSpecificInput'
3922
+ customerDevice:
3923
+ $ref: '#/components/schemas/CustomerDevice'
3924
+ paymentChannel:
3925
+ $ref: '#/components/schemas/PaymentChannel'
3926
+ PaymentOutput:
3927
+ type: object
3928
+ description: |
3929
+ Object containing payment details.
3930
+ additionalProperties: false
3931
+ properties:
3932
+ amountOfMoney:
3933
+ $ref: '#/components/schemas/AmountOfMoney'
3934
+ merchantParameters:
3935
+ type: string
3936
+ description:
3937
+ It allows you to store additional parameters for the transaction in JSON format.
3938
+ This field should not contain any personal data.
3939
+ maxLength: 1000
3940
+ example: "{'SessionID':'126548354','ShopperID':'7354131'}"
3941
+ references:
3942
+ $ref: '#/components/schemas/PaymentReferences'
3943
+ cardPaymentMethodSpecificOutput:
3944
+ $ref: '#/components/schemas/CardPaymentMethodSpecificOutput'
3945
+ mobilePaymentMethodSpecificOutput:
3946
+ $ref: '#/components/schemas/MobilePaymentMethodSpecificOutput'
3947
+ paymentMethod:
3948
+ type: string
3949
+ description: Payment method identifier based on the paymentProductId.
3950
+ redirectPaymentMethodSpecificOutput:
3951
+ $ref: '#/components/schemas/RedirectPaymentMethodSpecificOutput'
3952
+ sepaDirectDebitPaymentMethodSpecificOutput:
3953
+ $ref: '#/components/schemas/SepaDirectDebitPaymentMethodSpecificOutput'
3954
+ financingPaymentMethodSpecificOutput:
3955
+ $ref: '#/components/schemas/FinancingPaymentMethodSpecificOutput'
3956
+ PayoutOutput:
3957
+ type: object
3958
+ description: |
3959
+ Object containing details from the created payout.
3960
+ additionalProperties: false
3961
+ properties:
3962
+ amountOfMoney:
3963
+ $ref: '#/components/schemas/AmountOfMoney'
3964
+ references:
3965
+ $ref: '#/components/schemas/PaymentReferences'
3966
+ paymentMethod:
3967
+ type: string
3968
+ description: Payment method identifier based on the paymentProductId.
3969
+ PaymentProduct302SpecificInput:
3970
+ type: object
3971
+ description: Object containing additional Information needed for Apple Pay payment transactions.
3972
+ properties:
3973
+ integrationType:
3974
+ type: string
3975
+ description: |-
3976
+ Type of your Apple Pay integration.
3977
+ * MERCHANT_CERTIFICATE - using your own certificate (paid apple pay account needed)
3978
+ * MASS_ENABLEMENT - using PAYONE certificate
3979
+ enum:
3980
+ - MERCHANT_CERTIFICATE
3981
+ - MASS_ENABLEMENT
3982
+ example: MASS_ENABLEMENT
3983
+ network:
3984
+ type: string
3985
+ description: |-
3986
+ Network/Scheme of the card used for the payment.
3987
+ * MASTERCARD
3988
+ * VISA
3989
+ * AMEX
3990
+ * GIROCARD
3991
+ * DISCOVER (not supported yet)
3992
+ * JCB (not supported yet)
3993
+ enum:
3994
+ - MASTERCARD
3995
+ - VISA
3996
+ - AMEX
3997
+ - GIROCARD
3998
+ - DISCOVER
3999
+ - JCB
4000
+ example: GIROCARD
4001
+ token:
4002
+ $ref: '#/components/schemas/ApplePaymentDataTokenInformation'
4003
+ domainName:
4004
+ type: string
4005
+ description: Domain of your Webshop. Needed for initialization of the Apple Pay payment session with integrationType=MASS_ENABLEMENT.
4006
+ displayName:
4007
+ type: string
4008
+ maxLength: 64
4009
+ description: Name of your Store. Needed for initialization of the Apple Pay payment session with integrationType=MASS_ENABLEMENT.
4010
+ PaymentProduct3391SpecificInput:
4011
+ type: object
4012
+ description: Object containing specific information for PAYONE Secured Installment.
4013
+ properties:
4014
+ installmentOptionId:
4015
+ type: string
4016
+ description: |-
4017
+ ID of the selected installment option. Will be provided in the response of the Order / Payment Execution
4018
+ request.
4019
+ bankAccountInformation:
4020
+ $ref: '#/components/schemas/BankAccountInformation'
4021
+ required:
4022
+ - bankAccountInformation
4023
+ - installmentOptionId
4024
+ PaymentProduct3391SpecificOutput:
4025
+ type: object
4026
+ properties:
4027
+ installmentOptions:
4028
+ type: array
4029
+ description: List of installment options.
4030
+ items:
4031
+ $ref: '#/components/schemas/InstallmentOption'
4032
+ description: Object containing specific information for PAYONE Secured Installment.
4033
+ PaymentProduct3392SpecificInput:
4034
+ type: object
4035
+ description: Object containing specific information for PAYONE Secured Direct Debit.
4036
+ properties:
4037
+ bankAccountInformation:
4038
+ $ref: '#/components/schemas/BankAccountInformation'
4039
+ required:
4040
+ - bankAccountInformation
4041
+ PaymentProduct771SpecificOutput:
4042
+ type: object
4043
+ description: Output that is SEPA Direct Debit specific (i.e. the used mandate).
4044
+ additionalProperties: false
4045
+ properties:
4046
+ mandateReference:
4047
+ type: string
4048
+ description: Unique reference fo a SEPA Mandate
4049
+ PaymentProduct840CustomerAccount:
4050
+ type: object
4051
+ description: |
4052
+ Object containing the details of the PayPal account.
4053
+ additionalProperties: false
4054
+ properties:
4055
+ companyName:
4056
+ type: string
4057
+ description: Name of the company in case the PayPal account is owned by a business
4058
+ example: Customer Company Name
4059
+ firstName:
4060
+ type: string
4061
+ description: First name of the PayPal account holder
4062
+ example: John
4063
+ payerId:
4064
+ type: string
4065
+ description: |-
4066
+ The unique identifier of a PayPal account and will never change in the life cycle of a PayPal account.
4067
+ example: RRCYJUTFJGZTA
4068
+ surname:
4069
+ type: string
4070
+ description: Surname of the PayPal account holder
4071
+ example: Doe
4072
+ PaymentProduct840SpecificOutput:
4073
+ type: object
4074
+ description: |
4075
+ PayPal (payment product 840) specific details.
4076
+ additionalProperties: false
4077
+ properties:
4078
+ billingAddress:
4079
+ $ref: '#/components/schemas/Address'
4080
+ customerAccount:
4081
+ $ref: '#/components/schemas/PaymentProduct840CustomerAccount'
4082
+ shippingAddress:
4083
+ $ref: '#/components/schemas/Address'
4084
+ PaymentReferences:
4085
+ type: object
4086
+ description: Object that holds all reference properties that are linked to this transaction.
4087
+ additionalProperties: false
4088
+ properties:
4089
+ merchantReference:
4090
+ type: string
4091
+ description: |-
4092
+ Unique reference of the Commerce Case that is also returned for reporting and reconciliation purposes.
4093
+ maxLength: 20
4094
+ example: your-order-6372
4095
+ PaymentResponse:
4096
+ type: object
4097
+ description: Object that holds the payment related properties.
4098
+ additionalProperties: false
4099
+ properties:
4100
+ paymentOutput:
4101
+ $ref: '#/components/schemas/PaymentOutput'
4102
+ status:
4103
+ $ref: '#/components/schemas/StatusValue'
4104
+ statusOutput:
4105
+ $ref: '#/components/schemas/PaymentStatusOutput'
4106
+ id:
4107
+ type: string
4108
+ description: Unique payment transaction identifier of the payment gateway.
4109
+ example: PP1AA7KKLSFB9MBG
4110
+ PayoutResponse:
4111
+ type: object
4112
+ description: Object that holds the payment related properties for the refund of a Payment Information.
4113
+ additionalProperties: false
4114
+ properties:
4115
+ payoutOutput:
4116
+ $ref: '#/components/schemas/PayoutOutput'
4117
+ status:
4118
+ $ref: '#/components/schemas/StatusValue'
4119
+ statusCategory:
4120
+ $ref: '#/components/schemas/StatusCategoryValue'
4121
+ id:
4122
+ type: string
4123
+ description: Unique payment transaction identifier of the payment gateway.
4124
+ example: PP1AA7KKLSFB9MBG
4125
+ PaymentStatusOutput:
4126
+ type: object
4127
+ description: |
4128
+ This object has the numeric representation of the current payment status, timestamp of last status change and
4129
+ performable action on the current payment resource. In case of failed payments and negative scenarios, detailed
4130
+ error information is listed.
4131
+ additionalProperties: false
4132
+ properties:
4133
+ isCancellable:
4134
+ type: boolean
4135
+ description: Flag indicating if the payment can be cancelled
4136
+ statusCategory:
4137
+ $ref: '#/components/schemas/StatusCategoryValue'
4138
+ isAuthorized:
4139
+ description: Indicates if the transaction has been authorized
4140
+ type: boolean
4141
+ isRefundable:
4142
+ description: Flag indicating if the payment can be refunded
4143
+ type: boolean
4144
+ PaymentType:
4145
+ description: Defines the respective payment type.
4146
+ type: string
4147
+ enum:
4148
+ - SALE
4149
+ - RESERVATION
4150
+ - CAPTURE
4151
+ - REFUND
4152
+ - REVERSAL
4153
+ - CHARGEBACK_REVERSAL
4154
+ - CREDIT_NOTE
4155
+ - DEBIT_NOTE
4156
+ PersonalInformation:
4157
+ type: object
4158
+ description: Object containing personal information like name, date of birth and gender.
4159
+ additionalProperties: false
4160
+ properties:
4161
+ dateOfBirth:
4162
+ type: string
4163
+ description: |-
4164
+ The date of birth of the customer of the recipient of the loan.
4165
+ Format YYYYMMDD
4166
+ maxLength: 8
4167
+ pattern: ^((19|20|21)\d{6})?$
4168
+ gender:
4169
+ type: string
4170
+ description: |-
4171
+ The gender of the customer, possible values are:
4172
+ * MALE
4173
+ * FEMALE
4174
+ * UNKNOWN
4175
+ enum:
4176
+ - MALE
4177
+ - FEMALE
4178
+ - UNKNOWN
4179
+ name:
4180
+ $ref: '#/components/schemas/PersonalName'
4181
+ PersonalName:
4182
+ type: object
4183
+ description: Object containing the name details of the customer
4184
+ additionalProperties: false
4185
+ properties:
4186
+ firstName:
4187
+ type: string
4188
+ description: Given name(s) or first name(s) of the customer
4189
+ x-trim-at: 35
4190
+ example: Wile
4191
+ surname:
4192
+ type: string
4193
+ description: Surname(s) or last name(s) of the customer
4194
+ x-trim-at: 35
4195
+ example: E. Coyote
4196
+ title:
4197
+ type: string
4198
+ description: Title of customer
4199
+ x-trim-at: 35
4200
+ example: Dr.
4201
+ PositiveAmountOfMoney:
4202
+ type: object
4203
+ description: Object containing amount and ISO currency code attributes
4204
+ additionalProperties: false
4205
+ properties:
4206
+ amount:
4207
+ type: integer
4208
+ description: Amount in cents and always having 2 decimals
4209
+ format: int64
4210
+ maximum: 999999999999
4211
+ minimum: 1
4212
+ example: 1000
4213
+ currencyCode:
4214
+ type: string
4215
+ description: Three-letter ISO currency code representing the currency for the amount
4216
+ minLength: 3
4217
+ maxLength: 3
4218
+ example: EUR
4219
+ required:
4220
+ - amount
4221
+ - currencyCode
4222
+ ProcessingMandateInformation:
4223
+ type: object
4224
+ description: |
4225
+ Object containing the relevant information of a SEPA Direct Debit
4226
+ mandate for processing (mandatory fields in pain.008).
4227
+ Renamed from CreateMandateWithReturnUrl to ProcessingMandateInformation.
4228
+ properties:
4229
+ bankAccountIban:
4230
+ $ref: '#/components/schemas/BankAccountInformation'
4231
+ recurrenceType:
4232
+ $ref: '#/components/schemas/MandateRecurrenceType'
4233
+ uniqueMandateReference:
4234
+ maxLength: 35
4235
+ pattern: ^[A-Za-z0-9\+\-\.()]{1,35}$
4236
+ type: string
4237
+ description: The unique identifier of the mandate
4238
+ example: your-mandate-id
4239
+ dateOfSignature:
4240
+ maxLength: 8
4241
+ pattern: ^((19|20|21)\d{6})?$
4242
+ type: string
4243
+ description: |-
4244
+ The date of signature of the mandate.
4245
+ Format YYYYMMDD
4246
+ example: 20220101
4247
+ creditorId:
4248
+ maxLength: 31
4249
+ pattern: ^[A-Z]{2}[0-9]{2}[a-zA-Z0-9\+\?\/\-:\(\)\.,\']{1,31}$
4250
+ type: string
4251
+ description: Your unique creditor identifier.
4252
+ example: DE98ZZZ09999999999
4253
+ required:
4254
+ - bankAccountIban
4255
+ - creditorId
4256
+ - dateOfSignature
4257
+ - recurrenceType
4258
+ - uniqueMandateReference
4259
+ RedirectData:
4260
+ type: object
4261
+ description: |-
4262
+ Object containing all data needed to redirect the customer.
4263
+ additionalProperties: false
4264
+ properties:
4265
+ redirectURL:
4266
+ type: string
4267
+ description: The URL that the customer should be redirected to. Be sure to redirect using the GET method
4268
+ example: https://example-mandate-signing-url.com\
4269
+ RedirectionData:
4270
+ type: object
4271
+ description: Object containing browser specific redirection related data.
4272
+ additionalProperties: false
4273
+ properties:
4274
+ returnUrl:
4275
+ type: string
4276
+ description: |-
4277
+ The URL that the customer is redirected to after the payment flow has finished. You can add any number of
4278
+ key value pairs in the query string that, for instance help you to identify the customer when they return to
4279
+ your site. Please note that we will also append some additional key value pairs that will also help you with
4280
+ this identification process.
4281
+ Note: The provided URL should be absolute and contain the protocol to use, e.g. http:// or https://. For use
4282
+ on mobile devices a custom protocol can be used in the form of protocol://. This protocol must be registered
4283
+ on the device first.
4284
+ URLs without a protocol will be rejected.
4285
+ maxLength: 200
4286
+ example: https://secure.ogone.com/ncol/test/displayparams.asp
4287
+ required:
4288
+ - returnUrl
4289
+ RedirectPaymentMethodSpecificInput:
4290
+ type: object
4291
+ description: |-
4292
+ Object containing the specific input details for payments that involve redirects to 3rd parties to complete,
4293
+ like iDeal and PayPal
4294
+ additionalProperties: false
4295
+ properties:
4296
+ requiresApproval:
4297
+ type: boolean
4298
+ description: |-
4299
+ * true = the payment requires approval before the funds will be captured using the Approve payment or
4300
+ Capture payment API
4301
+ * false = the payment does not require approval, and the funds will be captured automatically
4302
+
4303
+ If the parameter is not provided in the request, the default value will be true
4304
+ paymentProcessingToken:
4305
+ type: string
4306
+ description: ID of the token to use to create the payment.
4307
+ example: 0ca037cc-9079-4df7-8f6f-f2a3443ee521
4308
+ maxLength: 40
4309
+ reportingToken:
4310
+ type: string
4311
+ readOnly: true
4312
+ description: Token to identify the card in the reporting.
4313
+ example: 12a037cc-833d-8b45-8f6f-11c34171f4e1
4314
+ maxLength: 40
4315
+ tokenize:
4316
+ type: boolean
4317
+ description: >-
4318
+ Indicates if this transaction should be tokenized
4319
+ * true - Tokenize the transaction.
4320
+ * false - Do not tokenize the transaction, unless it would be tokenized by other means such as auto-
4321
+ tokenization of recurring payments.
4322
+ example: false
4323
+ paymentProductId:
4324
+ type: integer
4325
+ format: int32
4326
+ maximum: 99999
4327
+ minimum: 0
4328
+ description: |-
4329
+ Payment product identifier - please check product documentation for a full overview of possible values.
4330
+ example: 840
4331
+ paymentProduct840SpecificInput:
4332
+ $ref: '#/components/schemas/RedirectPaymentProduct840SpecificInput'
4333
+ redirectionData:
4334
+ $ref: '#/components/schemas/RedirectionData'
4335
+ RedirectPaymentMethodSpecificOutput:
4336
+ type: object
4337
+ description: |
4338
+ Object containing the redirect payment product details.
4339
+ additionalProperties: false
4340
+ properties:
4341
+ paymentProductId:
4342
+ type: integer
4343
+ format: int32
4344
+ maximum: 99999
4345
+ minimum: 0
4346
+ description: <-
4347
+ Payment product identifier - please check product documentation for a full overview of possible values.
4348
+ example: 840
4349
+ paymentProduct840SpecificOutput:
4350
+ $ref: '#/components/schemas/PaymentProduct840SpecificOutput'
4351
+ paymentProcessingToken:
4352
+ type: string
4353
+ description: ID of the token. This property is populated when the payment was done with a token.
4354
+ example: 0ca037cc-9079-4df7-8f6f-f2a3443ee521
4355
+ maxLength: 40
4356
+ reportingToken:
4357
+ type: string
4358
+ description: Token to identify the card in the reporting.
4359
+ example: 12a037cc-833d-8b45-8f6f-11c34171f4e1
4360
+ maxLength: 40
4361
+ RedirectPaymentProduct840SpecificInput:
4362
+ type: object
4363
+ description: Object containing specific input required for PayPal payments (Payment product ID 840)
4364
+ properties:
4365
+ addressSelectionAtPayPal:
4366
+ type: boolean
4367
+ description: |-
4368
+ Indicates whether to use PayPal Express Checkout Shortcut.
4369
+ * true = When shortcut is enabled, the consumer can select a shipping address during PayPal checkout.
4370
+ * false = When shortcut is disabled, the consumer cannot change the shipping address.
4371
+ Default value is false.
4372
+ Please note that this field is ignored when order.additionalInput.typeInformation.purchaseType is set to
4373
+ "digital"
4374
+ fraudNetId:
4375
+ type: string
4376
+ format: UUID
4377
+ description: |-
4378
+ A unique ID determined by the merchant, to link a Paypal transaction to a FraudNet PayPal risk session. Only applicable to
4379
+ customer-initiated transactions, when the FraudNet SDK is used, and to be passed in the API request the same tracking ID value
4380
+ (FraudNet Session Identifier).
4381
+ example: 686e5823-1ffd-42f7-9ba3-42b41b57d8dd
4382
+ RefreshPaymentRequest:
4383
+ type: object
4384
+ description: Request to refresh the payment status of a specific payment.
4385
+ properties:
4386
+ refreshType:
4387
+ $ref: '#/components/schemas/RefreshType'
4388
+ required:
4389
+ - refreshType
4390
+ RefreshType:
4391
+ type: string
4392
+ description: |
4393
+ The refreshType refers to the type of the payment status refresh.
4394
+ * PAYMENT_EVENTS = Refresh the payment status of the payment and return the events. This is a synchronisation
4395
+ of the payment status with the payment platform. This can be used in case of any possible inconsistencies
4396
+ between the commerce platform and the payment platform.
4397
+ * PAYMENT_PROVIDER_DETAILS = Refresh the payment status of the payment and return the payment provider details.
4398
+ This is a synchronisation of the payment with the external payment provider. The current use case is to update
4399
+ the customer status of a transaction using PAYONE Buy Now, Pay Later (BNPL) with the external provider Payla.
4400
+ enum:
4401
+ - PAYMENT_EVENTS
4402
+ - PAYMENT_PROVIDER_DETAILS
4403
+ RefundErrorResponse:
4404
+ type: object
4405
+ additionalProperties: false
4406
+ properties:
4407
+ errorId:
4408
+ type: string
4409
+ description: Unique reference, for debugging purposes, of this error response
4410
+ errors:
4411
+ type: array
4412
+ items:
4413
+ $ref: '#/components/schemas/APIError'
4414
+ RefundOutput:
4415
+ type: object
4416
+ description: |
4417
+ Object containing Refund details
4418
+ additionalProperties: false
4419
+ properties:
4420
+ amountOfMoney:
4421
+ $ref: '#/components/schemas/AmountOfMoney'
4422
+ merchantParameters:
4423
+ type: string
4424
+ description: |
4425
+ It allows you to store additional parameters for the transaction in JSON format.
4426
+ This field must not contain any personal data.
4427
+ maxLength: 1000
4428
+ example: "{'SessionID':'126548354','ShopperID':'7354131'}"
4429
+ references:
4430
+ $ref: '#/components/schemas/PaymentReferences'
4431
+ paymentMethod:
4432
+ type: string
4433
+ description: Payment method identifier used by the our payment engine.
4434
+ RefundRequest:
4435
+ type: object
4436
+ description: |
4437
+ Request to refund a payment for a Checkout. It is possible to perform multiple partial refunds by providing an
4438
+ amount that is lower than the total captured amount.
4439
+ The returnReason can be provided for reporting and reconciliation purposes but is not mandatory.
4440
+ additionalProperties: false
4441
+ properties:
4442
+ amountOfMoney:
4443
+ $ref: '#/components/schemas/PositiveAmountOfMoney'
4444
+ references:
4445
+ $ref: '#/components/schemas/PaymentReferences'
4446
+ return:
4447
+ $ref: '#/components/schemas/ReturnInformation'
4448
+ RefundPaymentResponse:
4449
+ type: object
4450
+ description: |-
4451
+ This object has the numeric representation of the current Refund status, timestamp of last status change and
4452
+ performable action on the current Refund resource. In case of a rejected Refund, detailed error information is
4453
+ listed.
4454
+ additionalProperties: false
4455
+ properties:
4456
+ refundOutput:
4457
+ $ref: '#/components/schemas/RefundOutput'
4458
+ status:
4459
+ $ref: '#/components/schemas/StatusValue'
4460
+ statusOutput:
4461
+ $ref: '#/components/schemas/PaymentStatusOutput'
4462
+ id:
4463
+ type: string
4464
+ description: Unique payment transaction identifier of the payment gateway.
4465
+ example: '3066019730_1'
4466
+ ReturnInformation:
4467
+ type: object
4468
+ description: |-
4469
+ Return object contains additional information about the return/shipment, which is the basis for the Refund.
4470
+ The amountOfMoney in the cartItem will not be used in the request.
4471
+ properties:
4472
+ returnReason:
4473
+ type: string
4474
+ description: |-
4475
+ Reason of the Refund (e.g. communicated by or to the consumer).
4476
+ maxLength: 255
4477
+ example: Customer complained
4478
+ items:
4479
+ type: array
4480
+ description: |-
4481
+ Items returned.
4482
+ items:
4483
+ $ref: '#/components/schemas/CartItemInput'
4484
+ ReturnItem:
4485
+ type: object
4486
+ properties:
4487
+ id:
4488
+ type: string
4489
+ format: UUID
4490
+ description: Id of the item to return.
4491
+ example: "4f0c512e-f12c-11ec-8ea0-0242ac120002"
4492
+ quantity:
4493
+ type: integer
4494
+ description: |-
4495
+ Quantity of the units being returned, should be greater than zero
4496
+ Note: Must not be all spaces or all zeros
4497
+ format: int64
4498
+ maximum: 9999
4499
+ minimum: 1
4500
+ example: 1
4501
+ required:
4502
+ - id
4503
+ - quantity
4504
+ ReturnRequest:
4505
+ type: object
4506
+ description: |
4507
+ Request to mark items of the respective Checkout as returned and to automatically refund a payment for those
4508
+ items.
4509
+ A Return can be created for a full or the partial ShoppingCart of the Checkout.
4510
+ The platform will automatically calculate the respective amount to trigger the Refund. For a partial Return a
4511
+ list of items must be provided.
4512
+ The item details for the Refund will be automatically loaded from the Checkout.
4513
+ The returnReason can be provided for reporting and reconciliation purposes but is not mandatory.
4514
+ properties:
4515
+ returnType:
4516
+ $ref: '#/components/schemas/ReturnType'
4517
+ returnReason:
4518
+ type: string
4519
+ description: |-
4520
+ Reason of the Refund (e.g. communicated by or to the consumer).
4521
+ maxLength: 255
4522
+ example: Customer complained
4523
+ returnItems:
4524
+ type: array
4525
+ items:
4526
+ $ref: '#/components/schemas/ReturnItem'
4527
+ ReturnResponse:
4528
+ type: object
4529
+ properties:
4530
+ returnPaymentResponse:
4531
+ $ref: '#/components/schemas/RefundPaymentResponse'
4532
+ shoppingCart:
4533
+ $ref: '#/components/schemas/ShoppingCartResult'
4534
+ ReturnType:
4535
+ type: string
4536
+ description: |
4537
+ The returnType refers to the ShoppingCart items of the Checkout.
4538
+ returnType = FULL should be provided if all items should be marked as returned and the payment for the entire
4539
+ ShoppingCart should be refunded.
4540
+ returnType = PARTIAL should be provided if only certain items should be marked as returned and the Refund should
4541
+ not be made for the entire ShoppingCart. For this type the list of items has to be provided.
4542
+ Following conditions apply to the Return request:
4543
+ * items must be in status DELIVERED
4544
+ * there was no Capture, Refund or Cancel triggered over the Payment Execution resource
4545
+ * for the deliverType FULL no items are provided in the request
4546
+ Note: If a DISCOUNT productType is among the ShoppingCart items, only returnType FULL is possible.
4547
+ enum:
4548
+ - FULL
4549
+ - PARTIAL
4550
+ SepaDirectDebitPaymentMethodSpecificInput:
4551
+ type: object
4552
+ description: Object containing the specific input details for SEPA direct debit payments
4553
+ additionalProperties: false
4554
+ properties:
4555
+ paymentProduct771SpecificInput:
4556
+ $ref: '#/components/schemas/SepaDirectDebitPaymentProduct771SpecificInput'
4557
+ paymentProductId:
4558
+ type: integer
4559
+ format: int32
4560
+ maximum: 99999
4561
+ minimum: 0
4562
+ description: |-
4563
+ Payment product identifier - please check product documentation for a full overview of possible values.
4564
+ example: 840
4565
+ SepaDirectDebitPaymentProduct771SpecificInput:
4566
+ type: object
4567
+ description: Object containing information specific to SEPA Direct Debit
4568
+ properties:
4569
+ existingUniqueMandateReference:
4570
+ type: string
4571
+ description: The unique reference of the existing mandate to use in this payment.
4572
+ example: 'exampleMandateReference'
4573
+ mandate:
4574
+ $ref: '#/components/schemas/ProcessingMandateInformation'
4575
+ SepaDirectDebitPaymentMethodSpecificOutput:
4576
+ type: object
4577
+ description: Object containing the SEPA direct debit details.
4578
+ additionalProperties: false
4579
+ properties:
4580
+ paymentProductId:
4581
+ type: integer
4582
+ format: int32
4583
+ maximum: 99999
4584
+ minimum: 0
4585
+ description: |-
4586
+ Payment product identifier - please check product documentation for a full overview of possible values.
4587
+ example: 840
4588
+ paymentProduct771SpecificOutput:
4589
+ $ref: '#/components/schemas/PaymentProduct771SpecificOutput'
4590
+ SepaTransferPaymentProduct772SpecificInput:
4591
+ type: object
4592
+ description: Object containing the specific input details for SEPA credit transfers excluding cross-border ones
4593
+ properties:
4594
+ bankAccountInformation:
4595
+ $ref: '#/components/schemas/BankAccountInformation'
4596
+ Shipping:
4597
+ type: object
4598
+ description: |
4599
+ Object containing information regarding shipping / delivery
4600
+ additionalProperties: false
4601
+ properties:
4602
+ address:
4603
+ $ref: '#/components/schemas/AddressPersonal'
4604
+ ShoppingCartInput:
4605
+ type: object
4606
+ description: |
4607
+ Shopping cart data, including items and specific amounts.
4608
+ properties:
4609
+ items:
4610
+ type: array
4611
+ items:
4612
+ $ref: '#/components/schemas/CartItemInput'
4613
+ ShoppingCartPatch:
4614
+ type: object
4615
+ description: |
4616
+ Shopping cart data, including items and specific amounts.
4617
+ properties:
4618
+ items:
4619
+ type: array
4620
+ items:
4621
+ $ref: '#/components/schemas/CartItemPatch'
4622
+ ShoppingCartResult:
4623
+ type: object
4624
+ description: |
4625
+ Shopping cart data, including items and specific amounts.
4626
+ properties:
4627
+ items:
4628
+ type: array
4629
+ items:
4630
+ $ref: '#/components/schemas/CartItemResult'
4631
+ StatusCategoryValue:
4632
+ type: string
4633
+ description: Highlevel status of the payment, payout or Refund.
4634
+ enum:
4635
+ - CREATED
4636
+ - UNSUCCESSFUL
4637
+ - PENDING_PAYMENT
4638
+ - PENDING_MERCHANT
4639
+ - PENDING_CONNECT_OR_3RD_PARTY
4640
+ - COMPLETED
4641
+ - REVERSED
4642
+ - REFUNDED
4643
+ StatusCheckout:
4644
+ readOnly: true
4645
+ type: string
4646
+ description: Current high-level status of the Checkout
4647
+ enum:
4648
+ - OPEN
4649
+ - PENDING_COMPLETION
4650
+ - COMPLETED
4651
+ - BILLED
4652
+ - CHARGEBACKED
4653
+ - DELETED
4654
+ example: OPEN
4655
+ StatusOutput:
4656
+ description: |-
4657
+ Contains information about whether the payment of the Checkout has already been completed and how much of the
4658
+ total sum has been collected already.
4659
+ type: object
4660
+ additionalProperties: false
4661
+ readOnly: true
4662
+ properties:
4663
+ paymentStatus:
4664
+ type: string
4665
+ enum:
4666
+ - WAITING_FOR_PAYMENT
4667
+ - PAYMENT_NOT_COMPLETED
4668
+ - PAYMENT_COMPLETED
4669
+ - NO_PAYMENT
4670
+ example: WAITING_FOR_PAYMENT
4671
+ description: |-
4672
+ * WAITING_FOR_PAYMENT - There does not yet exist a PaymentExecution nor a PaymentInformation for this
4673
+ Checkout.
4674
+ * PAYMENT_NOT_COMPLETED - There exists a PaymentExecution or a PaymentInformation for this Checkout, but all
4675
+ or some part of the total amount is still unpaid.
4676
+ * PAYMENT_COMPLETED - There exists a PaymentExecution or a PaymentInformation for this Checkout and the
4677
+ total amount is fully paid.
4678
+ * NO_PAYMENT - Checkout was created and deleted. No Payment Execution and no other actions can be triggered
4679
+ on the Checkout.
4680
+ isModifiable:
4681
+ type: boolean
4682
+ description: |-
4683
+ Indicates whether the Checkout can still be modified. False if any payment is already in progress, true
4684
+ otherwise.
4685
+ openAmount:
4686
+ type: integer
4687
+ description: Amount in cents always having 2 decimals. The amount yet to be paid.
4688
+ format: int64
4689
+ maximum: 999999999999
4690
+ minimum: 0
4691
+ collectedAmount:
4692
+ type: integer
4693
+ description: Amount in cents always having 2 decimals. The amount that has already been collected.
4694
+ format: int64
4695
+ maximum: 999999999999
4696
+ minimum: 0
4697
+ cancelledAmount:
4698
+ type: integer
4699
+ description: Amount in cents always having 2 decimals. The amount that has already been cancelled.
4700
+ format: int64
4701
+ maximum: 999999999999
4702
+ minimum: 0
4703
+ refundedAmount:
4704
+ type: integer
4705
+ description: |-
4706
+ Amount in cents always having 2 decimals. Amount that has been collected but was refunded to the customer.
4707
+ format: int64
4708
+ maximum: 999999999999
4709
+ minimum: 0
4710
+ chargebackAmount:
4711
+ type: integer
4712
+ description: |-
4713
+ Amount in cents always having 2 decimals. Amount that has been collected but was charged back by the
4714
+ customer.
4715
+ format: int64
4716
+ maximum: 999999999999
4717
+ minimum: 0
4718
+ StatusValue:
4719
+ type: string
4720
+ description: Current high-level status of the payment in a human-readable form.
4721
+ enum:
4722
+ - CREATED
4723
+ - CANCELLED
4724
+ - REJECTED
4725
+ - REJECTED_CAPTURE
4726
+ - REJECTED_PAUSE
4727
+ - REJECTED_UPDATE
4728
+ - REDIRECTED
4729
+ - PENDING_PAYMENT
4730
+ - PENDING_COMPLETION
4731
+ - PENDING_CAPTURE
4732
+ - AUTHORIZATION_REQUESTED
4733
+ - CAPTURE_REQUESTED
4734
+ - CAPTURED
4735
+ - REVERSED
4736
+ - REFUND_REQUESTED
4737
+ - REFUNDED
4738
+ - REJECTED_REFUND
4739
+ - CANCELLATION_REQUESTED
4740
+ - PAUSED
4741
+ - CHARGEBACKED
4742
+ - CHARGEBACK_REVERSED
4743
+ - ACCOUNT_CREDITED
4744
+ - ACCOUNT_DEBITED
4745
+ - PAYOUT_REQUESTED
4746
+ - REJECTED_CREDIT
4747
+ - UPDATED
4748
+ ThreeDSecureResults:
4749
+ type: object
4750
+ description: |-
4751
+ 3D Secure results object
4752
+ additionalProperties: false
4753
+ properties:
4754
+ version:
4755
+ type: string
4756
+ description: 3D Secure Protocol version used during this transaction.
4757
+ example: 2.2.0
4758
+ schemeEci:
4759
+ type: string
4760
+ maxLength: 2
4761
+ description: 3D Secure ECI (Electronic Commerce Indicator) depending on the Scheme. Returned by DS.
4762
+ example: 05
4763
+ appliedExemption:
4764
+ type: string
4765
+ enum:
4766
+ - low-value
4767
+ - merchant-acquirer-transaction-risk-analysis
4768
+ description: |
4769
+ Exemption requested and applied in the authorization.
4770
+ TransactionChannel:
4771
+ type: string
4772
+ enum:
4773
+ - ECOMMERCE
4774
+ - MOTO
4775
+ description: |-
4776
+ Indicates the channel via which the payment is created. Allowed values:
4777
+ * ECOMMERCE - The transaction is a regular E-Commerce transaction.
4778
+ * MOTO - The transaction is a Mail Order/Telephone Order.
4779
+
4780
+ Defaults to ECOMMERCE.
4781
+ UnscheduledCardOnFileRequestor:
4782
+ type: string
4783
+ description: |-
4784
+ Indicates which party initiated the unscheduled recurring transaction. Allowed values:
4785
+ * merchantInitiated - Merchant Initiated Transaction.
4786
+ * cardholderInitiated - Cardholder Initiated Transaction.
4787
+ Note:
4788
+ * When a customer has chosen to use a token on a hosted Checkout this property is set to
4789
+ "cardholderInitiated".
4790
+ enum:
4791
+ - merchantInitiated
4792
+ - cardholderInitiated
4793
+ x-enum-to-string: false
4794
+ UnscheduledCardOnFileSequenceIndicator:
4795
+ type: string
4796
+ description: |-
4797
+ * first = This transaction is the first of a series of unscheduled recurring transactions
4798
+ * subsequent = This transaction is a subsequent transaction in a series of unscheduled recurring transactions
4799
+ Note: this property is not allowed if isRecurring is true.
4800
+ enum:
4801
+ - first
4802
+ - subsequent
4803
+ x-enum-to-string: false