strapi-plugin-payone-provider 5.6.11 → 5.6.13

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.
package/README.md CHANGED
@@ -8,13 +8,24 @@ A comprehensive Strapi plugin that integrates the Payone payment gateway into yo
8
8
  - [Requirements](#requirements)
9
9
  - [Installation](#installation)
10
10
  - [Configuration](#configuration)
11
- - [Getting Started](#getting-started)
11
+ - [Using the Admin Panel](#using-the-admin-panel-recommended)
12
+ - [Apple Pay Setup](#apple-pay-setup)
13
+ - [Google Pay Configuration](#google-pay-configuration)
12
14
  - [Usage](#usage)
13
- - [3D Secure (3DS) Authentication](#-3d-secure-3ds-authentication)
14
- - [Payment Methods & Operations](#-payment-methods--operations)
15
- - [Supported Payment Methods](#supported-payment-methods)
16
-
17
- ## ✨ Features
15
+ - [Base URL](#base-url)
16
+ - [Common Request Headers](#common-request-headers)
17
+ - [Common Response Fields](#common-response-fields)
18
+ - [Payment Methods & Operations](#payment-methods--operations)
19
+ - [Credit Card](#credit-card)
20
+ - [PayPal](#paypal)
21
+ - [Google Pay](#google-pay)
22
+ - [Apple Pay](#apple-pay)
23
+ - [SEPA Direct Debit](#sepa-direct-debit)
24
+ - [Sofort Banking](#sofort-banking)
25
+ - [TransactionStatus Notifications](#transactionstatus-notifications)
26
+ - [Notes](#notes)
27
+
28
+ ## Features
18
29
 
19
30
  - **Payone API Integration**: Full integration with Payone's Server API (v3.10)
20
31
  - **Payment Operations**:
@@ -29,9 +40,8 @@ A comprehensive Strapi plugin that integrates the Payone payment gateway into yo
29
40
  - Connection testing
30
41
  - **Transaction Logging**: Automatic logging of all payment operations
31
42
  - **Security**: Secure credential storage with masked API keys
32
- - **Test & Live Modes**: Support for both test and production environments
33
43
 
34
- ## 🔧 Requirements
44
+ ## Requirements
35
45
 
36
46
  Before installing this plugin, ensure you have:
37
47
 
@@ -53,9 +63,8 @@ You will need the following credentials from your Payone account:
53
63
 
54
64
  > â„šī¸ **How to get Payone credentials**: Log into your Payone Merchant Interface (PMI) and navigate to Configuration → Payment Portals → [Your Portal] → Advanced Tab to find these credentials.
55
65
 
56
- ## đŸ“Ļ Installation
66
+ ## Installation
57
67
 
58
- ### Install from npm
59
68
 
60
69
  **Important**: Choose the correct version based on your Strapi version:
61
70
 
@@ -63,57 +72,37 @@ You will need the following credentials from your Payone account:
63
72
  - **For Strapi 4.x.x**: Use plugin version `^4.x.x`
64
73
 
65
74
  ```bash
66
- # For Strapi 5.x.x
67
- npm install strapi-plugin-payone-provider@^5
68
- # or
69
- yarn add strapi-plugin-payone-provider@^5
70
- # or
71
- pnpm add strapi-plugin-payone-provider@^5
72
-
73
- # For Strapi 4.x.x
74
- npm install strapi-plugin-payone-provider@^4
75
- # or
76
- yarn add strapi-plugin-payone-provider@^4
77
- # or
78
- pnpm add strapi-plugin-payone-provider@^4
75
+ # npm
76
+ npm install strapi-plugin-payone-provider
77
+ # yarn
78
+ yarn add strapi-plugin-payone-provider
79
+ # pnpm
80
+ pnpm add strapi-plugin-payone-provider
81
+
79
82
  ```
80
83
 
81
- > âš ī¸ **Version Compatibility**: Make sure to install the correct plugin version that matches your Strapi version. Using an incompatible version may cause errors or unexpected behavior.
84
+ > **Version Compatibility**: Make sure to install the correct plugin version that matches your Strapi version. Using an incompatible version may cause errors or unexpected behavior.
85
+
82
86
 
83
- ## âš™ī¸ Configuration
87
+
88
+ ## Configuration
84
89
 
85
90
  After installation, you need to configure your Payone credentials:
86
91
 
87
92
  ### Using the Admin Panel (Recommended)
88
93
 
89
- 1. Log into your Strapi admin panel
90
- 2. Navigate to **Payone Provider** in the sidebar menu
91
- 3. Go to the **Configuration** tab
92
- 4. Fill in your Payone credentials:
94
+ 1. Open **Payone Provider** in the sidebar menu
95
+ 2. Go to the **Configuration** tab
96
+ 3. Fill in your Payone credentials and save:
93
97
  - **Account ID (AID)**: Your Payone account ID
94
98
  - **Portal ID**: Your Payone portal ID
95
99
  - **Merchant ID (MID)**: Your merchant ID
96
100
  - **Portal Key**: Your API security key
97
101
  - **Mode**: Select `test` for testing or `live` for production
98
102
  - **API Version**: Leave as `3.10` (default)
99
- 5. Click **"Test Connection"** to verify your credentials
100
- 6. Click **"Save Configuration"** to store your settings
101
-
102
- ### Apple Pay Configuration
103
+ 4. Click **"Test Connection"** to verify your credentials
103
104
 
104
- To configure Apple Pay settings:
105
-
106
- 1. Navigate to **Payone Provider** in the sidebar menu
107
- 2. Go to **Payment Actions** tab
108
- 3. Select **Apple Pay** as the payment method
109
- 4. Click on the Apple Pay configuration link: `/plugins/strapi-plugin-payone-provider/apple-pay-config`
110
- 5. Configure the following settings:
111
- - **Country Code**: Select the country where your business operates
112
- - **Currency Code**: Select the currency for transactions
113
- - **Supported Networks**: Select payment card networks (Visa, Mastercard, Amex, etc.)
114
- - **Merchant Capabilities**: Select payment capabilities (3D Secure is recommended)
115
- - **Button Style & Type**: Customize the Apple Pay button appearance
116
- 6. Click **"Save Apple Pay Configuration"** to store your settings
105
+ ### Apple Pay setup
117
106
 
118
107
  > âš ī¸ **Important**: Apple Pay requires a registered domain with HTTPS. It does NOT work on localhost. For testing, use a production domain with HTTPS or test on a device with Safari (iOS/macOS).
119
108
 
@@ -132,7 +121,6 @@ https://yourdomain.com/.well-known/apple-developer-merchantid-domain-association
132
121
  - Download the domain verification file from Payone documentation: [https://docs.payone.com/payment-methods/apple-pay/apple-pay-without-dev](https://docs.payone.com/payment-methods/apple-pay/apple-pay-without-dev)
133
122
  - Alternatively, log into your Payone Merchant Interface (PMI)
134
123
  - Navigate to **Configuration** → **Payment Portals** → **Apple Pay**
135
- - Download the `apple-developer-merchantid-domain-association` file
136
124
 
137
125
  2. **Place the file in Strapi:**
138
126
 
@@ -152,7 +140,7 @@ https://yourdomain.com/.well-known/apple-developer-merchantid-domain-association
152
140
 
153
141
  #### Middleware Configuration for Apple Pay
154
142
 
155
- Apple Pay requires Content Security Policy (CSP) configuration in `config/middlewares.js` to allow Apple Pay scripts. Without this configuration, Apple Pay will NOT work.
143
+ Apple Pay requires Content Security Policy (CSP) configuration in `config/middlewares.js` to allow Apple Pay scripts. Without this configuration, Apple Pay will NOT work on your strapi admin for make test transaction.
156
144
 
157
145
  **Required CSP directives:**
158
146
 
@@ -195,25 +183,10 @@ module.exports = [
195
183
 
196
184
  ### Google Pay Configuration
197
185
 
198
- To configure Google Pay settings:
199
-
200
- 1. Navigate to **Payone Provider** in the sidebar menu
201
- 2. Go to **Payment Actions** tab
202
- 3. Select **Google Pay** as the payment method
203
- 4. Click on the Google Pay configuration link: `/plugins/strapi-plugin-payone-provider/google-pay-config`
204
- 5. Configure the following settings:
205
- - **Country Code**: Select the country where your business operates
206
- - **Currency Code**: Select the currency for transactions
207
- - **Merchant Name**: Enter your business name as it will appear in Google Pay
208
- - **Allowed Card Networks**: Select payment card networks (Mastercard, Visa, Amex, etc.)
209
- - **Allowed Authentication Methods**: Select authentication methods (PAN Only, 3D Secure)
210
- 6. Click **"Save Google Pay Configuration"** to store your settings
211
-
212
- > â„šī¸ **Note**: The Gateway Merchant ID will be automatically obtained from your Payone Merchant ID (MID) or Portal ID configured in the main Configuration tab.
213
186
 
214
187
  #### Middleware Configuration for Google Pay
215
188
 
216
- Google Pay requires Content Security Policy (CSP) configuration in `config/middlewares.js` to allow Google Pay scripts. Without this configuration, Google Pay will NOT work.
189
+ Google Pay requires Content Security Policy (CSP) configuration in `config/middlewares.js` to allow Google Pay scripts. Without this configuration, Google Pay will NOT work on your strapi admin for make test transactions.
217
190
 
218
191
  **Required CSP directives:**
219
192
 
@@ -252,27 +225,8 @@ module.exports = [
252
225
 
253
226
  > âš ī¸ **Important**: Without this middleware configuration, Google Pay scripts will be blocked and Google Pay will NOT work!
254
227
 
255
- ## 🚀 Getting Started
256
-
257
- ### 1. Test Your Connection
258
-
259
- After configuring your credentials:
260
-
261
- 1. Open the **Configuration** tab in the Payone Provider admin panel
262
- 2. Click the **"Test Connection"** button
263
- 3. If successful, you'll see a green success message
264
- 4. If it fails, check your credentials and try again
265
228
 
266
- ### 2. Try a Test Payment
267
-
268
- 1. Go to the **Payment Actions** tab
269
- 2. Try a **Preauthorization** operation:
270
- - Amount: 1000 (equals 10.00 EUR in cents)
271
- - Reference: Leave empty for auto-generation
272
- - Click **"Execute Preauthorization"**
273
- 3. Check the **Transaction History** tab to see the logged transaction
274
-
275
- ## 📖 Usage
229
+ ## Usage
276
230
 
277
231
  ### Base URL
278
232
 
@@ -304,127 +258,20 @@ All responses include:
304
258
 
305
259
  ---
306
260
 
307
- ## 🔐 3D Secure (3DS) Authentication
308
-
309
- 3D Secure (3DS) is a security protocol that adds an extra layer of authentication for credit card payments, ensuring compliance with Strong Customer Authentication (SCA) requirements.
310
-
311
- ### Enabling 3D Secure
312
-
313
- 1. Navigate to **Payone Provider** in the Strapi admin panel
314
- 2. Go to the **Configuration** tab
315
- 3. Find the **"Enable 3D Secure"** dropdown
316
- 4. Select **"Enabled"** to activate 3DS for credit card payments
317
- 5. Click **"Save Configuration"**
318
-
319
- > âš ī¸ **Note**: When 3DS is enabled, it only applies to **credit card** payments (`clearingtype: "cc"`). Other payment methods are not affected.
320
-
321
- ### Supported Operations
322
-
323
- 3D Secure works with the following operations:
324
-
325
- - ✅ **Preauthorization** (`POST /api/strapi-plugin-payone-provider/preauthorization`)
326
- - ✅ **Authorization** (`POST /api/strapi-plugin-payone-provider/authorization`)
327
- - ❌ **Capture** - Not applicable (uses preauthorized transaction)
328
- - ❌ **Refund** - Not applicable (uses existing transaction)
329
-
330
- ### Required Parameters for Preauthorization/Authorization with 3DS
331
-
332
- When 3DS is enabled and you're making a credit card payment, the following parameters are required:
333
-
334
- **Credit Card Details** (required when 3DS is enabled):
335
-
336
- - `cardtype`: Card type (`"V"` for VISA, `"M"` for Mastercard, `"A"` for AMEX, etc.)
337
- - `cardpan`: Card number (PAN)
338
- - `cardexpiredate`: Expiry date in format `YYMM` (e.g., `"2512"` for December 2025)
339
- - `cardcvc2`: CVC/CVV code (3 digits for most cards, 4 digits for AMEX)
340
-
341
- **Redirect URLs** (required for 3DS authentication flow):
342
-
343
- - `successurl`: URL to redirect after successful 3DS authentication
344
- - `errorurl`: URL to redirect after 3DS authentication error
345
- - `backurl`: URL to redirect if user cancels 3DS authentication
346
-
347
- **Example Request**:
348
-
349
- ```json
350
- {
351
- "amount": 1000,
352
- "currency": "EUR",
353
- "reference": "PAY1234567890ABCDEF",
354
- "clearingtype": "cc",
355
- "cardtype": "V",
356
- "cardpan": "4111111111111111",
357
- "cardexpiredate": "2512",
358
- "cardcvc2": "123",
359
- "firstname": "John",
360
- "lastname": "Doe",
361
- "email": "john.doe@example.com",
362
- "street": "Main Street 123",
363
- "zip": "12345",
364
- "city": "Berlin",
365
- "country": "DE",
366
- "successurl": "https://www.example.com/success",
367
- "errorurl": "https://www.example.com/error",
368
- "backurl": "https://www.example.com/back"
369
- }
370
- ```
371
-
372
- ### 3DS Response Handling
373
-
374
- When 3DS is required, the API response will include:
375
-
376
- ```json
377
- {
378
- "data": {
379
- "status": "REDIRECT",
380
- "redirecturl": "https://secure.pay1.de/3ds/...",
381
- "requires3DSRedirect": true,
382
- "txid": "123456789"
383
- }
384
- }
385
- ```
386
-
387
- **Response Fields**:
388
-
389
- - `status`: `"REDIRECT"` when 3DS authentication is required
390
- - `redirecturl`: URL to redirect the customer for 3DS authentication
391
- - `requires3DSRedirect`: Boolean indicating if redirect is needed
392
- - `txid`: Transaction ID (if available)
393
-
394
- ### 3DS Callback Endpoint
395
-
396
- After the customer completes 3DS authentication, Payone will send a callback to:
397
-
398
- **URL**: `POST /api/strapi-plugin-payone-provider/3ds-callback`
261
+ ## Payment Methods & Operations
399
262
 
400
- This endpoint processes the 3DS authentication result and updates the transaction status.
401
-
402
- > â„šī¸ **Note**: The callback endpoint is automatically handled by the plugin. You don't need to manually process it unless you're implementing custom callback handling.
403
-
404
- ### How It Works
405
-
406
- 1. **Request**: Send a preauthorization or authorization request with credit card details and redirect URLs
407
- 2. **Response**: If 3DS is required, you'll receive a `REDIRECT` status with a `redirecturl`
408
- 3. **Redirect**: Redirect the customer to the `redirecturl` for 3DS authentication
409
- 4. **Callback**: After authentication, Payone redirects back to your `successurl`, `errorurl`, or `backurl` with transaction data
410
- 5. **Completion**: The transaction is completed based on the authentication result
411
-
412
- ### Testing 3DS
413
-
414
- For testing 3DS authentication, use test cards that trigger 3DS challenges. Refer to the [Payone 3D Secure Documentation](https://docs.payone.com/security-risk-management/3d-secure#/) for test card numbers and scenarios.
415
-
416
- ---
417
-
418
- ## đŸ’ŗ Payment Methods & Operations
263
+ This section provides detailed API documentation for each supported payment method. Click on any payment method below to see the full implementation details:
419
264
 
420
265
  ### Credit Card
421
266
 
422
267
  <details>
423
268
  <summary><strong>Credit Card Payment Method</strong></summary>
424
269
 
425
- #### Preauthorization
270
+ #### Preauthorization/Authorization
426
271
 
427
- **URL**: `POST /api/strapi-plugin-payone-provider/preauthorization`
272
+ **Endpoints:**
273
+ - `POST /api/strapi-plugin-payone-provider/preauthorization`
274
+ - `POST /api/strapi-plugin-payone-provider/authorization`
428
275
 
429
276
  **Request Body**:
430
277
 
@@ -469,56 +316,10 @@ For testing 3DS authentication, use test cards that trigger 3DS challenges. Refe
469
316
  }
470
317
  ```
471
318
 
472
- #### Authorization
473
-
474
- **URL**: `POST /api/strapi-plugin-payone-provider/authorization`
475
-
476
- **Request Body**: (Same as Preauthorization)
477
-
478
- ```json
479
- {
480
- "amount": 1000,
481
- "currency": "EUR",
482
- "reference": "PAY1234567890ABCDEF",
483
- "clearingtype": "cc",
484
- "cardtype": "V",
485
- "cardpan": "4111111111111111",
486
- "cardexpiredate": "2512",
487
- "cardcvc2": "123",
488
- "firstname": "John",
489
- "lastname": "Doe",
490
- "email": "john.doe@example.com",
491
- "telephonenumber": "+4917512345678",
492
- "street": "Main Street 123",
493
- "zip": "12345",
494
- "city": "Berlin",
495
- "country": "DE",
496
- "successurl": "https://www.example.com/success",
497
- "errorurl": "https://www.example.com/error",
498
- "backurl": "https://www.example.com/back",
499
- "salutation": "Herr",
500
- "gender": "m",
501
- "ip": "127.0.0.1",
502
- "language": "de",
503
- "customer_is_present": "yes"
504
- }
505
- ```
506
-
507
- **Response**:
508
-
509
- ```json
510
- {
511
- "data": {
512
- "status": "APPROVED",
513
- "txid": "123456789",
514
- "userid": "987654321"
515
- }
516
- }
517
- ```
518
-
519
319
  #### Capture
520
320
 
521
- **URL**: `POST /api/strapi-plugin-payone-provider/capture`
321
+ **Endpoint:**
322
+ - `POST /api/strapi-plugin-payone-provider/capture`
522
323
 
523
324
  **Request Body**:
524
325
 
@@ -544,7 +345,8 @@ For testing 3DS authentication, use test cards that trigger 3DS challenges. Refe
544
345
 
545
346
  #### Refund
546
347
 
547
- **URL**: `POST /api/strapi-plugin-payone-provider/refund`
348
+ **Endpoint:**
349
+ - `POST /api/strapi-plugin-payone-provider/refund`
548
350
 
549
351
  **Request Body**:
550
352
 
@@ -578,9 +380,11 @@ For testing 3DS authentication, use test cards that trigger 3DS challenges. Refe
578
380
  <details>
579
381
  <summary><strong>PayPal Payment Method</strong></summary>
580
382
 
581
- #### Preauthorization
383
+ #### Preauthorization/Authorization
582
384
 
583
- **URL**: `POST /api/strapi-plugin-payone-provider/preauthorization`
385
+ **Endpoints:**
386
+ - `POST /api/strapi-plugin-payone-provider/preauthorization`
387
+ - `POST /api/strapi-plugin-payone-provider/authorization`
584
388
 
585
389
  **Request Body**:
586
390
 
@@ -628,59 +432,11 @@ For testing 3DS authentication, use test cards that trigger 3DS challenges. Refe
628
432
  }
629
433
  ```
630
434
 
631
- #### Authorization
632
-
633
- **URL**: `POST /api/strapi-plugin-payone-provider/authorization`
634
-
635
- **Request Body**: (Same as Preauthorization)
636
-
637
- ```json
638
- {
639
- "amount": 1000,
640
- "currency": "EUR",
641
- "reference": "PAY1234567890ABCDEF",
642
- "clearingtype": "wlt",
643
- "wallettype": "PPE",
644
- "firstname": "John",
645
- "lastname": "Doe",
646
- "email": "john.doe@example.com",
647
- "telephonenumber": "+4917512345678",
648
- "street": "Main Street 123",
649
- "zip": "12345",
650
- "city": "Berlin",
651
- "country": "DE",
652
- "shipping_firstname": "John",
653
- "shipping_lastname": "Doe",
654
- "shipping_street": "Main Street 123",
655
- "shipping_zip": "12345",
656
- "shipping_city": "Berlin",
657
- "shipping_country": "DE",
658
- "successurl": "https://www.example.com/success",
659
- "errorurl": "https://www.example.com/error",
660
- "backurl": "https://www.example.com/back",
661
- "salutation": "Herr",
662
- "gender": "m",
663
- "ip": "127.0.0.1",
664
- "language": "de",
665
- "customer_is_present": "yes"
666
- }
667
- ```
668
-
669
- **Response**:
670
-
671
- ```json
672
- {
673
- "data": {
674
- "status": "REDIRECT",
675
- "txid": "123456789",
676
- "redirecturl": "https://secure.pay1.de/redirect/..."
677
- }
678
- }
679
- ```
680
435
 
681
436
  #### Capture
682
437
 
683
- **URL**: `POST /api/strapi-plugin-payone-provider/capture`
438
+ **Endpoint:**
439
+ - `POST /api/strapi-plugin-payone-provider/capture`
684
440
 
685
441
  **Request Body**:
686
442
 
@@ -707,7 +463,8 @@ For testing 3DS authentication, use test cards that trigger 3DS challenges. Refe
707
463
 
708
464
  #### Refund
709
465
 
710
- **URL**: `POST /api/strapi-plugin-payone-provider/refund`
466
+ **Endpoint:**
467
+ - `POST /api/strapi-plugin-payone-provider/refund`
711
468
 
712
469
  **Request Body**:
713
470
 
@@ -757,7 +514,7 @@ Google Pay integration requires obtaining an encrypted payment token from Google
757
514
 
758
515
  ```javascript
759
516
  const paymentsClient = new google.payments.api.PaymentsClient({
760
- environment: "TEST", // or "PRODUCTION" for live
517
+ environment: "TEST", // or "PRODUCTION" for live mode
761
518
  });
762
519
 
763
520
  const baseRequest = {
@@ -813,8 +570,9 @@ paymentDataRequest.merchantInfo = {
813
570
  const button = paymentsClient.createButton({
814
571
  onClick: async () => {
815
572
  try {
816
- const paymentData =
817
- await paymentsClient.loadPaymentData(paymentDataRequest);
573
+ const paymentData = await paymentsClient.loadPaymentData(
574
+ paymentDataRequest
575
+ );
818
576
  const token = paymentData.paymentMethodData.tokenizationData.token;
819
577
 
820
578
  // Token is a JSON string, encode it to Base64 for Payone
@@ -863,9 +621,11 @@ The token from Google Pay is a JSON string with the following structure:
863
621
 
864
622
  **Important**: The token must be Base64 encoded before sending to Payone.
865
623
 
866
- #### Preauthorization
624
+ #### Preauthorization/Authorization
867
625
 
868
- **URL**: `POST /api/strapi-plugin-payone-provider/preauthorization`
626
+ **Endpoints:**
627
+ - `POST /api/strapi-plugin-payone-provider/preauthorization`
628
+ - `POST /api/strapi-plugin-payone-provider/authorization`
869
629
 
870
630
  **Request Body**:
871
631
 
@@ -947,53 +707,11 @@ The token from Google Pay is a JSON string with the following structure:
947
707
  }
948
708
  ```
949
709
 
950
- #### Authorization
951
-
952
- **URL**: `POST /api/strapi-plugin-payone-provider/authorization`
953
-
954
- **Request Body**: (Same as Preauthorization, include `googlePayToken`)
955
-
956
- ```json
957
- {
958
- "amount": 1000,
959
- "currency": "EUR",
960
- "reference": "PAY1234567890ABCDEF",
961
- "clearingtype": "wlt",
962
- "wallettype": "GGP",
963
- "googlePayToken": "BASE64_ENCODED_TOKEN",
964
- "firstname": "John",
965
- "lastname": "Doe",
966
- "email": "john.doe@example.com",
967
- "street": "Main Street 123",
968
- "zip": "12345",
969
- "city": "Berlin",
970
- "country": "DE",
971
- "shipping_firstname": "John",
972
- "shipping_lastname": "Doe",
973
- "shipping_street": "Main Street 123",
974
- "shipping_zip": "12345",
975
- "shipping_city": "Berlin",
976
- "shipping_country": "DE",
977
- "successurl": "https://www.example.com/success",
978
- "errorurl": "https://www.example.com/error",
979
- "backurl": "https://www.example.com/back"
980
- }
981
- ```
982
-
983
- **Response**:
984
-
985
- ```json
986
- {
987
- "data": {
988
- "status": "APPROVED",
989
- "txid": "123456789"
990
- }
991
- }
992
- ```
993
710
 
994
711
  #### Capture
995
712
 
996
- **URL**: `POST /api/strapi-plugin-payone-provider/capture`
713
+ **Endpoint:**
714
+ - `POST /api/strapi-plugin-payone-provider/capture`
997
715
 
998
716
  **Request Body**:
999
717
 
@@ -1019,7 +737,8 @@ The token from Google Pay is a JSON string with the following structure:
1019
737
 
1020
738
  #### Refund
1021
739
 
1022
- **URL**: `POST /api/strapi-plugin-payone-provider/refund`
740
+ **Endpoint:**
741
+ - `POST /api/strapi-plugin-payone-provider/refund`
1023
742
 
1024
743
  **Request Body**:
1025
744
 
@@ -1064,9 +783,11 @@ The token from Google Pay is a JSON string with the following structure:
1064
783
  <details>
1065
784
  <summary><strong>Apple Pay Payment Method</strong></summary>
1066
785
 
1067
- #### Preauthorization
786
+ #### Preauthorization/Authorization
1068
787
 
1069
- **URL**: `POST /api/strapi-plugin-payone-provider/preauthorization`
788
+ **Endpoints:**
789
+ - `POST /api/strapi-plugin-payone-provider/preauthorization`
790
+ - `POST /api/strapi-plugin-payone-provider/authorization`
1070
791
 
1071
792
  **Request Body**:
1072
793
 
@@ -1114,59 +835,10 @@ The token from Google Pay is a JSON string with the following structure:
1114
835
  }
1115
836
  ```
1116
837
 
1117
- #### Authorization
1118
-
1119
- **URL**: `POST /api/strapi-plugin-payone-provider/authorization`
1120
-
1121
- **Request Body**: (Same as Preauthorization)
1122
-
1123
- ```json
1124
- {
1125
- "amount": 1000,
1126
- "currency": "EUR",
1127
- "reference": "PAY1234567890ABCDEF",
1128
- "clearingtype": "wlt",
1129
- "wallettype": "APL",
1130
- "firstname": "John",
1131
- "lastname": "Doe",
1132
- "email": "john.doe@example.com",
1133
- "telephonenumber": "+4917512345678",
1134
- "street": "Main Street 123",
1135
- "zip": "12345",
1136
- "city": "Berlin",
1137
- "country": "DE",
1138
- "shipping_firstname": "John",
1139
- "shipping_lastname": "Doe",
1140
- "shipping_street": "Main Street 123",
1141
- "shipping_zip": "12345",
1142
- "shipping_city": "Berlin",
1143
- "shipping_country": "DE",
1144
- "successurl": "https://www.example.com/success",
1145
- "errorurl": "https://www.example.com/error",
1146
- "backurl": "https://www.example.com/back",
1147
- "salutation": "Herr",
1148
- "gender": "m",
1149
- "ip": "127.0.0.1",
1150
- "language": "de",
1151
- "customer_is_present": "yes"
1152
- }
1153
- ```
1154
-
1155
- **Response**:
1156
-
1157
- ```json
1158
- {
1159
- "data": {
1160
- "status": "REDIRECT",
1161
- "txid": "123456789",
1162
- "redirecturl": "https://secure.pay1.de/redirect/..."
1163
- }
1164
- }
1165
- ```
1166
-
1167
838
  #### Capture
1168
839
 
1169
- **URL**: `POST /api/strapi-plugin-payone-provider/capture`
840
+ **Endpoint:**
841
+ - `POST /api/strapi-plugin-payone-provider/capture`
1170
842
 
1171
843
  **Request Body**:
1172
844
 
@@ -1193,7 +865,8 @@ The token from Google Pay is a JSON string with the following structure:
1193
865
 
1194
866
  #### Refund
1195
867
 
1196
- **URL**: `POST /api/strapi-plugin-payone-provider/refund`
868
+ **Endpoint:**
869
+ - `POST /api/strapi-plugin-payone-provider/refund`
1197
870
 
1198
871
  **Request Body**:
1199
872
 
@@ -1227,9 +900,11 @@ The token from Google Pay is a JSON string with the following structure:
1227
900
  <details>
1228
901
  <summary><strong>SEPA Direct Debit Payment Method</strong></summary>
1229
902
 
1230
- #### Preauthorization
903
+ #### Preauthorization/Authorization
1231
904
 
1232
- **URL**: `POST /api/strapi-plugin-payone-provider/preauthorization`
905
+ **Endpoints:**
906
+ - `POST /api/strapi-plugin-payone-provider/preauthorization`
907
+ - `POST /api/strapi-plugin-payone-provider/authorization`
1233
908
 
1234
909
  **Request Body**:
1235
910
 
@@ -1271,53 +946,10 @@ The token from Google Pay is a JSON string with the following structure:
1271
946
  }
1272
947
  ```
1273
948
 
1274
- #### Authorization
1275
-
1276
- **URL**: `POST /api/strapi-plugin-payone-provider/authorization`
1277
-
1278
- **Request Body**: (Same as Preauthorization)
1279
-
1280
- ```json
1281
- {
1282
- "amount": 1000,
1283
- "currency": "EUR",
1284
- "reference": "PAY1234567890ABCDEF",
1285
- "clearingtype": "elv",
1286
- "iban": "DE89370400440532013000",
1287
- "bic": "COBADEFFXXX",
1288
- "bankaccountholder": "John Doe",
1289
- "bankcountry": "DE",
1290
- "firstname": "John",
1291
- "lastname": "Doe",
1292
- "email": "john.doe@example.com",
1293
- "telephonenumber": "+4917512345678",
1294
- "street": "Main Street 123",
1295
- "zip": "12345",
1296
- "city": "Berlin",
1297
- "country": "DE",
1298
- "salutation": "Herr",
1299
- "gender": "m",
1300
- "ip": "127.0.0.1",
1301
- "language": "de",
1302
- "customer_is_present": "yes"
1303
- }
1304
- ```
1305
-
1306
- **Response**:
1307
-
1308
- ```json
1309
- {
1310
- "data": {
1311
- "status": "APPROVED",
1312
- "txid": "123456789",
1313
- "userid": "987654321"
1314
- }
1315
- }
1316
- ```
1317
-
1318
949
  #### Capture
1319
950
 
1320
- **URL**: `POST /api/strapi-plugin-payone-provider/capture`
951
+ **Endpoint:**
952
+ - `POST /api/strapi-plugin-payone-provider/capture`
1321
953
 
1322
954
  **Request Body**:
1323
955
 
@@ -1343,7 +975,8 @@ The token from Google Pay is a JSON string with the following structure:
1343
975
 
1344
976
  #### Refund
1345
977
 
1346
- **URL**: `POST /api/strapi-plugin-payone-provider/refund`
978
+ **Endpoint:**
979
+ - `POST /api/strapi-plugin-payone-provider/refund`
1347
980
 
1348
981
  **Request Body**:
1349
982
 
@@ -1377,9 +1010,12 @@ The token from Google Pay is a JSON string with the following structure:
1377
1010
  <details>
1378
1011
  <summary><strong>Sofort Banking Payment Method</strong></summary>
1379
1012
 
1380
- #### Preauthorization
1013
+ #### Preauthorization/Authorization
1014
+
1015
+ **Endpoint:**
1016
+ - `POST /api/strapi-plugin-payone-provider/preauthorization`
1017
+ - `POST /api/strapi-plugin-payone-provider/authorization`
1381
1018
 
1382
- **URL**: `POST /api/strapi-plugin-payone-provider/preauthorization`
1383
1019
 
1384
1020
  **Request Body**:
1385
1021
 
@@ -1422,54 +1058,11 @@ The token from Google Pay is a JSON string with the following structure:
1422
1058
  }
1423
1059
  ```
1424
1060
 
1425
- #### Authorization
1426
-
1427
- **URL**: `POST /api/strapi-plugin-payone-provider/authorization`
1428
-
1429
- **Request Body**: (Same as Preauthorization)
1430
-
1431
- ```json
1432
- {
1433
- "amount": 1000,
1434
- "currency": "EUR",
1435
- "reference": "PAY1234567890ABCDEF",
1436
- "clearingtype": "sb",
1437
- "onlinebanktransfertype": "PNT",
1438
- "bankcountry": "DE",
1439
- "firstname": "John",
1440
- "lastname": "Doe",
1441
- "email": "john.doe@example.com",
1442
- "telephonenumber": "+4917512345678",
1443
- "street": "Main Street 123",
1444
- "zip": "12345",
1445
- "city": "Berlin",
1446
- "country": "DE",
1447
- "successurl": "https://www.example.com/success",
1448
- "errorurl": "https://www.example.com/error",
1449
- "backurl": "https://www.example.com/back",
1450
- "salutation": "Herr",
1451
- "gender": "m",
1452
- "ip": "127.0.0.1",
1453
- "language": "de",
1454
- "customer_is_present": "yes"
1455
- }
1456
- ```
1457
-
1458
- **Response**:
1459
-
1460
- ```json
1461
- {
1462
- "data": {
1463
- "status": "REDIRECT",
1464
- "txid": "123456789",
1465
- "redirecturl": "https://secure.pay1.de/redirect/..."
1466
- }
1467
- }
1468
- ```
1469
1061
 
1470
1062
  #### Capture
1471
1063
 
1472
- **URL**: `POST /api/strapi-plugin-payone-provider/capture`
1064
+ **Endpoint:**
1065
+ - `POST /api/strapi-plugin-payone-provider/capture`
1473
1066
 
1474
1067
  **Request Body**:
1475
1068
 
@@ -1495,7 +1088,8 @@ The token from Google Pay is a JSON string with the following structure:
1495
1088
 
1496
1089
  #### Refund
1497
1090
 
1498
- **URL**: `POST /api/strapi-plugin-payone-provider/refund`
1091
+ **Endpoint:**
1092
+ - `POST /api/strapi-plugin-payone-provider/refund`
1499
1093
 
1500
1094
  **Request Body**:
1501
1095
 
@@ -1524,52 +1118,7 @@ The token from Google Pay is a JSON string with the following structure:
1524
1118
 
1525
1119
  ---
1526
1120
 
1527
- ## ✅ Supported Payment Methods
1528
-
1529
- Click on any payment method to see detailed API documentation:
1530
-
1531
- - [Credit Card](#credit-card)
1532
- - [PayPal](#paypal)
1533
- - [Google Pay](#google-pay)
1534
- - [Apple Pay](#apple-pay)
1535
- - [SEPA Direct Debit](#sepa-direct-debit)
1536
- - [Sofort Banking](#sofort-banking)
1537
-
1538
- ---
1539
-
1540
- ## 📝 Notes
1541
-
1542
- ### Important Parameters
1543
-
1544
- - **amount**: Always in cents (e.g., 1000 = 10.00 EUR)
1545
- - **reference**: Max 20 characters, alphanumeric only. Auto-normalized by the plugin.
1546
- - **cardexpiredate**: Format is YYMM (e.g., "2512" = December 2025)
1547
- - **sequencenumber**: Start with 1 for capture, 2 for first refund, increment for subsequent refunds
1548
- - **Refund amount**: Must be negative (e.g., -1000 for 10.00 EUR refund)
1549
-
1550
- ### Redirect URLs
1551
-
1552
- For redirect-based payment methods (PayPal, Google Pay, Apple Pay, Sofort), you must provide:
1553
-
1554
- - `successurl`: URL to redirect after successful payment
1555
- - `errorurl`: URL to redirect after payment error
1556
- - `backurl`: URL to redirect if user cancels payment
1557
-
1558
- ### Preauthorization vs Authorization
1559
-
1560
- - **Preauthorization**: Reserves funds but doesn't charge immediately. Requires a Capture call later.
1561
- - **Authorization**: Immediately charges the customer's payment method.
1562
-
1563
- ### Capture Mode
1564
-
1565
- For wallet payments (PayPal, Google Pay, Apple Pay), you can specify:
1566
-
1567
- - `capturemode: "full"`: Capture the entire preauthorized amount
1568
- - `capturemode: "partial"`: Capture less than the preauthorized amount
1569
-
1570
- ---
1571
-
1572
- ## đŸ“ĸ TransactionStatus Notifications
1121
+ ## TransactionStatus Notifications
1573
1122
 
1574
1123
  The Payone platform provides an asynchronous way of notifying your system of changes to a transaction. These notifications are called "TransactionStatus" and are automatically handled by this plugin.
1575
1124
 
@@ -1632,3 +1181,11 @@ The plugin automatically verifies:
1632
1181
  4. **Credentials**: Verifies that `portalid` and `aid` match your configured settings
1633
1182
 
1634
1183
  > 📖 **Reference**: For more details, see [Payone TransactionStatus Notification Documentation](https://docs.payone.com/integration/response-handling/transactionstatus-notification)
1184
+
1185
+ ---
1186
+
1187
+ ## Notes
1188
+
1189
+ For additional information and updates, please refer to the official Payone documentation:
1190
+
1191
+ **Payone Documentation**: [https://docs.payone.com/payment-methods](https://docs.payone.com/payment-methods)