verifyReceipt method

Future<VerifyReceiptResponse> verifyReceipt({
  1. required String password,
  2. required String receiptData,
  3. bool excludeOldTransactions = true,
})

Send a receipt to the App Store for verification.

Param: password - Your app’s shared secret, which is a hexadecimal string. For more information about the shared secret, see Generate a Receipt Validation Code.

Param: receipt-data - The Base64-encoded receipt data.

Param: exclude-old-transactions - Set this value to true for the response to include only the latest renewal transaction for any subscriptions. Use this field only for app receipts that contain auto-renewable subscriptions.

Implementation

Future<VerifyReceiptResponse> verifyReceipt({
  required String password,
  required String receiptData,
  bool excludeOldTransactions = true,
}) async {
  var request = VerifyReceiptRequest(
      password: password,
      receiptData: receiptData,
      excludeOldTransactions: excludeOldTransactions);

  var url = _iTunesHttpClient.getUrl('/verifyReceipt');

  var response =
      await _iTunesHttpClient.post(url, body: jsonEncode(request.toJson()));

  return VerifyReceiptResponse.fromJson(jsonDecode(response.body));
}