Welcome to Xendit’s latest documentation. For legacy content, access the previous documentation here or the previous API reference here.

Migrasi token kartu

Prev Next

Jika Anda pindah ke Xendit dari penyedia pembayaran sebelumnya dan ingin memigrasikan data kartu pelanggan yang tersimpan, kami menawarkan cara yang aman dan sesuai dengan PCI-DSS untuk melakukannya melalui layanan Migrasi Token Kartu kami. Panduan ini memandu Anda melalui prosesnya, termasuk cara menyiapkan data, mentransfernya ke Xendit, dan memahami hasilnya.

Overview

Apa itu migrasi token kartu?
Migrasi token kartu memungkinkan Anda untuk mengimpor data kartu pelanggan Anda dari penyedia sebelumnya ke dalam sistem API Kartu & Pembayaran Xendit. Ini berarti pelanggan Anda tidak perlu memasukkan kembali detail kartu mereka — membuat transisi lebih lancar.

Untuk siapa ini?
Merchant yang bermigrasi dari PSP (penyedia layanan pembayaran) lain, terutama yang memiliki fungsi penagihan berulang atau kartu tersimpan.

Cara migrasi

1. Key exchange

Anda dapat menemukan kunci publik PGP di akhir dokumen ini. Anda akan menggunakan ini untuk mengenkripsi file kartu sebelum mengirimkannya kepada kami. Ini menjaga keamanan data selama transmisi.

2. Siapkan file Anda

Kami akan membagikan contoh templat file yang menguraikan bidang mana yang akan disertakan dan format yang kami harapkan.

Card Token Migration File Format - sample input
1.93 KB

Anda mungkin perlu meminta data ini dari penyedia sebelumnya. Setelah file Anda siap, enkripsi menggunakan kunci PGP yang disediakan di Langkah 1.

3. Transfer file

Anda dapat mengirimkan file terenkripsi kepada kami menggunakan salah satu metode berikut:

Opsi 1: Unggah SFTP

  • Bagikan kunci publik SSH dan alamat IP Anda kepada kami

  • Kami akan menyediakan akses untuk unggahan SFTP yang aman

Opsi 2: Unggahan S3 yang Ditandatangani Sebelumnya

  • Kami akan menyediakan URL yang aman dan terbatas waktu

  • Mengupload file terenkripsi menggunakan link satu kali ini

4. Mulai migrasi

Setelah file diunggah, Xendit akan:

  • Memvalidasi struktur file

  • Mulai memproses migrasi di latar belakang

Jika file salah bentuk atau rusak, kami akan memberi tahu Anda dan menghentikan prosesnya.

5. Lacak progres

Xendit akan memantau migrasi dan melacak:

  • Jumlah total baris yang diproses

  • Kesalahan yang ditemui (jika ada)

  • Status pekerjaan migrasi

Anda akan diberi tahu jika ada tindakan yang diperlukan dari pihak Anda.

6. Dapatkan file

Setelah pemrosesan selesai, Anda akan menerima:

File yang berisi token kartu yang berhasil dimigrasikan:

Card Token Migration File Format - sample output
486 Byte

File yang berisi baris yang gagal, dengan alasan

Card Token Migration File Format - sample error output
216 Byte

Anda akan menerima email dengan link untuk mengunduh file hasil

Input file format

Setiap baris mewakili satu kartu pelanggan.

Kolom

Diperlukan?

Deskripsi

business_id

Ya

ID Bisnis Xendit Anda. Diperlukan untuk mendukung subakun.

card_number

Ya

Nomor kartu lengkap. Akan dienkripsi selama pemrosesan.

card_expiry_month

Ya

Format dua digit, misalnya 09

card_expiry_year

Ya

Format empat digit, misalnya 2026

network_transaction_id

Tidak

Fakultatif. Membantu meningkatkan tingkat keberhasilan tagihan di masa mendatang.

reference_id

Ya

Pengidentifikasi unik untuk kartu. Tidak boleh diduplikasi.

card_holder_first_name

Tidak

Informasi pemegang kartu opsional

card_holder_last_name

Tidak

card_holder_email

Tidak

card_holder_phone_number

Tidak

billing_details_first_name

Tidak

Detail penagihan opsional

billing_details_last_name

Tidak

billing_details_email

Tidak

billing_details_phone_number

Tidak

Penting: reference_id harus unik untuk setiap entri. ID duplikat akan menghasilkan kesalahan.

File output

Setelah migrasi selesai, Anda akan menerima dua file CSV:

1. Migrasi yang berhasil

Kolom

Deskripsi

business_id

ID Bisnis Xendit Anda

masked_card_number

Versi masked dari nomor kartu (misalnya 4111********1111)

card_expiry_month

Bulan kedaluwarsa

card_expiry_year

Tahun kedaluwarsa

reference_id

Referensi asli Anda untuk kartu ini

card_token_id

Token yang dihasilkan di Cards API Xendit

payments_api_token_id

Token yang dihasilkan di Payments API Xendit

status

Seharusnya SUCCESS

2. Migrasi yang gagal

Hanya baris yang gagal dimigrasikan yang akan muncul dalam file ini.

Kolom

Deskripsi

Kolom yang sama dengan file sukses

status

FAILED

error_code

Kode kesalahan yang dihasilkan sistem

error_message

Penjelasan masalah yang dapat dibaca manusia

Kemungkinan alasan kegagalan

Error

Deskripsi

INVALID_CARD

Nomor kartu salah (cek Luhn) atau kedaluwarsa. Kami tidak memeriksa apakah kartu sudah kedaluwarsa, tetapi kami memeriksa apakah kedaluwarsa berlaku (misalnya bulan tidak boleh 13)

EXTERNAL_ID_ALREADY_USED_ERROR

Dilemparkan ketika ada id referensi duplikat, baik dalam file yang sama atau pada token yang ada yang digunakan di bawah 1 acccount.

MISSING_DATA

Ketika baris tidak memiliki data wajib (kolomwajib):

card_number,

card_expiry_month

card_expiry_year

reference_id)

BUSINESS_NOT_FOUND

Kapan business_id ditentukan (bidang opsional) tetapi tidak valid.

INTERNAL_ERROR

Kesalahan umum, menangkap kesalahan lain, seharusnya tidak terjadi. Perlu dukungan untuk menyelesaikan masalah jika terjadi.

Keamanan dan jepatuhan

  • Semua file harus dienkripsi menggunakan kunci publik PGP yang disediakan oleh Xendit

  • Data Anda tidak pernah disimpan dalam teks biasa

  • Proses ini sesuai dengan standar PCI-DSS dari ujung ke ujung

Kunci PGP Publik:

-----BEGIN PGP PUBLIC KEY BLOCK-----

mQINBGajBVQBEAC5m0dbH20NoL4WGGCUQHzjFlYlriPO/KPo0eU3Rx2dGwx6AEh1
q5mR4h0rn9Y8gWkxoOkCLOEtKK5azUqdXfZLJwdFjerQdeWdvZErrVNvey0qaXfq
GUY8nX68wDsOEJe6avpICWj0WiMB/Vxctge3rbe5AtB1teqz52XQ160xViczAEan
zUiLjQ1r/j8upDgRWGDZD8/M800UVrm9f4KaHYiSOWRajBp+smH/WaQMhbMCrX/F
Sn7gpedraXyK+6uKZikpZRq6acW7ltkcksXubNTu1OqKApezPN8ZMi3+WCw1x1ar
BazxT5vchHCRAcNr5JaEO/Q+ncLh0Yf4lgqwYnApkerBMyPS6o4SnjmjGKVFJFl5
AT2z6nqd1KrE1oqZ1cC84oqTw78cly//zQD6IcU5agHr1gqmAPW1yDYXmcC+5uL4
BJPqkn4XZL6fpAmOTJtaPTh1HXTpCNXQKl0BF+jWzTX3s+4VsZdNxZZjgddUnuFs
9MH8GsKn33sk32VMbAhSpF1lFgWJImfnZpEOup5eDydwRKxNptWG1zrljsqgiaE/
ROuxrG9rbGAv85mLo9Ig7waR2nz+xkZGVPy5RIWN2JJZ7iLWSN6fUkp3mxlXEfUE
DrBKlTV2hmI5zv2z19x9uUmL4tb3dI3TmXk7MvK8uMtHNqpNeA2Ny2gPfwARAQAB
tEtTdXBwb3J0cyBNaWdyYXRpb24gKEZvciBjYXJkIGRhdGEgbWlncmF0aW9uKSA8
c3VwcG9ydC1taWdyYXRpb25zQHhlbmRpdC5jbz6JAlQEEwEIAD4WIQRu6u870UW2
rZrjv1FKvmctznTJkwUCZqMFVAIbAwUJA8JnAAULCQgHAgYVCgkICwIEFgIDAQIe
AQIXgAAKCRBKvmctznTJkwgvEACr+ZxFvO+mxHGie5BLBBEQXJNKeI0J5bLiJhFF
uMAwscOsG/fNrD1IZ0cwCMK9BKaIUeNiu0CZr3jYYb6Z+DGi/MqLi+iMhgBpOPfk
fBSgYETNhyL4yrqDA6W+kTcnaJD9SjW+We1k7wAepX/IOOacg8D1+MkcpevBq/FG
8vV33PKozPdSMrzFCZ1bI54IAz0pABxWym7OAE6ll2Muat/CulFy/kJfoLJDcKg7
zUAzejyl6y91yd1wqfXTQ0uWNzvdt9f9+poSZ2KpmhV79wuOJ2J4ZXagMv0GtDBQ
Rz8VX8iQ/7jgDjqVIBCDnwCNN/74w8S3RFlmf82qJepV0TleNOt+2wscrx6dKKoq
brUUyjE2sf6a7NLLUNW6p2HPZJ72hWFzjbqVEGIXJJmYBcuzhClPxcab35ht34FM
ubmMtb5AgpJp5lKAHCvrT6VR1FgdZvfJ4VemVQ5WTQI7jiZi4c3aCQ/IGd+H40h7
LHRQra5Lbxp5ABqXwEfhv7zU1B8yECGQ8COs3PhO8YKYGMyBMCWRe1dz42KvhGbf
SaUEQggN/CWj5GuNwbjbahdb6vEJ/O0Bld2O1MZzQMjKC5EnWybNz/n06HCpPLpe
gU0kA3NCl0Umz0/3QEDAihmSlDfbZc1WhjH4gLxoo1I/NuNJDnhHeivU4qGLtKIK
1t68mrkCDQRmowVUARAAwxOcHZOINmf+IG0UTPdcuC69PLBu0XB5KN92i7Lu2MOs
Nmot/fgVtrU3ifwYU4aACXTsi963VQwTPJxI0Y5J/oaHJO4u26KQTb+HoGgSqE5M
r5FbnRb1ni4jbmmK2D9cikiD76EGf2Xjqon1DhswqVofOW908nMMaUsrNYxJLKkW
7LlawjelX3OuLHm1KbL+yOnUuLelDY+8zFrQ4+Ms66e1izGdeeA7F7ao2ECUjjIg
hhvee8z9X4L3UNP3Mhuivf0NnC/JxY8pdPgdGvHk+SO3eP+H1O1l9W8vMAFBrog6
IEGYpE35yO6yNfX5r1R/lEZxRzJgm51kkZKxNpFlx8Qs9b4AkVTw+11B0tV+laj1
vMxKVajG+DjvK/tCikYr+JhmkuJt0q6Dq8ZcoeKZpURIwx7r2DQUIugJepexqSgT
Tq95T9nHki4SNflaf3pNtrViBIDFdCPocvBJM90eiuSslZolm+7RKwStBirfLXKO
UcN5jUiNzp70P0tWSXshVivtRZ7g4dgPdStG3bkqhAtV1/nMshASjkFpBKuDGaMA
wcF5cN++jskuku5vwScSoz6gorIuNWEISgk8atZDlxZNc+qPHHYyCo38qjW3zqxy
yiCesbMaq+bw+ZBGzL8Y+OCk5YO+PPpxfGoNZm80B8NooK+bVH5tI+Pf09N4Rw8A
EQEAAYkCPAQYAQgAJhYhBG7q7zvRRbatmuO/UUq+Zy3OdMmTBQJmowVUAhsMBQkD
wmcAAAoJEEq+Zy3OdMmT/VsQAJhQojflLmRS6JEDFsp0KeUXxochmqhPgDNUKChm
JWj0ykoFHw3XniAkLmASCFzr92Fz3xafu5FfRYN2hsHB+cP3gV1AY8zMTMnSozE5
hpI3kW6IyrIK75QGqLemRkAAgwMkhVdzXhmVTQZhfhBOJH2FO7zKzXxd1eCsk7Lb
lF3Lv+QHsnjxB3dg5xScKFWKozrbqJu72ztfjLrPLSjrmTRoONVWocH8zmc3nC0v
jkYWl1sreNgPnKIVFM1zEVBNGjjFL86qn6K/LGMnj8+hJRmm5ZNl/5JUomdDHcfj
YRZE4NA0A6Al+EuPsLV/Y6NGY3CTsamA2Rhd7nsbv4zp5uX67BxflCuuyeNV0LTo
z3VkAfyFPat6TUabqw3nqIY6D/YB0jqCOMTatk/PST0LEQaWtlRzrKnl60eJHeQz
Ilxs8urbjlY5010ClnZUTyc5el9PvYkhvROxtn3V8RliGINjCsHFJjJYbALjJkMq
8oKiKxOxSer70H3FJsGT4+q3Aj0S7U0p0kmWNML/013DTS7fIQNEQD1CbkX9Wh0q
UUQuVJE8ZWbClPvuzUd6qAu/f38575r3Z10lFHsZKAb94hEkN3uHmIN2nGFXnRNn
0zFTDxKdGbOYzMKw0Fcw+fyK/RE+KEOFRg4fHTkgtfeqCQJRObGYRpcafK0W3E7+
tFb6
=5M+t
-----END PGP PUBLIC KEY BLOCK-----

Butuh Bantuan?

Tim Manajemen Akun dan Kesuksesan Pelanggan kami tersedia untuk:

  • Membantu memformat file Anda

  • Memperjelas persyaratan lapangan

  • Memandu Anda melalui proses pengunggahan dan migrasi

  • Membantu mengatasi kesalahan apa pun