Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Published by Scroll Versions from space ENWORK and version Documentation

Table of Contents


About PostFinance Pay

General information about PostFinance Pay

PostFinance has updated its online payment methods for the PostFinance Card, combining "PostFinance Card" and "PostFinance E-Finance" into a single system. Previously, these methods allowed you to choose your preferred payment process and confirm online payment authentication via the PostFinance app, a card reader, or Mobile ID.

With the introduction of PostFinance Pay, these two methods are being merged and enhanced. This new system eliminates the need for a card number and card reader during the payment process. With PostFinance Pay, you can now conveniently confirm online transactions and payment method registrations directly through the PostFinance app.


Page properties
Logo
Info
Excerpt

PostFinance is an online banking payment method in Switzerland and is the market leader in Swiss payment transactions with a market share of around 60%. With PostFinance merchants can reach over 3.5 million potential customers.

TypePayments by Online Bank Transfer

Further information can be found on the webpage of PostFinance (https://www.postfinance.ch/de/privat/zahlen-sparen/mobiles-bezahlen/pay.html#/). 


Process Flow Chart

Multiexcerpt
MultiExcerptNameProcessFlow

 

draw.io Diagram
bordertrue
diagramName

...

ProcessFlow_PostfinancePay_CT
simpleViewerfalse
linksauto
tbstyletop
lboxtrue
diagramWidth1108

PostFinance Pay process flow


Multiexcerpt include
SpaceWithExcerptEN
MultiExcerptNamePlatform-Kurz
PageWithExcerptWording
interface

Multiexcerpt include
SpaceWithExcerptEN
MultiExcerptNameDefinition
PageWithExcerptDefinition EN


Create PostFinance Pay Authorisation

To create an authorisation with PostFinance Pay, please use the following URL:

...

Multiexcerpt include
SpaceWithExcerptEN
MultiExcerptNameBaseURL
PageWithExcerptWording
PostFinPay.aspx

 

Multiexcerpt include
SpaceWithExcerptEN
MultiExcerptNameRequest_Intro
PageWithExcerptReuse API

Please note that when PostFinance redirects a customer to the callback page, the initiated transaction has not yet been finalized. Therefore, kindly inform the customer on the callback page that the payment is still being processed and that they should not close the page.

If the transaction is to be partially captured later, you need to define this when you initiate the Authorization request by using the captureInfo parameter as described below.

Multiexcerpt
MultiExcerptNamepostfinance_request
Table Transformer
dateFormatdd M yy
export-wordfalse
show-sourcefalse
export-csvfalse
id

...

1718192103009_-

...

1328531350
transposefalse
worklog365|5|8|y w d h m|y w d h m
separator.
export-pdffalse
sqlSELECT * FROM T*

Table Excerpt Include
statictrue
nameMerchantID
pageMerchantID
typepage

Table Excerpt Include
statictrue
nameTransID
pageTransID
typepage

Table Excerpt Include
statictrue
nameXID
pageXID
typepage

Key

Format

CND

Description

Beschreibung

RefNr

ans..18

M

Merchant’s unique reference number. Only characters a-zA-Z0-9,-_ are allowed.

Note: Please consider response parameter PaymentPurpose.

Eindeutige Referenznummer des Händlers. Nur die Zeichen a-zA-Z0-9,-_ sind erlaubt.

Hinweis: Bitte beachten Sie den Antparameter PaymentPurpose.

Table Excerpt Include
statictrue
nameAmount
pageAmount
typepage

Table Excerpt Include
statictrue
nameCurrency
pageCurrency
typepage

Table Excerpt Include
statictrue
nameMAC
pageMAC
typepage

Table Excerpt Include
statictrue
nameUserData
pageUserData
typepage

Table Excerpt Include
statictrue
nameReqId-ans..32
pageReqId
typepage

Key

Format

CND

Description

Beschreibung

captureinfo

ans..1024

O

New parameter for multiple partial captures. This parameter must be created in JSON format.

The individual parameters in JSON format are following:

  • {"auto":"yes"} Capturing immediately after authorisation.
  • {"manual": {"final":"yes"} → Capturing made by the merchant for the Full Amount.
  • {"manual": {"final":"no"} → Capturing made by the merchant for the Partial Amount(s).

Neuer Parameter für mehrfache Teilbuchungen. Dieser Parameter muss im JSON-Format angelegt werden.

Die einzelnen Parameter im JSON-Format sind folgende:

  • {"auto":"yes"} Automatische Buchung nach Autorisierun
  • {"manual": {"final":"yes"} → Buchung durch den Händler für den vollen Betrag.
  • {"manual": {"final":"no"} → Buchung durch den Händler für den Teilbetrag/die Teilbeträge.

Table Excerpt Include
statictrue
nameURLSuccess
pageURLSuccess
typepage

Table Excerpt Include
statictrue
nameURLFailure
pageURLFailure
typepage

Table Excerpt Include
statictrue
nameResponse
pageResponse
typepage

Table Excerpt Include
statictrue
nameURLNotify
pageURLNotify
typepage

Table Excerpt Include
statictrue
namePlain
pagePlain
typepage

Table Excerpt Include
statictrue
nameCustom
pageCustom
typepage

Parameters for payments with PostFinance Pay


Multiexcerpt include
SpaceWithExcerptEN
MultiExcerptNameResponse_IntroURL
PageWithExcerptReuse API

Table Filter
defaultBeschreibung
isFirstTimeEnterfalse
hideColumnstrue
sparkNameSparkline
hidePanetrue
datepatterndd M yy
id

...

1718192145010_

...

744805983
worklog365|5|8|y w d h m|y w d h m
isORAND
separatorPoint (.)
order0
Multiexcerpt
MultiExcerptNamepostfinance_response
Table Transformer
dateFormatdd M yy
export-wordfalse
show-sourcefalse
export-csvfalse
id

...

1718192145012_

...

806193179
transposefalse
worklog365|5|8|y w d h m|y w d h m
separator.
export-pdffalse
sqlSELECT * FROM T*

Table Excerpt Include
statictrue
nameMID
pagemid
typepage

Table Excerpt Include
statictrue
namePayID
pagePayID
typepage

Table Excerpt Include
statictrue
nameXID
pageXID
typepage

Table Excerpt Include
statictrue
nameTransID
pageTransID
typepage

Table Excerpt Include
statictrue
nameStatus_OK_FAILED
pageStatus
typepage

Table Excerpt Include
statictrue
nameDescription
pageDescription
typepage

Table Excerpt Include
statictrue
nameCode
pageCode
typepage

Key

Format

CND

Description

Beschreibung

RefNr

ans..18

M

Merchant’s unique reference number. Only characters a-zA-Z0-9,-_ are allowed.

Note: Please consider response parameter PaymentPurpose.

Eindeutige Referenznummer des Händlers. Nur die Zeichen a-zA-Z0-9,-_ sind erlaubt.

Hinweis: Bitte beachten Sie den Antwortparameter PaymentPurpose.

Table Excerpt Include
statictrue
nameMAC
pageMAC
typepage

Table Excerpt Include
statictrue
nameUserData
pageUserData
typepage

Table Excerpt Include
statictrue
namePlain
pagePlain
typepage

Table Excerpt Include
statictrue
nameCustom
pageCustom
typepage

Return parameters for URLSuccess, URLFailure and URLNotify with PostFinance Pay


Important Note: 

When the customer uses the mobile app for authentication, there is a potential issue where the customer may get redirected before completing the authentication process. To handle this scenario, the following behavior has been implemented:

  1. Redirection After 60 Seconds:

    • If the customer has not completed the authentication process within 60 seconds, they will be automatically redirected to the success page.
    • The status on

...

    • the
      Multiexcerpt include
      SpaceWithExcerptEN
      MultiExcerptNamePlatform-Kurz
      PageWithExcerptWording
      will be set to AUTHORIZE_REQUEST, and the description will indicate pending.
    • This ensures the customer does not experience excessive waiting times and provides a clear indication of the current status.
  1. PostFinance Timeout:

    • If the customer does not finish the authentication steps on the mobile app, the system would normally keep the customer on the callback page for up to 8 minutes, which is the timeout period defined by PostFinance.
    • By redirecting the customer after 60 seconds, we prevent the customer from having to wait for the full 8 minutes, improving the user experience.
  2. Updating Open Payments:

    • Open payments with the status AUTHORIZE_REQUEST will be attempted to update every 30 minutes after the customer gets redirected.
    • This periodic update ensures that the payment status is kept current and any completed authentications are reflected in a timely manner.

Reversal

Authorisation reversals may be initiated, if the merchant has received a fault message during authorisation or did not receive a response after a certain period, so that it is not clear whether the authorisation has been successful. Authorisation cancelations may only be sent, if the affected transaction has not been submitted for capturing yet.Please be informed that partial reversals are not allowed, only the full amount of the transaction can be reversed. 

Reversals are possible via a Server-to-Server connection. In order to cancel a payment via a server-to-server communication, please use the following URL:

...

Multiexcerpt include
SpaceWithExcerptEN
MultiExcerptNameBaseURL
PageWithExcerptWording
reverse.aspx

 

...


Capture

Captures are possible via a Server-to-Server connection. To carry out a Capture via a Server-to-Server connection, please use the following URL:

Multiexcerpt include
SpaceWithExcerptEN
MultiExcerptNameBaseURL
PageWithExcerptWording
capture.aspx

 

Multiexcerpt include
SpaceWithExcerptEN
MultiExcerptNameRequest

...

_Intro
PageWithExcerptReuse API

Table Filter
defaultBeschreibung
isFirstTimeEnterfalse
hideColumnstrue
sparkNameSparkline
hidePanetrue
datepatterndd M yy
id

...

1718192276296_

...

2033217778
worklog365|5|8|y w d h m|y w d h m
isORAND
separatorPoint (.)
order0
Multiexcerpt
MultiExcerptName

...

capture_request
Table Transformer
dateFormatdd M yy
export-wordfalse
show-sourcefalse
export-csvfalse
id

...

1718192276298_

...

-1193667522
transposefalse
worklog365|5|8|y w d h m|y w d h m
separator.
export-pdffalse
sqlSELECT * FROM T*

Table Excerpt Include
statictrue
nameMerchantID
pageMerchantID
typepage

Table Excerpt Include
statictrue
namePayID_

...

Capture
pagePayID
typepage

Table Excerpt Include
statictrue
name

...

TransID
page

...

TransID
typepage

Table Excerpt Include
statictrue
name

...

MAC
page

...

MAC
typepage

Table Excerpt Include
statictrue
name

...

Amount
page

...

Amount
typepage

Table Excerpt Include
statictrue
name

...

Currency
page

...

Currency
typepage

Table Excerpt Include
statictrue
nameReqId-ans..32
pageReqId
typepage

...

Parameters for

...

captures with PostFinance Pay


Multiexcerpt include
SpaceWithExcerptEN
MultiExcerptNameResponse_Intro
PageWithExcerptReuse API

Table Filter
defaultBeschreibung
isFirstTimeEnterfalse
hideColumnstrue
sparkNameSparkline
hidePanetrue
datepatterndd M yy
id

...

1718192319413_

...

1171092275
worklog365|5|8|y w d h m|y w d h m
isORAND
separatorPoint (.)
order0
Multiexcerpt
MultiExcerptName

...

capture_response
Table Transformer
dateFormatdd M yy
export-wordfalse
show-sourcefalse
export-csvfalse
id

...

1718192319415_-

...

769758253
transposefalse
worklog365|5|8|y w d h m|y w d h m
separator.
export-pdffalse
sqlSELECT * FROM T*

Table Excerpt Include
statictrue
nameMID
pagemid
typepage

Table Excerpt Include
statictrue
namePayID
pagePayID
typepage

Table Excerpt Include
statictrue
nameXID
pageXID
typepage

Table Excerpt Include
statictrue
nameTransID
pageTransID
typepage

Table Excerpt Include
statictrue
nameStatus_OK_FAILED
pageStatus
typepage

Table Excerpt Include
statictrue
nameDescription
pageDescription
typepage

Table Excerpt Include
statictrue
nameCode
pageCode
typepage

Response parameters for

...

captures with PostFinance Pay

Capture

...


Credit with reference

Multiexcerpt include
SpaceWithExcerptEN
MultiExcerptNameCredit_Intro
PageWithExcerptReuse API

Multiexcerpt include
SpaceWithExcerptEN
MultiExcerptNameBaseURL
PageWithExcerptWording

...

credit.aspx

...


Multiexcerpt include
SpaceWithExcerptEN
MultiExcerptNameRequest_Intro
PageWithExcerptReuse API

Table Filter
defaultBeschreibung
isFirstTimeEnterfalse
hideColumnstrue
sparkNameSparkline
hidePanetrue
datepatterndd M yy
id

...

1718192885904_

...

1333684568
worklog365|5|8|y w d h m|y w d h m
isORAND
separatorPoint (.)
order0
Multiexcerpt
MultiExcerptName

...

credit_request
Table Transformer
dateFormatdd M yy
export-wordfalse
show-sourcefalse
export-csvfalse
id

...

1718192885907_-

...

2089309069
transposefalse
worklog365|5|8|y w d h m|y w d h m
separator.
export-pdffalse
sqlSELECT * FROM T*

Table Excerpt Include
statictrue
nameMerchantID
pageMerchantID
typepage

Table Excerpt Include
statictrue
namePayID_

...

Credit
pagePayID
typepage

Table Excerpt Include
statictrue
nameTransID
pageTransID
typepage

Table Excerpt Include
statictrue
name

...

Amount
page

...

Amount
typepage

Table Excerpt Include
statictrue
name

...

Currency
page

...

Currency
typepage

Table Excerpt Include
statictrue
name

...

MAC
page

...

MAC
typepage

Table Excerpt Include
statictrue
nameReqId-ans..32
pageReqId
typepage

Parameters for

...

credit payments with

...

PostFinance Pay


Multiexcerpt include
SpaceWithExcerptEN
MultiExcerptNameResponse_Intro
PageWithExcerptReuse API

Multiexcerpt
MultiExcerptNamecredit_response
table-

...

joiner

...

dateFormat

...

dd M yy
export-wordfalse

...

show-source

...

false

...

export-csv

...

false

...

id

...

1718192927163_1615373717

...

transpose

...

false

...

worklog365|5|8|y w d h m|y w d h m

...

separator

...

.

...

...

export-pdf

...

false

...

sqlSELECT * FROM T*

...

table-excerpt-

...

Include Page

...

static

...

true
nameMID
pagemid
typepage

Table Excerpt Include
statictrue
namePayID
pagePayID
typepage

...

Table Excerpt Include
statictrue
name

...

XID
page

...

XID
typepage

Table Excerpt Include
statictrue
name

...

TransID
page

...

TransID
typepage

Table Excerpt Include
statictrue
name

...

Status_OK_FAILED
page

...

Table Excerpt Include
statictrue
nameStatus_OK_FAILED
pageStatus
typepage

...

Status
typepage

Table Excerpt Include
statictrue
name

...

Description
pageDescription
typepage

Table Excerpt Include
statictrue
nameCode
pageCode
typepage

Response parameters for

...

credit payments with PostFinance Pay

Credit with reference

...


Reversal

Authorisation reversals may be initiated, if the merchant has received a fault message during authorisation or did not receive a response after a certain period, so that it is not clear whether the authorisation has been successful. Authorisation cancelations may only be sent, if the affected transaction has not been submitted for capturing yet. Please be informed that partial reversals are not allowed, only the full amount of the transaction can be reversed. 

Reversals are possible via a Server-to-Server connection. In order to cancel a payment via a server-to-server communication, please use the following URL:

...

Multiexcerpt include
SpaceWithExcerptEN
MultiExcerptNameBaseURL
PageWithExcerptWording

...

reverse.aspx

 

Multiexcerpt include
SpaceWithExcerptEN
MultiExcerptNameRequest_Intro
PageWithExcerptReuse API

Table Filter
defaultBeschreibung
isFirstTimeEnterfalse
hideColumnstrue
sparkNameSparkline
hidePanetrue
datepatterndd M yy
id

...

1716903915604_

...

-352620561
worklog365|5|8|y w d h m|y w d h m
isORAND
separatorPoint (.)
order0
Multiexcerpt
MultiExcerptName

...

reverse_request
Table Transformer
dateFormatdd M yy
export-wordfalse
show-sourcefalse
export-csvfalse
id

...

1716903915605_

...

1951031995
transposefalse
worklog365|5|8|y w d h m|y w d h m
separator.
export-pdffalse
sqlSELECT * FROM T*

Table Excerpt Include
statictrue
nameMerchantID
pageMerchantID
typepage

Table Excerpt Include
statictrue
namePayID_

...

Reverse
pagePayID
typepage

Table Excerpt Include
statictrue
nameAmount
pageAmount
typepage

Table Excerpt Include
statictrue
name

...

Currency
page

...

Currency
typepage

Table Excerpt Include
statictrue
name

...

TransID
page

...

TransID
typepage

Table Excerpt Include
statictrue
name

...

MAC
page

...

MAC
typepage

Table Excerpt Include
statictrue
name

...

UserData
page

...

UserData
typepage

Table Excerpt Include
statictrue
nameReqId-ans..32
pageReqId
typepage

...

Parameters for credit payments with PostFinance Pay

...

Parameters for reversals with PostFinance Pay


Multiexcerpt include
SpaceWithExcerptEN
MultiExcerptNameResponse_Intro
PageWithExcerptReuse API

Table Filter
defaultBeschreibung
isFirstTimeEnterfalse
hideColumnstrue
sparkNameSparkline
hidePanetrue
datepatterndd M yy
id1718193046395_206908025
worklog365|5|8|y w d h m|y w d h m
isORAND
separatorPoint (.)
order0

...

Multiexcerpt
MultiExcerptName

...

reverse_response
Table Transformer
dateFormatdd M yy
export-wordfalse
show-sourcefalse
export-csvfalse
id

...

1718193046396_-

...

1258612544
transposefalse
worklog365|5|8|y w d h m|y w d h m
separator.
export-pdffalse
sqlSELECT * FROM T*

Table Excerpt Include
statictrue
nameMID
pagemid
typepage

Table Excerpt Include
statictrue
namePayID
pagePayID
typepage

Table Excerpt Include
statictrue
nameXID
pageXID
typepage

Table Excerpt Include
statictrue
nameTransID
pageTransID
typepage

Table Excerpt Include
statictrue
nameStatus_OK_FAILED
pageStatus
typepage

Table Excerpt Include
statictrue
nameDescription
pageDescription
typepage

Table Excerpt Include
statictrue
nameCode
pageCode
typepage

Response parameters for

...

reversals with PostFinance Pay