---
title: "Save and pay for a quote (V2)"
method: POST
path: "/v2/purchase"
tags: ["Purchase", "Quote & Save V2"]
---

# Save and pay for a quote (V2)

`POST /v2/purchase`

Saves and pays for a policy. This endpoint calls the backend /v2/quote/saveAndPay endpoint. Note: if address information doesn`t given in the create quote flow endpoint, then its need to be given now in this endpoint

## Headers

- `Authorization` string

## Request body

- SaveAndPayDtoV2
  - `paymentInfo` PaymentInfoDtoV2, required
    - `quoteId` number
    - `paymentToken` string
    - `paymentIntent` string
    - `paymentMethod` string
    - `customer` string
    - `paymentIp` string
    - `paymentMethodNonce` string
    - `paymentService` 'stripe' | 'checkOut', required — Payment service - required field
    - `useVoucher` boolean — Whether to use voucher, defaults to false if not provided
    - `purchasePaymentType` 'full' | 'deposit'
    - `validateIntentAmount` boolean
    - `companyId` number
  - `address` ResidencyDtoV2
    - `country` string, nullable — Country code (ISO 3166-1 alpha-2)
    - `areaLevel1` string, nullable — State or province code (mandatory in residency)
    - `locality` string, nullable — City or locality
    - `label` string, nullable — Human-readable label for the place
    - `googleId` string, nullable — Google Place ID
    - `fullCountryName` string, nullable — Full country name
    - `streetAndNumber` string, nullable — Street address and number
    - `city` string, nullable — City
    - `apartment` string, nullable — Apartment or unit number
    - `zipCode` string, nullable — ZIP or postal code
  - `policyCodeHash` string, required — Policy code hash (quote hash)
  - `osInfoDto` OsInfoDtoV2
    - `customerTZ` string, required
    - `operationSystem` string, required
    - `osVersion` string, required

## Response `201`

The purchase has been completed.

- PurchasePolicyDto
  - `purchaseId` string, required — Policy ID of all travelers
  - `plans` PolicyholderDto[] — An object of a policy ID for each traveler.
    - `name` string, required — Policyholder Name
    - `planId` string, required — Policy Number
  - `totalPrice` number, required — The price that was charged
  - `paymentIntent` string — Payment intent token of the purchase
  - `policyUrl` string — URL to download the policy
  - `receiptUrl` string — URL to download the receipt

## Other responses

- `400` — Purchase request cannot be processed
- `402` — Payment failed

---

[API](https://skmtc.net/withfaye/apis/faye-partner-sales-api.md) · [All operations](https://skmtc.net/withfaye/apis/faye-partner-sales-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/withfaye/faye-partner-sales-api/revisions/e016afb8fdb3/schema)
