<!-- canonical: https://docs.costplus.io/docs/payment-methods/vipps-mobilepay -->

> Accept Vipps and MobilePay mobile payments
Vipps (Norway) and MobilePay (Denmark/Finland) are popular Nordic mobile payment methods, now unified under one integration.

## Configuration

| Setting | Value |
|---------|-------|
| `payment_method` | `"vipps-mobilepay"` |

## Creating an Order

```json title="POST /v1/orders/"
{
  "merchant_order_id": "order-456",
  "currency": "NOK",
  "amount": 29900,
  "return_url": "https://www.example.com",
  "webhook_url": "https://www.example.com/webhook",
  "transactions": [
    {
      "payment_method": "vipps-mobilepay"
    }
  ],
  "customer": {
    "phone_numbers": ["+4712345678"]
  }
}
```

> [!TIP]
> Include `phone_numbers` in the `customer` object to pre-fill the customer's phone number in the Vipps/MobilePay app, reducing friction.

## Authorization & Capture

Vipps/MobilePay supports **manual authorization** with separate capture:

```json title="POST /v1/orders/ (with authorization)"
{
  "currency": "NOK",
  "amount": 29900,
  "capture_mode": "manual",
  "return_url": "https://www.example.com",
  "webhook_url": "https://www.example.com/webhook",
  "transactions": [
    {
      "payment_method": "vipps-mobilepay"
    }
  ]
}
```

### Capture Options

After authorization, capture using any of these methods:

| Endpoint | Description |
|----------|-------------|
| `POST /v1/orders/\{id\}/captures/` | Full capture |
| `POST /v1/orders/\{id\}/captures/amount/` | Capture specific amount |
| `POST /v1/orders/\{id\}/captures/orderlines/` | Capture by order line |

## Refunds

Refund a Vipps/MobilePay payment:

```json title="POST /v1/orders/\{id\}/refunds/"
{
  "amount": 10000,
  "description": "Partial refund"
}
```

## Testing

Vipps/MobilePay testing is done via the Vipps test environment. Contact support for test credentials and environment setup.

> [!TIP]
> For more details on capture and void operations, see the [Auth / Capture / Void](/docs/guides/auth-capture-void) guide. For refund processing details, see [Refunds](/docs/guides/refunds).
