Process flow charts
Multiexcerpt | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||
|
Process flow e-commerce checkout with Swish
Process flow m-commerce checkout with Swish |
Configuration for Swish
Certificate Management
Each merchant needs a certificate for each MID. For the Certificate Management, you need to download the following document: https://www.getswish.se/content/uploads/2015/06/Guide-Certifikatsadministration_160118.pdf
You need to Order a new Certificate, as described in section 2.6 of the downloaded document. The Certificate Signing Request (CSR) will be provided by Computop.
Overview of the Certificate Management process:
- Once you have access to Swish Certificate Management Tool, contact Computop at helpdesk@computop.com with request for Swish CSR
- Computop creates CSR and sends it to you
- You will need to upload the CSR received from Computop in Swish Certificate Management Tool
- You will generate and download the Certificate, as described in section 2.6 of the downloaded document. The format of Certificate can be either PEM or PKCS#7.
- You will send back to Computop the Certificate as response to email with CSR received from Computop
Paygate interface
Multiexcerpt include | ||||||
---|---|---|---|---|---|---|
|
Call of Paygate interface for Swish
Please enter the following URL to process a Swish payment via the Paygate form:
Notice: For security reasons, Paygate rejects all payment requests with formatting errors. Therefore, please use the correct data type for each parameter.
The following table describes the encrypted payment request parameters:
Parameter | Format | CND | Description | |
---|---|---|---|---|
MerchantID | ans..30 | M | MerchantID, assigned by Computop. Additionally this parameter has to be passed in plain language too. | |
TransID | ans..35 | M | TransactionID which should be unique for each payment | |
RefNr | ans..35 | O | Unique reference number | |
Amount | n..10 | M | Amount in the smallest currency unit (e.g. SEK Öre) Please contact the helpdesk, if you want to capture amounts < 100 (smallest currency unit). | |
Currency | a3 | M | Currency, three digits DIN / ISO 4217. Only SEK permitted | |
MAC | an64 | M | Hash Message Authentication Code (HMAC) with SHA-256 algorithm | |
OrderDesc | ans..128 | M | Description of purchased goods, unit prices etc. Permitted characters a-ö, A-Ö, the digits 0-9 and the special characters :;.,?!()”. | |
ReqID | ans..32 | O | To avoid double payments, enter an alphanumeric value which identifies your transaction and may be assigned only once. If the transaction is submitted again with the same ReqID, Paygate will not carry out the payment, but will just return the status of the original transaction. Please note that the Paygate must have a finalized transaction status for the first initial action. Submissions with identical ReqID for an open status will be processed regularly. | |
Channel | a3 | M | Channel for processing the payment Possible values: Web or App Web = eCommerce App = mCommerce | |
MobileNr | n20 | C | Customer’s mobile telephone number. (mandatory if Channel = Web) The submitted mobile telephone number of that person that makes the payment. Only digits are allowed and it must habe at least 8 digits and maximal 15 digits. In order to get found by Swish, it also must comply with the following format: Country code + Mobile telephone number (without leading Zero). e.g.: 46712345678 | |
URLNotify | ans..256 | O | Complete URL which Paygate calls up in order to notify the shop about the payment result. The URL may be called up only via port 443 It may not contain parameters: Use the UserData parameter instead. This URL must not necessary specified if an URLNotify is pre-configured by Computop Support. | |
UserData | ans..1024 | O | If specified at request, Paygate forwards the parameter with the payment result to the shop |
Parameters for payments with Swish
The following table describes the result parameters with which the Paygate responds to your system:
Parameter | Format | CND | Description |
---|---|---|---|
MID | ans..30 | M | MerchantID, assigned by Computop |
PayID | an32 | M | ID assigned by Paygate for the payment, e.g. for referencing in batch files. |
XID | an32 | M | ID for all single transactions (authorisation, capture, credit note) for one payment assigned by Paygate |
TransID | ans..35 | M | Merchant’s transaction number |
RefNr | ans..35 | O | Unique reference number |
Status | a..50 | M | AUTHORIZE_REQUEST or FAILED |
Description | ans..1024 | M | Further details in the event that payment is rejected. Please do not use the Description but the Code parameter for the transaction status analysis! |
Code | n8 | M | Error code according to Paygate Response Codes (A4 Error codes) |
CodeExt | ans..256 | C | Error code from Swish. Notice: Is returned only if Status=FAILED. Use is possible only in agreement with Computop support. |
ErrorText | ans..256 | C | Detailed Swish error message. Notice: Is returned only if Status=FAILED. Use is possible only in agreement with Computop support. |
TransactionID | ans..50 | O | Transaction ID from Swish |
TokenExt | an..32 | C | In order to open the Swish app TokenExt together with the Custom URL Scheme are necessary. TokenExt ist returned only if Channel=App. e.g..: swish://paymentrequest?token=f34DS34lfd0d03fdDselkfd3ffk21 |
URLConfirm | ans..256 | O | Location URL. returned by Swish e.g.: https://mss.swicpc.bankgirot.se/swish-cpcapi/api/v1/paymentrequests/A44C22F42E3C4D498C4D8B1D4A6CE743 |
UserData | ans..1024 | O | If specified at request, Paygate forwards the parameter with the payment result to the shop |
Result parameters for Swish payments
The following table gives the results parameters which the Paygate transfers to your URLNotify. If you have specified the Response=encrypt parameter, the following parameters are sent Blowfish encrypted to your system:
Parameter | Format | CND | Description |
---|---|---|---|
MID | ans..30 | M | MerchantID, assigned by Computop |
PayID | an32 | M | ID assigned by Paygate for the payment, e.g. for referencing in batch files. |
XID | an32 | M | ID for all single transactions (authorisation, capture, credit note) for one payment assigned by Paygate |
TransID | ans..35 | M | Merchant’s transaction number |
RefNr | ans..35 | O | Unique reference number |
Status | a..50 | M | OK or FAILED |
Description | ans..1024 | M | Further details in the event that payment is rejected. Please do not use the Description but the Code parameter for the transaction status analysis! |
Code | n8 | M | Error code according to Paygate Response Codes (A4 Error codes) |
CodeExt | ans..256 | C | Error code from Swish. Notice: Is returned only if Status=FAILED. Use is possible only in agreement with Computop support. |
ErrorText | ans..256 | C | Detailed Swish error message. Notice: Is returned only if Status=FAILED. Use is possible only in agreement with Computop support. |
TransactionID | ans..50 | O | Transaction ID from Swish |
TokenExt | an..32 | C | In order to open the Swish app TokenExt together with the Custom URL Scheme are necessary. TokenExt ist returned only if Channel=App. e.g..: swish://paymentrequest?token=f34DS34lfd0d03fdDselkfd3ffk21 |
URLConfirm | ans..256 | O | Location URL. returned by Swish e.g.: https://mss.swicpc.bankgirot.se/swish-cpcapi/api/v1/paymentrequests/A44C22F42E3C4D498C4D8B1D4A6CE743 |
UserData | ans..1024 | O | If specified at request, Paygate forwards the parameter with the payment result to the shop |
Result parameters for URLNotify
Credit with reference
Credits (refunds) are possible via a Server-to-Server connection. For a Credit with reference to a capture the amount of the Credit is limited to the amount of the previous capture. To carry out a credit with a reference transaction, please use the following URL:
Notice: For security reasons, Paygate rejects all payment requests with formatting errors. Therefore, please use the correct data type for each parameter.
The following table describes the encrypted payment request parameters:
Parameter | Format | CND | Description |
---|---|---|---|
MerchantID | ans..30 | M | MerchantID, assigned by Computop. Additionally this parameter has to be passed in plain language too. |
PayID | an32 | M | ID assigned by Paygate for the payment to be credited |
TransID | ans..35 | M | ID assigned by Merchant for the payment process to be credited |
RefNr | ans..35 | O | Unique reference number |
Amount | n..10 | M | Amount in the smallest currency unit (e.g. SEK Öre Cent) Please contact the helpdesk, if you want to capture amounts < 100 (smallest currency unit). |
Currency | a..3 | M | Currency code, three digits DIN / ISO 4217. Only SEK permissible. |
MAC | an64 | M | Hash Message Authentication Code (HMAC) with SHA-256 algorithm |
ReqID | ans..32 | O | To avoid double payments, enter an alphanumeric value which identifies your transaction and may be assigned only once. If the transaction is submitted again with the same ReqID, Paygate will not carry out the payment, but will just return the status of the original transaction. Please note that the Paygate must have a finalized transaction status for the first initial action. Submissions with identical ReqID for an open status will be processed regularly. |
Parameters for credits of Swish payments
The following table describes the Paygate response parameters:
Parameter | Format | CND | Description | |
---|---|---|---|---|
MID | ans..30 | M | MerchantID, assigned by Computop | |
PayID | an32 | M | ID assigned by Paygate for the payment, e.g. for referencing in batch files | |
XID | an32 | M | ID for all single transactions (authorisation, capture, credit note) for one payment assigned by Paygate | |
TransID | ans..35 | M | Merchant’s transaction number | |
RefNr | ans..35 | O | Unique reference number | |
Status | a..50 | M | OK or FAILED | |
Description | ans..1024 | M | Further details in the event that payment is rejected. Please do not use the Description but the Code parameter for the transaction status analysis! | |
Code | n8 | M | Error code according to Paygate Response Codes (A4 Error codes) |
Result parameters for credits of Swish payments
Batch processing via the interface
Basic information about using Batch files and about their structure can be found in the Batch Manager manual. Within batch processing not alle functions are available which are usually available for the online interface.
This section describes the parameters which must be transferred within the data set (Record) for executing credits with Swish, which can be found within the response file about the payment status.
Following table gives an overview of all batch versions that are possible for a specific action and their specialities:
Action | Version | Description |
---|---|---|
Credit | 1.0 / 2.0 | Standard version without return of parameter Code |
| 1.x / 2.x | with RefNr (valid for all versions other than 1.0) |
Description of the possible batch versions
The structure for an Swish payment in a Batch file to be submitted is as follows:
HEAD,<MerchantID>,<Date>,<Version> Swish,Credit,<Amount>,<Currency>,<TransID>,(<RefNr>,)<PayID> FOOT,<CountRecords>,<SumAmount> |
Example for Master MID Funktion:
HEAD,[Master]MerchantID,Date,2.x Type,Action,[Slave]MID,Amount,Currency,TransID,Data (depends on Action) FOOT,CountRecords,SumAmount |
The following table describes the individual fields and values used within the data set (record) in the batch file:
Parameter | Format | CND | Description |
---|---|---|---|
Type | a..11 | M | HEAD for Header, FOOT for Footer, Swish for Swish |
Action | a..20 | M | The parameter Action defines the type of transaction: Credit |
Amount | n..10 | M | Amount in the smallest currency unit (e.g. SEK Öre) Please contact the helpdesk, if you want to capture amounts < 100 (smallest currency unit). |
Currency | a3 | M | Currency code, three digits DIN / ISO 4217. Only SEK permissible. |
TransID | ans..35 | M | TransactionID which should be unique for each payment |
RefNr | ans..35 | O | Unique reference number |
PayID | an32 | M | ID for this transaction given by Paygate |
Description of fields within the record for Batch files
The record area within the response file for Batch transactions looks as follows:
HEAD,<MerchantID>,<Date>,<Version> Swish,Credit,<Amount>,<Currency>,<TransID>,(<RefNr>,)<PayID>,<Status>,<Code> FOOT,<CountRecords>,<SumAmount> |
The following table describes the response parameters which the Batch Manager saves in the Record area for each transaction (standard parameters not explained here, such as <TransID> or <RefNR> and request parameters are returned unchanged and correspond to the call as specified before):
Parameter | Format | CND | Description |
---|---|---|---|
Action | a..20 | M | The parameter Action defines the type of transaction: Credit |
PayID | an32 | M | ID for this transaction given by Paygate |
Status | a..50 | M | OK or FAILED |
Code | n8 | M | Error code according to Paygate Response Codes (A4 Error codes) |
Description of result parameters within the record for Batch files