---
title: "Record a selection the customer completes at the merchant"
method: POST
path: "/v1/handoff"
tags: ["Checkout"]
---

# Record a selection the customer completes at the merchant

`POST /v1/handoff`

## Request body

- object
  - `selection` object[], required — The chosen Product Versions — at most one per energy type.
    - `energyType` 'ELECTRICITY' | 'GAS', required
    - `productVersionId` string, uuid, required
  - `context` object, required
    - `meterType` 'Digital' | 'Analog', nullable
    - `currentMerchants` object
      - `electricity` string, nullable
      - `gas` string, nullable
  - `intake` object, required — What the comparison was run against. Re-priced server-side at submit and snapshotted onto each Submission.
    - `supplyPoint` object, required
      - `postalCode` string, required
      - `city` string, required
      - `residential` boolean
      - `meterType` 'Digital' | 'Analog', nullable
      - `tariffType` 'enkelvoudig' | 'tweevoudig' | 'nachtmeter', nullable
    - `consumption` object
      - `electricity` object, nullable
        - `consumptionTotalKwh` number, required
        - `consumptionDayKwh` number, nullable
        - `consumptionNightKwh` number, nullable
        - `injectionTotalKwh` number, nullable
        - `injectionDayKwh` number, nullable
        - `injectionNightKwh` number, nullable
        - `peakConsumptionKw` number, nullable
      - `gas` object, nullable
        - `consumptionTotalKwh` number, required
    - `referenceCost` object — The customer's current yearly cost per fuel. Savings can only be computed for a fuel this is supplied for.
      - `electricity` object, nullable
        - `yearlyInclVat` number, nullable
        - `currentMerchant` string, nullable
        - `currentProduct` string, nullable
      - `gas` object, nullable
        - `yearlyInclVat` number, nullable
        - `currentMerchant` string, nullable
        - `currentProduct` string, nullable

## Response `201`

Default Response

- SubmittedCheckout
  - `checkoutId` string, uuid, required — Groups the Submissions this request wrote — one per energy type. Quote it when asking Vwala about the switch.
  - `submissionIds` string[], required — One Submission per energy type, in the order they were recorded.

## Other responses

- `400` — Default Response
- `401` — Default Response
- `403` — Default Response
- `422` — Default Response
- `5XX` — Default Response

## Changes

- **2026-08-18** `0faefa545909` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/vwala/apis/energy-platform-api/changes/v1/handoff/post.md)

---

[API](https://skmtc.dev/vwala/apis/energy-platform-api.md) · [All operations](https://skmtc.dev/vwala/apis/energy-platform-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/vwala/energy-platform-api/revisions/86688c4fea92/schema)
