> ## 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.

# Close CRM

> Sinkronkan data Dodo Payments dengan Close CRM untuk melacak prospek dan mengelola saluran penjualan.

## Pendahuluan

Sambungkan data pembayaran Anda langsung ke Close CRM untuk manajemen prospek dan pelacakan penjualan yang mulus. Secara otomatis buat kontak dan peluang dari pembayaran yang berhasil, menjaga tim penjualan Anda tetap terinformasi tentang aktivitas yang menghasilkan pendapatan.

<Info>
  Integrasi ini membutuhkan kunci API Close CRM dengan izin yang sesuai.
</Info>

## Memulai

<Steps>
  <Step title="Open the Webhook Section">
    Di dasbor Dodo Payments Anda, navigasikan ke <b>Webhooks → + Tambah Endpoint</b> dan perluas dropdown integrasi.

    <Frame>
      <img src="https://mintcdn.com/dodopayments/slbAEdrLLwKHfaRf/images/integrations/close-crm.png?fit=max&auto=format&n=slbAEdrLLwKHfaRf&q=85&s=bd462e078ea95d7853eb066cdbaebb0f" alt="Add Endpoint and integrations dropdown" style={{ maxHeight: '500px', width: 'auto' }} width="1710" height="948" data-path="images/integrations/close-crm.png" />
    </Frame>
  </Step>

  <Step title="Select Close CRM">
    Pilih kartu integrasi <b>Close CRM</b>.
  </Step>

  <Step title="Enter API Key">
    Masukkan kunci API Close CRM Anda dalam konfigurasi.
  </Step>

  <Step title="Configure Transformation">
    Sunting kode transformasi untuk memetakan data pembayaran ke objek Close CRM.
  </Step>

  <Step title="Test & Create">
    Uji dengan payload sampel dan klik <b>Create</b> untuk mengaktifkan sinkronisasi.
  </Step>

  <Step title="Done!">
    🎉 Peristiwa pembayaran sekarang akan secara otomatis membuat/memperbarui catatan di Close CRM.
  </Step>
</Steps>

## Contoh Kode Transformasi

### Buat Kontak dari Pembayaran

```javascript create_contact.js icon="js" expandable theme={null}
function handler(webhook) {
  if (webhook.eventType === "payment.succeeded") {
    const p = webhook.payload.data;
    webhook.url = "https://api.close.com/api/v1/contact/";
    webhook.payload = {
      name: p.customer.name,
      emails: [p.customer.email],
      phones: [p.customer.phone || ''],
      custom: {
        payment_amount: (p.total_amount / 100).toFixed(2),
        payment_method: p.payment_method || '',
        dodo_customer_id: p.customer.customer_id
      }
    };
  }
  return webhook;
}
```

### Buat Peluang dari Langganan

```javascript create_opportunity.js icon="js" expandable theme={null}
function handler(webhook) {
  if (webhook.eventType === "subscription.active") {
    const s = webhook.payload.data;
    webhook.url = "https://api.close.com/api/v1/opportunity/";
    webhook.payload = {
      lead_id: s.customer.customer_id,
      value: (s.recurring_pre_tax_amount / 100).toFixed(2),
      value_period: s.payment_frequency_interval,
      title: `Subscription - ${s.product_id}`,
      custom: {
        subscription_id: s.subscription_id,
        billing_frequency: s.payment_frequency_interval,
        next_billing: s.next_billing_date
      }
    };
  }
  return webhook;
}
```

## Tips

* Gunakan dokumentasi API Close CRM untuk memahami pemetaan field
* Sertakan field kustom untuk data spesifik pembayaran
* Pemetakan jumlah langganan ke nilai peluang
* Gunakan ID pelanggan untuk asosiasi prospek yang tepat

## Pemecahan Masalah

<AccordionGroup>
  <Accordion title="Records not created in Close CRM">
    * Pastikan kunci API memiliki izin tulis
    * Periksa bahwa bidang yang diperlukan disertakan
    * Pastikan format email valid
    * Tinjau batas laju API Close CRM
  </Accordion>

  <Accordion title="Transformation errors">
    * Validasi struktur JSON sesuai format API Close CRM
    * Periksa bahwa semua bidang wajib ada
    * Pastikan nama bidang sesuai persis dengan skema Close CRM
  </Accordion>
</AccordionGroup>
