> **Description:** Integration options, payment operations, API guidelines, and best practices for implementing Vipps MobilePay payments.

# Integration and testing

This section covers everything you need to build and test your Vipps MobilePay integration: testing setup, integration options, payment operations, API guidelines, and best practices.

## Testing setup

Get your test environment ready before building:

* **[Test environment](https://developer.vippsmobilepay.com/docs/knowledge-base/test-environment.md)** - Access the Merchant Test (MT) environment, download test apps, and understand testing limitations and capabilities.
* **[API keys](https://developer.vippsmobilepay.com/docs/knowledge-base/api-keys.md)** - Get your merchant API keys from the business portal for both test and production environments.
* **[Authentication](https://developer.vippsmobilepay.com/docs/knowledge-base/authentication.md)** - Learn how authentication works and which method applies to your integration.
* **[API servers](https://developer.vippsmobilepay.com/docs/knowledge-base/servers.md)** - Find the correct server URLs for test and production environments across all APIs.

## Integration options

Choose the right integration approach for your business:

* **[Point of Sale integrations](https://developer.vippsmobilepay.com/docs/knowledge-base/pos-integrations.md)** - Learn about integrating payments in physical stores.
* **[Third-party integrations](https://developer.vippsmobilepay.com/docs/knowledge-base/third-party-integrations.md)** - Explore partner solutions and platforms.

## Payment basics

Understand the fundamentals of how payments work:

* **[Payment overview](https://developer.vippsmobilepay.com/docs/knowledge-base/payments.md)** - Get a comprehensive overview of payment flows and user experience.
* **[Payment rules](https://developer.vippsmobilepay.com/docs/knowledge-base/payment-rules.md)** - Learn about important payment rules and restrictions.
* **[Payment scenarios](https://developer.vippsmobilepay.com/docs/knowledge-base/payment-scenarios.md)** - Explore common payment use cases and implementations.
* **[Landing page](https://developer.vippsmobilepay.com/docs/knowledge-base/landing-page.md)** - Understand the landing page experience for users.
* **[Webhooks](https://developer.vippsmobilepay.com/docs/knowledge-base/webhooks.md)** - Set up event notifications for payment status updates.
* **[QR codes](https://developer.vippsmobilepay.com/docs/knowledge-base/qr-code.md)** - Implement QR code-based payments.
* **[User data and privacy](https://developer.vippsmobilepay.com/docs/knowledge-base/user-data-privacy.md)** - Learn about handling user data responsibly.
* **[Terminology](https://developer.vippsmobilepay.com/docs/knowledge-base/terminology.md)** - Familiarize yourself with key terms and concepts.

## Payment operations

Learn how to perform key payment operations:

* **[Initiate payment](https://developer.vippsmobilepay.com/docs/knowledge-base/initiate-payment.md)** - Start a payment transaction.
* **[Reserve and capture](https://developer.vippsmobilepay.com/docs/knowledge-base/reserve-and-capture.md)** - Understand two-step payment processing.
* **[Cancel](https://developer.vippsmobilepay.com/docs/knowledge-base/cancel.md)** - Cancel reserved or pending payments.
* **[Refund](https://developer.vippsmobilepay.com/docs/knowledge-base/refund.md)** - Process customer refunds.
* **[Error handling](https://developer.vippsmobilepay.com/docs/knowledge-base/errors.md)** - Handle errors and troubleshoot issues.

## API guidelines

Follow best practices when working with our APIs:

* **[Polling guidelines](https://developer.vippsmobilepay.com/docs/knowledge-base/polling-guidelines.md)** - Learn how to poll our APIs efficiently.
* **[Timeouts](https://developer.vippsmobilepay.com/docs/knowledge-base/timeouts.md)** - Understand timeout requirements and handling.
* **[HTTP headers](https://developer.vippsmobilepay.com/docs/knowledge-base/http-headers.md)** - Use required and recommended HTTP headers.
* **[Order ID](https://developer.vippsmobilepay.com/docs/knowledge-base/orderid.md)** - Format and use order identifiers correctly.
* **[Transaction text](https://developer.vippsmobilepay.com/docs/knowledge-base/transactiontext.md)** - Provide clear transaction descriptions.
* **[URL validation](https://developer.vippsmobilepay.com/docs/knowledge-base/url-validation.md)** - Ensure your callback URLs are properly formatted.

## App handling

Optimize the user experience between your platform and the Vipps MobilePay app:

* **[App flow](https://developer.vippsmobilepay.com/docs/knowledge-base/app-flow.md)** - Understand how users switch between your platform and the app.
* **[Redirects](https://developer.vippsmobilepay.com/docs/knowledge-base/redirects.md)** - Implement smooth redirect experiences.

**Want a ready-made payment button?**

The [Widget SDK](https://developer.vippsmobilepay.com/docs/knowledge-base/widget.md) wraps this behavior in a payment button.
On mobile, it redirects to the payment so the app-switch works as described above.
On desktop it can show the payment in a dialog instead.

## Need help?

If you have questions or need assistance with payment implementation, visit our [contact page](https://developer.vippsmobilepay.com/docs/contact.md) or check the [status pages](https://developer.vippsmobilepay.com/docs/knowledge-base/status-pages.md) for service updates.

> **Full site overview:** For every page in this documentation, read [https://developer.vippsmobilepay.com/llms.txt](https://developer.vippsmobilepay.com/llms.txt).
