> ## Documentation Index
> Fetch the complete documentation index at: https://docs.dodopayments.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Thẻ tín dụng & thẻ ghi nợ

> Chấp nhận tất cả các mạng lưới thẻ tín dụng và thẻ ghi nợ lớn trên toàn cầu với Dodo Payments. Tìm hiểu về 3D Secure, thẻ đã lưu, tokenization và hỗ trợ thẻ theo khu vực.

Thanh toán bằng thẻ là nền tảng của thanh toán trực tuyến, được chấp nhận trên toàn cầu và được khách hàng trên khắp thế giới tin dùng. Dodo Payments hỗ trợ tất cả các mạng lưới thẻ lớn với tính năng bảo vệ chống gian lận tích hợp và tuân thủ PCI.

## Mạng lưới thẻ được hỗ trợ

### Mạng lưới toàn cầu

| Mạng lưới            | Phạm vi                                           |
| :------------------- | :------------------------------------------------ |
| **Visa**             | Dẫn đầu toàn cầu, hơn 4 tỷ thẻ trên toàn thế giới |
| **Mastercard**       | Phạm vi toàn cầu, tính năng bảo mật mạnh mẽ       |
| **American Express** | Chủ thẻ cao cấp, mức chi tiêu cao hơn             |
| **Discover**         | Tập trung tại Hoa Kỳ, đang mở rộng trên toàn cầu  |
| **JCB**              | Dẫn đầu tại Nhật Bản, mở rộng khắp châu Á         |
| **UnionPay**         | Chiếm ưu thế tại Trung Quốc, hơn 8 tỷ thẻ         |
| **Diners Club**      | Dành cho khách du lịch quốc tế cao cấp            |

### Mạng lưới theo khu vực

| Mạng lưới              | Khu vực                            |
| :--------------------- | :--------------------------------- |
| **Interac**            | Mạng lưới thẻ ghi nợ của Canada    |
| **Cartes Bancaires**   | Mạng lưới quốc gia của Pháp        |
| **Korean Local Cards** | Các mạng lưới thẻ nội địa Hàn Quốc |
| **Rupay**              | Mạng lưới quốc gia của Ấn Độ       |

## Cấu hình

Sử dụng các giá trị này trong `allowed_payment_method_types`:

| Loại     | Mô tả               |
| :------- | :------------------ |
| `credit` | Tất cả thẻ tín dụng |
| `debit`  | Tất cả thẻ ghi nợ   |

```javascript theme={null}
const session = await client.checkoutSessions.create({
  product_cart: [{ product_id: 'prod_123', quantity: 1 }],
  allowed_payment_method_types: ['credit', 'debit'],
  return_url: 'https://example.com/success'
});
```

<Tip>
  Bao gồm cả `credit` và `debit` trừ khi bạn có lý do cụ thể để loại trừ một trong hai. Nhiều khách hàng ưu tiên thẻ ghi nợ và loại thẻ này thường có mức phí thấp hơn.
</Tip>

## Xác thực 3D Secure

3D Secure (3DS) bổ sung một lớp xác thực giúp giảm gian lận và chargeback bằng cách xác minh danh tính của chủ thẻ.

### Khi 3DS được kích hoạt

3DS được tự động kích hoạt khi:

* Được mạng lưới thẻ yêu cầu
* Được quy định theo quy định pháp luật của khu vực (ví dụ: PSD2 tại châu Âu)
* Giao dịch bị đánh dấu là có rủi ro cao

### Bắt buộc 3DS

Bạn có thể yêu cầu 3DS cho tất cả giao dịch:

```javascript theme={null}
const session = await client.checkoutSessions.create({
  product_cart: [{ product_id: 'prod_123', quantity: 1 }],
  force_3ds: true,
  return_url: 'https://example.com/success'
});
```

<Note>
  Việc bật 3DS cho tất cả giao dịch giúp giảm gian lận nhưng có thể làm giảm nhẹ tỷ lệ chuyển đổi vì một số khách hàng bỏ dở trong quá trình xác thực.
</Note>

### Xử lý lỗi xác thực

Khi một khoản thanh toán cần xác thực 3DS, khoản thanh toán sẽ đi qua các trạng thái trung gian trước khi thành công hoặc thất bại:

| Trạng thái                 | Ý nghĩa                                                                                                                                                  | Cần làm gì                                                                                                                    |
| -------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- |
| `requires_customer_action` | Khách hàng phải hoàn tất thử thách 3DS                                                                                                                   | Yêu cầu khách hàng hoàn tất xác thực trong quá trình checkout                                                                 |
| `requires_payment_method`  | Khách hàng chưa từng cung cấp phương thức thanh toán (không nhập thông tin hoặc đã bỏ qua lời nhắc) — thường là khách hàng rời bỏ, không phải bị từ chối | Tiếp cận lại khách hàng để hoàn tất checkout; xem [Khôi phục giỏ hàng bị bỏ quên](/features/recovery/abandoned-cart-recovery) |

Nếu quá trình xác thực không hoàn tất, khoản thanh toán sẽ thất bại với một trong các mã từ chối sau:

* `AUTHENTICATION_FAILURE` — không thể xác thực khách hàng.
* `AUTHENTICATION_REQUIRED` — yêu cầu xác thực nhưng chưa được thực hiện.
* `AUTHENTICATION_TIMEOUT` — khách hàng không phản hồi kịp thời.

Xem tài liệu tham khảo [Lỗi giao dịch](/api-reference/transaction-failures) để biết hành động được đề xuất cho từng trường hợp.

#### Tại checkout và khi gia hạn

* **Tại checkout (khách hàng có mặt):** Khách hàng đang có mặt, vì vậy thử thách 3DS được hiển thị trong quá trình checkout. Nếu thất bại, hãy yêu cầu họ thử lại hoặc sử dụng thẻ khác.
* **Khi gia hạn gói đăng ký (khách hàng không có mặt):** Khách hàng không có mặt, vì vậy không thể hiển thị thử thách 3DS theo thời gian thực. Nếu một lần gia hạn yêu cầu xác thực, gói đăng ký sẽ chuyển sang `on_hold`. Khôi phục bằng cách nhắc khách hàng quay lại và cập nhật phương thức thanh toán — xem [Xử lý lỗi thanh toán](/developer-resources/handle-payment-failures) và [Dunning gói đăng ký](/features/recovery/subscription-dunning).

## Phương thức thanh toán đã lưu

Khách hàng có thể lưu thẻ để checkout nhanh hơn trong những lần sau.

<CardGroup cols={3}>
  <Card title="Tokenized" icon="lock">
    Số thẻ gốc không bao giờ được lưu trữ.
  </Card>

  <Card title="PCI Compliant" icon="shield-check">
    Dodo xử lý toàn bộ việc tuân thủ.
  </Card>

  <Card title="Customer-Scoped" icon="user">
    Thẻ được liên kết với từng khách hàng cụ thể.
  </Card>
</CardGroup>

### Bật thẻ đã lưu

```javascript theme={null}
const session = await client.checkoutSessions.create({
  product_cart: [{ product_id: 'prod_123', quantity: 1 }],
  show_saved_payment_methods: true,
  customer: { customer_id: 'cus_existing_123' },
  return_url: 'https://example.com/success'
});
```

### Mua hàng một lần nhấp

```javascript theme={null}
// Get customer's saved payment methods
const methods = await client.customers.retrievePaymentMethods('cus_123');

// Use saved card for instant checkout
const session = await client.checkoutSessions.create({
  product_cart: [{ product_id: 'prod_123', quantity: 1 }],
  customer: { customer_id: 'cus_123' },
  payment_method_id: methods.items[0].payment_method_id,
  confirm: true,
  return_url: 'https://example.com/success'
});
```

## Kiểm thử

<Tabs>
  <Tab title="Successful Payments">
    | Khu vực | Thương hiệu | Số thẻ             | Ngày hết hạn | CVV |
    | :------ | :---------- | :----------------- | :----------- | :-- |
    | US      | Visa        | `4242424242424242` | 06/32        | 123 |
    | US      | Mastercard  | `5555555555554444` | 06/32        | 123 |
    | India   | Visa        | `4576238912771450` | 06/32        | 123 |
    | India   | Mastercard  | `5409162669381034` | 06/32        | 123 |
  </Tab>

  <Tab title="Declined Payments">
    | Khu vực | Thương hiệu | Số thẻ             | Kịch bản      |
    | :------ | :---------- | :----------------- | :------------ |
    | US      | Visa        | `4000000000000002` | Từ chối chung |
    | US      | Mastercard  | `4000000000009995` | Không đủ tiền |
    | India   | Visa        | `4706131211212123` | Từ chối chung |
    | India   | Mastercard  | `5105105105105100` | Từ chối chung |
  </Tab>
</Tabs>

<Warning>
  Thẻ kiểm thử chỉ hoạt động trong test mode. Không bao giờ sử dụng chúng cho giao dịch production.
</Warning>

## Bảo mật & tuân thủ

| Tính năng           | Mô tả                                 |
| :------------------ | :------------------------------------ |
| **PCI DSS Level 1** | Cấp độ chứng nhận cao nhất            |
| **Tokenization**    | Số thẻ được tokenization ngay lập tức |
| **Fraud Scoring**   | Đánh giá rủi ro theo thời gian thực   |
| **AVS**             | Address Verification Service          |
| **CVV Validation**  | Xác minh mã bảo mật                   |
| **3D Secure**       | Xác thực chủ thẻ                      |

## Thực tiễn tốt nhất

<AccordionGroup>
  <Accordion title="Accept all major networks">
    Không hạn chế loại thẻ trừ khi cần thiết. Khách hàng mong muốn thẻ họ ưa dùng có thể hoạt động.
  </Accordion>

  <Accordion title="Display card logos">
    Hiển thị logo Visa, Mastercard, Amex trên checkout để tạo dựng niềm tin.
  </Accordion>

  <Accordion title="Handle declines gracefully">
    Hiển thị thông báo lỗi rõ ràng. Không cung cấp mã lỗi thô cho khách hàng.
  </Accordion>

  <Accordion title="Enable saved cards for returning customers">
    Phương thức thanh toán đã lưu giúp tăng đáng kể tỷ lệ chuyển đổi đối với các giao dịch mua lặp lại.
  </Accordion>
</AccordionGroup>

## Khắc phục sự cố

<AccordionGroup>
  <Accordion title="Card declined">
    **Nguyên nhân:** Không đủ tiền, thẻ hết hạn, CVV không chính xác, cơ chế bảo vệ chống gian lận của ngân hàng.

    **Giải pháp:** Yêu cầu khách hàng xác minh thông tin hoặc thử thẻ khác. Tra cứu mã từ chối cụ thể `Error Code` và hành động được đề xuất tương ứng trong tài liệu tham khảo [Lỗi giao dịch](/api-reference/transaction-failures), đồng thời xem [Xử lý lỗi thanh toán](/developer-resources/handle-payment-failures) để xử lý programmatic.
  </Accordion>

  <Accordion title="3DS authentication failed">
    **Nguyên nhân:** Khách hàng bỏ dở, hệ thống ngân hàng không khả dụng, hết thời gian chờ.

    **Giải pháp:** Thử lại hoặc yêu cầu khách hàng liên hệ ngân hàng. Xem [Xử lý lỗi xác thực](#handling-authentication-failures) để biết các trạng thái thanh toán và mã từ chối liên quan.
  </Accordion>

  <Accordion title="Card not supported">
    **Nguyên nhân:** Không hỗ trợ thẻ theo khu vực, hạn chế đối với thẻ trả trước.

    **Giải pháp:** Khách hàng nên thử một thẻ khác thuộc mạng lưới lớn.
  </Accordion>
</AccordionGroup>

## Trang liên quan

<CardGroup cols={2}>
  <Card title="Payment Methods Overview" icon="layer-group" href="/features/payment-methods">
    Tất cả phương thức thanh toán được hỗ trợ.
  </Card>

  <Card title="Upsells & Downsells" icon="arrow-up-right-dots" href="/features/upsells-and-downsells">
    Mua hàng một lần nhấp bằng thẻ đã lưu.
  </Card>

  <Card title="Testing Process" icon="flask" href="/miscellaneous/testing-process">
    Hướng dẫn kiểm thử đầy đủ.
  </Card>

  <Card title="Subscriptions" icon="repeat" href="/features/subscription">
    Thanh toán định kỳ bằng thẻ.
  </Card>
</CardGroup>
