# Recurring sale using card on file Use our recurring sale resource to authorize and settle merchant initiated transactions where you have stored the card details. You must verify your customer's account before submitting your first recurring payment for authorization. Endpoint: POST /payments/sales/recurring/{linkData} Version: 5 Security: BasicAuth ## Path parameters: - `linkData` (string, required) Action link that's received in your request ## Header parameters: - `Content-Type` (string, required) Example: "application/vnd.worldpay.payments-v5+json" - `Accept` (string) Example: "application/vnd.worldpay.payments-v5.hal+json" ## Request fields (application/vnd.worldpay.payments-v5+json): - `transactionReference` (string, required) - `merchant` (object, required) - `merchant.entity` (string, required) - `merchant.mcc` (string) - `merchant.paymentFacilitator` (object) - `merchant.paymentFacilitator.pfId` (string, required) - `merchant.paymentFacilitator.subMerchant` (object, required) - `merchant.paymentFacilitator.subMerchant.city` (string, required) - `merchant.paymentFacilitator.subMerchant.name` (string, required) - `merchant.paymentFacilitator.subMerchant.postalCode` (string, required) - `merchant.paymentFacilitator.subMerchant.merchantId` (string, required) - `merchant.paymentFacilitator.subMerchant.countryCode` (string, required) - `merchant.paymentFacilitator.subMerchant.street` (string, required) - `merchant.paymentFacilitator.subMerchant.state` (string) - `merchant.paymentFacilitator.subMerchant.taxId` (string) - `merchant.paymentFacilitator.isoId` (string) - `instruction` (object, required) - `instruction.value` (object, required) - `instruction.value.amount` (integer, required) - `instruction.value.currency` (string, required) - `instruction.narrative` (object, required) - `instruction.narrative.line1` (string, required) - `instruction.narrative.line2` (string) - `instruction.paymentInstrument` (any, required) - `instruction.debtRepayment` (boolean) ## Response 201 fields (application/vnd.worldpay.payments-v5.hal+json): - `outcome` (string, required) - `issuer` (object) - `issuer.authorizationCode` (string, required) - `paymentInstrument` (object) - `paymentInstrument.type` (string) - `paymentInstrument.card` (object) - `paymentInstrument.card.number` (object) - `paymentInstrument.card.number.bin` (string) - `paymentInstrument.card.number.last4Digits` (string) - `paymentInstrument.card.number.dpan` (string) - `paymentInstrument.card.paymentAccountReference` (string) - `paymentInstrument.card.countryCode` (string) - `paymentInstrument.card.fundingType` (string) - `paymentInstrument.card.brand` (string) - `paymentInstrument.card.expiryDate` (object) - `paymentInstrument.card.expiryDate.month` (integer) - `paymentInstrument.card.expiryDate.year` (integer) - `riskFactors` (array) Any risk factors which have been identified for the authorization. This section will not appear if no risks are identified. - `riskFactors.risk` (string, required) Enum: "not_checked", "not_matched", "not_supplied" - `riskFactors.detail` (string) Enum: "address", "postcode" - `scheme` (object) - `scheme.reference` (string, required)