On-Site Testing
General approach:
Test your business process end-to-end as far as needed to cover the entire payment process (creation of a transaction, authorisation, perhaps explicit capture, and push notifications).
Focus on integration between your application and our API.
Initially, address only our test system.
Watch and check the API requests and responses.
Vary the test data to cover different equivalence classes.
Also test whether your software handles exceptional situations gracefully (negative tests).
Coverage instructions:
Test all payment methods at minimum once from beginning to end.
Test credit card payment with and without 3-D Secure (> 30 €).
Test failed PayPal authorisation, and failed Sofort payment.
Test with baskets with multiple items at minimum once. This can reveal calculation problems. Test likewise with items having a quantity other than one.
Test with shipping to the same and to a different address at minimum once.
Test guest order, order with registration and after login, if your application allows this; each at minimum once. These cases require different ways to handle Payment Customer and Payment Container objects.
Test express checkout for credit card payment and SEPA direct debit, if your application allows this.
Test with a minimal address. We expect first and last name, street and house number, ZIP code and city, country and email address.
Test with a complete address. We also accept company name, an individual's date of birth (for scoring), additional address line, phone numbers, etc.
Test with unusual data, that could be sent to our API. This may provoke exceptional situations that your application needs to handle.
Test whether shipping can be reported.
Test whether transactions can be cancelled fully or partially, if this is part of your implementation. Please note that partial cancellations are executed as full cancellation, if it is a demo transaction
Test whether your software processes the needed push notifications.
Testing instructions:
Check for proper transaction mode (demo or not).
Check for proper intent.
Check the status flow of the transaction. Does it match the process flow?
Check the other data (basket, customer, shipping address, amounts) to be proper.
Check whether your application responds proper in the ordinary case, but also in exceptional cases. For instance should a failed payment cause the payment process to repeat.
Check whether your application saves the received object IDs and data properly.