The PostFinance E-Payment uses basic HTTP response codes to indicate the resulting status of each request. In general response codes in the 2xx range mean your request was handled successfully, 4xx mean that we could not process you request either due to the request itself not being correct or the transaction being rejected and 5xx means something went amiss in our system.
The following HTTP response codes are used by the PostFinance E-Payment API:
|200||Successful||Your request was processed correctly.|
|201||Created|| Your request was processed correctly and a new resource was created.
The URI of this created resource is returned in the Location header of the response.
|400||Bad Request|| Your request is not correct and can’t be processed.
Please correct the mistake and try again.
|402||Payment Rejected|| Your request was rejected either by us
or one of our downstream partners/acquirers.
|403||Not authorized||You’re trying to do something that is not allowed or that you’re not authorized to do.|
|404||Not found||The object you were trying to access could not be found on the server.|
|409||Conflict|| Your request resulted in a conflict.
Either you submitted a duplicate request or
you’re trying to create something with a duplicate key.
|410||Gone||The object that you are trying to reach has been removed.|
|500||Internal Server Error||Something went wrong on our end.|
|502||Bad Gateway||We were unable to process a message from a downstream partner/acquirer.|
|503||Service Unavailable|| The service that you’re trying to reach is temporary unavailable.
Please try again later.
For every 4xx and 5xx response an errorId and an array of errors is returned providing detailed error information.
The array can return multiple errors at once and can hold the following elements:
|Code|| The ID of the error returned.
|propertyName|| Returned only if the error relates to a value that was missing or incorrect.
Contains a location path to the value as a JSonata query.
Some common examples:
|Date||Formatted Timestamp of the request|
|Message|| A human-readable description of the error.
Note that this message is not meant to be relayed directly to your consumer as this may
contain information that can be abused by people looking to commit fraud.
For each of the 4xx we will return the object in question of the original request as this usually holds additional information such as the status of the object. In case the acquirer rejects an authorization request we will return a 402 response code with both the error and the payment objects in the response.
As the PostFinance payment systems are constantly being expanded upon, you should handle any unknown HTTP response code and/or any unknown error code gracefully.