---
title: "Apple Pay"
method: POST
path: "/payments/apple-pay"
tags: ["Payments"]
---

# Apple Pay

`POST /payments/apple-pay`

When the user selects the Apple Pay button a payment request will be created and an encrypted payload will be returned to us.

## Headers

- `Company-Id` string, uuid
- `Mid` string, uuid

## Request body

- object
  - `transaction` object
    - `order_id` string, required — Unique reference assigned by you for the payment request.
    - `amount` number, float, required — The total amount you want to charge.
    - `currency` 'aed' | 'aud' | 'cad' | 'chf' | 'cny' | 'dkk' | 'eur' | 'gbp' | 'hkd' | 'jpy' | 'mxn' | 'sek' | 'usd' | 'zar', required — ISO 4217 currency code in lower case.
    - `capture` boolean — Set to false if you want to just authorise and request a funds transfer later. If capture is set to true, the `transaction_type` will be `sale`.
    - `custom_data` string — Base64 encoded string detailing custom data passed in the request.
    - `custom1` string — Send additional data relating to the customer or another internal reference.
    - `custom2` string — Send additional data relating to the customer or another internal reference.
  - `payment` DigitalWallet
    - `token` string, required — Encrypted payload returned at the end of the payment process in base64 format.
    - `scheme` 'visa' | 'mastercard' | 'amex' — The scheme the card belongs to.
    - `type` 'charge' | 'credit' | 'debit' | 'deferred_debit' | 'prepaid' — The type of card.
    - `display_name` string — The last four digits of the card number, that will be displayed to the customer as the card used for the payment.
    - `create_card` boolean — Set to true to create a card for future use.
    - `reference` string — Where supported by the acquiring bank set the reference, to appear on the card holders bank statement.
    - `custom_data` string — Base64 encoded string detailing custom data passed in the request.
  - `customer` CustomerRequest
    - `customer_id` string, uuid — Unique ID assigned by Acquired.com to the customer when it is created.
    - `reference` string — Unique reference assigned by you for the customer when it is created.
    - `first_name` string — The customer's first name.
    - `last_name` string — The customer's last name. **Required for MCC 6012 merchants.**
    - `dob` string, date — The customer's date of birth. **Required for MCC 6012 merchants.**
    - `custom_data` string — Base64 encoded string detailing custom data passed in the request.
    - `billing` object
      - `address` Address
        - `line_1` string — The first line of the customer's address. **Recommended when processing EMV 3DS transactions and for AVS checks.**
        - `line_2` string — The second line of the customer's address.
        - `city` string — The city of the customer's address.
        - `state` string — The 3 letter ISO 3166-2 3-character state code of the customer's address. This should only be sent when processing in the US.
        - `postcode` string — The postcode of the customer's address. **Recommended for MCC 6012 merchants. Required when processing EMV 3DS transactions and for AVS checks.**
        - `country_code` 'al' | 'al' | 'dz' | 'as' | 'ad' | 'ao' | 'ai' | 'aq' | 'ag' | 'ar' | 'am' | 'aw' | 'au' | 'at' | 'az' | 'bs' | 'bh' | 'bd' | 'bb' | 'by' | 'be' | 'bz' | 'bj' | 'bm' | 'bt' | 'bo' | 'ba' | 'bw' | 'br' | 'io' | 'bn' | 'bg' | 'bf' | 'bi' | 'cv' | 'kh' | 'cm' | 'ca' | 'ky' | 'cf' | 'td' | 'cl' | 'cn' | 'co' | 'km' | 'cg' | 'cd' | 'cr' | 'hr' | 'cu' | 'cy' | 'cz' | 'dk' | 'dj' | 'dm' | 'do' | 'ec' | 'eg' | 'sv' | 'gq' | 'er' | 'ee' | 'sz' | 'et' | 'fk' | 'fo' | 'fj' | 'fi' | 'fr' | 'gf' | 'pf' | 'ga' | 'gm' | 'ge' | 'de' | 'gh' | 'gi' | 'gr' | 'gl' | 'gd' | 'gu' | 'gt' | 'gg' | 'gn' | 'gw' | 'gy' | 'ht' | 'hn' | 'hk' | 'hu' | 'is' | 'in' | 'id' | 'ir' | 'iq' | 'ie' | 'im' | 'il' | 'it' | 'jm' | 'jp' | 'je' | 'jo' | 'kz' | 'ke' | 'ki' | 'kp' | 'kr' | 'kw' | 'kg' | 'la' | 'lv' | 'lb' | 'ls' | 'lr' | 'ly' | 'li' | 'lt' | 'lu' | 'mo' | 'mk' | 'mg' | 'mw' | 'my' | 'mv' | 'ml' | 'mt' | 'mh' | 'mq' | 'mr' | 'mu' | 'yt' | 'mx' | 'fm' | 'md' | 'mc' | 'mn' | 'me' | 'ms' | 'ma' | 'mz' | 'mm' | 'na' | 'nr' | 'np' | 'nl' | 'nc' | 'nz' | 'ni' | 'ne' | 'ng' | 'nu' | 'nf' | 'mp' | 'no' | 'om' | 'pk' | 'pw' | 'ps' | 'pa' | 'pg' | 'py' | 'pe' | 'ph' | 'pl' | 'pt' | 'pr' | 'qa' | 'ro' | 'ru' | 'rw' | 're' | 'bl' | 'sh' | 'kn' | 'lc' | 'mf' | 'pm' | 'vc' | 'ws' | 'sm' | 'st' | 'sa' | 'sn' | 'rs' | 'sc' | 'sl' | 'sg' | 'sx' | 'sk' | 'si' | 'sb' | 'so' | 'za' | 'gs' | 'ss' | 'es' | 'lk' | 'sd' | 'sr' | 'se' | 'ch' | 'sx' | 'sy' | 'tw' | 'tj' | 'tz' | 'th' | 'tg' | 'tk' | 'to' | 'tt' | 'tn' | 'tr' | 'tm' | 'tc' | 'tv' | 'ug' | 'ua' | 'ae' | 'gb' | 'us' | 'uy' | 'uz' | 'vu' | 've' | 'vn' | 'vg' | 'vi' | 'wf' | 'eh' | 'ye' | 'zm' | 'zw' — The ISO 3166 2-character code of the customer's address. **Recommended when processing EMV 3DS transactions.**
      - `email` string, email — The customer's email address. **Recommended for processing EMV 3DS transactions.**
      - `phone` Phone
        - `country_code` string — The international dialling code of the customer's phone number.
        - `number` string — The customer's phone number.
    - `shipping` object
      - `address_match` boolean — Set to true if the customer's billing and shipping address are the same to auto populate.
      - `address` Address
        - `line_1` string — The first line of the customer's address. **Recommended when processing EMV 3DS transactions and for AVS checks.**
        - `line_2` string — The second line of the customer's address.
        - `city` string — The city of the customer's address.
        - `state` string — The 3 letter ISO 3166-2 3-character state code of the customer's address. This should only be sent when processing in the US.
        - `postcode` string — The postcode of the customer's address. **Recommended for MCC 6012 merchants. Required when processing EMV 3DS transactions and for AVS checks.**
        - `country_code` 'al' | 'al' | 'dz' | 'as' | 'ad' | 'ao' | 'ai' | 'aq' | 'ag' | 'ar' | 'am' | 'aw' | 'au' | 'at' | 'az' | 'bs' | 'bh' | 'bd' | 'bb' | 'by' | 'be' | 'bz' | 'bj' | 'bm' | 'bt' | 'bo' | 'ba' | 'bw' | 'br' | 'io' | 'bn' | 'bg' | 'bf' | 'bi' | 'cv' | 'kh' | 'cm' | 'ca' | 'ky' | 'cf' | 'td' | 'cl' | 'cn' | 'co' | 'km' | 'cg' | 'cd' | 'cr' | 'hr' | 'cu' | 'cy' | 'cz' | 'dk' | 'dj' | 'dm' | 'do' | 'ec' | 'eg' | 'sv' | 'gq' | 'er' | 'ee' | 'sz' | 'et' | 'fk' | 'fo' | 'fj' | 'fi' | 'fr' | 'gf' | 'pf' | 'ga' | 'gm' | 'ge' | 'de' | 'gh' | 'gi' | 'gr' | 'gl' | 'gd' | 'gu' | 'gt' | 'gg' | 'gn' | 'gw' | 'gy' | 'ht' | 'hn' | 'hk' | 'hu' | 'is' | 'in' | 'id' | 'ir' | 'iq' | 'ie' | 'im' | 'il' | 'it' | 'jm' | 'jp' | 'je' | 'jo' | 'kz' | 'ke' | 'ki' | 'kp' | 'kr' | 'kw' | 'kg' | 'la' | 'lv' | 'lb' | 'ls' | 'lr' | 'ly' | 'li' | 'lt' | 'lu' | 'mo' | 'mk' | 'mg' | 'mw' | 'my' | 'mv' | 'ml' | 'mt' | 'mh' | 'mq' | 'mr' | 'mu' | 'yt' | 'mx' | 'fm' | 'md' | 'mc' | 'mn' | 'me' | 'ms' | 'ma' | 'mz' | 'mm' | 'na' | 'nr' | 'np' | 'nl' | 'nc' | 'nz' | 'ni' | 'ne' | 'ng' | 'nu' | 'nf' | 'mp' | 'no' | 'om' | 'pk' | 'pw' | 'ps' | 'pa' | 'pg' | 'py' | 'pe' | 'ph' | 'pl' | 'pt' | 'pr' | 'qa' | 'ro' | 'ru' | 'rw' | 're' | 'bl' | 'sh' | 'kn' | 'lc' | 'mf' | 'pm' | 'vc' | 'ws' | 'sm' | 'st' | 'sa' | 'sn' | 'rs' | 'sc' | 'sl' | 'sg' | 'sx' | 'sk' | 'si' | 'sb' | 'so' | 'za' | 'gs' | 'ss' | 'es' | 'lk' | 'sd' | 'sr' | 'se' | 'ch' | 'sx' | 'sy' | 'tw' | 'tj' | 'tz' | 'th' | 'tg' | 'tk' | 'to' | 'tt' | 'tn' | 'tr' | 'tm' | 'tc' | 'tv' | 'ug' | 'ua' | 'ae' | 'gb' | 'us' | 'uy' | 'uz' | 'vu' | 've' | 'vn' | 'vg' | 'vi' | 'wf' | 'eh' | 'ye' | 'zm' | 'zw' — The ISO 3166 2-character code of the customer's address. **Recommended when processing EMV 3DS transactions.**
      - `email` string, email — The customer's email address.
      - `phone` Phone
        - `country_code` string — The international dialling code of the customer's phone number.
        - `number` string — The customer's phone number.

## Response `201`

Created

- object
  - `transaction_id` string, uuid — Unique identifier assigned by Acquired.com for the transaction.
  - `status` 'success' | 'declined' | 'blocked'
  - `reason` '6012_data' | 'above_max_amount' | 'above_max_refund_amount' | 'above_max_transactions' | 'acs_technical_issue' | 'bad_gateway' | 'below_min_amount' | 'below_min_refund_amount' | 'bin_bank' | 'bin_country' | 'bin_level' | 'bin_product' | 'bin_scheme' | 'blocklist_bin' | 'blocklist_card' | 'blocklist_email' | 'blocklist_ip' | 'blocklist_phone' | 'card_authentication_failed' | 'card_not_active' | 'cardholder_cancellation' | 'cardholder_cancelled' | 'challenge_failed' | 'challenge_limit_exceeded' | 'challenge_not_completed' | 'challenge_time_out' | 'closed_account' | 'exceeds_authentication_frequency_limit' | 'exceeds_max_amount' | 'exceeds_max_refund_amount' | 'exceeds_max_transactions' | 'expired_card' | 'fraud_scoring' | 'fraud_scoring_error' | 'generic_decline' | 'insufficient_funds' | 'invalid_avs' | 'invalid_card_number' | 'invalid_cvv' | 'invalid_pin' | 'invalid_transaction' | 'low_confidence' | 'lost_or_stolen' | 'max_amount_day' | 'max_amount_month' | 'max_card_attempts' | 'max_card_success' | 'max_daily_refunds_amount' | 'max_daily_refunds_count' | 'max_email_day' | 'max_email_month' | 'max_ip_day' | 'max_ip_month' | 'max_monthly_refunds_amount' | 'max_monthly_refunds_count' | 'max_phone_day' | 'max_phone_month' | 'max_post_day' | 'max_post_month' | 'max_refunds_count' | 'medium_confidence' | 'no_card_record' | 'restricted_card' | 'scheme_status_reason' | 'security_failure' | 'suspected_fraud' | 'transaction_disputed' | 'transaction_fraud' | 'transaction_not_permitted_to_cardholder'
  - `issuer_response_code` '00' | '01' | '02' | '03' | '04' | '05' | '06' | '07' | '08' | '09' | '10' | '11' | '12' | '13' | '14' | '15' | '16' | '17' | '18' | '19' | '20' | '21' | '22' | '23' | '24' | '25' | '26' | '27' | '28' | '29' | '30' | '31' | '32' | '33' | '34' | '35' | '36' | '37' | '38' | '39' | '40' | '41' | '42' | '43' | '44' | '51' | '52' | '53' | '54' | '55' | '56' | '57' | '59' | '60' | '61' | '62' | '63' | '64' | '65' | '66' | '67' | '68' | '75' | '76' | '77' | '80' | '81' | '82' | '83' | '84' | '85' | '86' | '87' | '88' | '89' | '90' | '91' | '92' | '93' | '94' | '95' | '96' | '97' | '98' | '99' | 'N0' | 'N3' | 'N4' | 'N7' | 'P5' | 'P6' | 'XA' | 'XD'
  - `check` object
    - `avs_line1` 'matched' | 'not_matched' | 'not_checked' | 'not_provided'
    - `avs_postcode` 'matched' | 'not_matched' | 'not_checked' | 'not_provided'
    - `cvv` 'matched' | 'not_matched' | 'not_checked' | 'not_provided'
  - `retry_advice` RetryAdvice, nullable — Canonical retry advice derived from the acquirer's Advice Code. Present when enabled on your merchant account (contact the support team to enable); null when no advice was returned by the acquirer.
    - `category` 'update_credentials' | 'retry_later' | 'do_not_retry' | 'token_requirements_not_met' | 'cancelled' | 'not_eligible' | 'scheme_blocked' | 'card_product_limitations' | 'customer_action_required' | 'update_details' | 'unknown' — Canonical advice category.
    - `detail` 'lifecycle' | 'policy' | 'fraud_security' | 'non_reloadable_prepaid' | 'single_use_virtual_card' | 'multi_use_virtual_card' | 'card_product_not_supported_by_merchant', nullable — Additional detail within the category, e.g. non_reloadable_prepaid. Null when no further detail applies.
    - `retry_after` string, date-time, nullable — Earliest UTC timestamp after which the transaction may be retried. Null when the category is not retry_later.
    - `acquirer_code` string, nullable — The normalised acquirer-specific advice code (e.g. "25"). Null when no code was provided.
  - `card_id` string, uuid — Unique identifier assigned by us for the card.
  - `links` object[]
    - `rel` 'self'
    - `href` string — Link to the resource which should be appended to base URL.

## Other responses

- `400` — An error occurred
- `401` — An error occurred
- `500` — Internal Server error

---

[API](https://skmtc.dev/acquired/apis/acquired-api.md) · [All operations](https://skmtc.dev/acquired/apis/acquired-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/acquired/acquired-api/revisions/7ae178a046f2/schema)
