Create a Payment Method

​

Creates a Payment Method from previously collected payment details, such as an Elements or Express Checkout confirmation token.

Payment Methods created directly from tokenized card details are single-use by default. Use the returned Payment Method with a Payment Intent confirmation. If the Payment Intent includes setup_future_usage and a customer, Paypercut can save the Payment Method for future reuse after the customer completes any required authentication.

Related guide: Payment Methods and tokenization

Body·

required
application/json

PaymentMethod objects represent your customer's payment instruments. You can use them with PaymentIntents to collect payments or save them to Customer objects to store instrument details for future payments.

    • The type of the PaymentMethod. An additional hash is included on the PaymentMethod with a name matching this value. It contains additional information specific to the PaymentMethod type.

    • PaymentMethodCard

      Properties: 15
    • Billing information associated with the PaymentMethod that may be used or required by particular types of payment methods.

      Properties: 4
    • Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to metadata.

      Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to metadata.

    • ID of an existing Customer, if one exists.

    • Provide one of token OR token_intent_id

      Provide one of token OR token_intent_id

      • Confirmation token.

      • Ephemeral token intent.

Responses

  • application/json
  • application/json
  • application/json
  • application/json
  • application/json
Request Example for post/v1/payment_methods
curl https://api.paypercut.io/v1/payment_methods \
  --request POST \
  --header 'Content-Type: application/json' \
  --header 'Authorization: Bearer YOUR_SECRET_TOKEN' \
  --data '{
  "type": "card",
  "card": {
    "cardholder_name": null,
    "brand": "",
    "country": null,
    "issuer": null,
    "display_brand": null,
    "network": null,
    "exp_month": 1,
    "exp_year": 1,
    "fingerprint": null,
    "funding": "",
    "segment": "",
    "iin": "",
    "last4": "",
    "wallet": {
      "dynamic_last4": null,
      "type": "apple_pay"
    },
    "three_d_secure_usage": {
      "supported": true
    }
  },
  "billing_details": {
    "email": null,
    "name": null,
    "phone": null,
    "address": {
      "city": null,
      "country": null,
      "line1": null,
      "line2": null,
      "postal_code": null,
      "state": null
    }
  },
  "metadata": {
    "additionalProperty": ""
  },
  "customer": "",
  "confirmation_token": {
    "token_id": "",
    "token_intent_id": ""
  }
}'
{
  "id": "string",
  "type": "card",
  "card": {
    "cardholder_name": null,
    "brand": "string",
    "country": null,
    "issuer": null,
    "display_brand": null,
    "network": null,
    "exp_month": 1,
    "exp_year": 1,
    "fingerprint": null,
    "funding": "string",
    "segment": "string",
    "iin": "string",
    "last4": "string",
    "wallet": {
      "dynamic_last4": null,
      "type": "apple_pay"
    },
    "three_d_secure_usage": {
      "supported": true
    }
  },
  "billing_details": {
    "email": null,
    "name": null,
    "phone": null,
    "address": {
      "city": null,
      "country": null,
      "line1": null,
      "line2": null,
      "postal_code": null,
      "state": null
    }
  },
  "billing_address": {
    "city": null,
    "country": null,
    "line1": null,
    "line2": null,
    "postal_code": null,
    "state": null
  },
  "metadata": {
    "additionalProperty": "string"
  },
  "customer": "01K755J9SV2364REVHB915Z2FW",
  "usage": "on_session",
  "reusable": null,
  "livemode": true,
  "created": "2026-10-02T06:37:26.640Z"
}