Skip to content

Logo

Buckzy

Real-time Cross Border Payment Network

Supports in this guide: Payments, Payouts

Provider website: buckzy.net


What you need to do for start processing transactions (brief summary)

  1. Get your credentials (from Buckzy)
  2. Connect in Dashboard
  3. Send an API request

Prerequisites: get from Buckzy

Send a connection request at buckzy.net/contact-us or contact your Buckzy manager directly to get your account verified and receive the following credentials.

  • Client ID -> Corefy field client_id.
  • Client secret key -> Corefy field client_secret.
  • API key -> Corefy field api_key.
  • Username -> Corefy field username.
  • Password -> Corefy field password.
  • Creditor reference ID -> Corefy field creditor_reference_id.
  • Creditor account reference ID -> Corefy field creditor_account_reference_id.
  • API URL -> Corefy field api_url.
  • AUTH API URL -> Corefy field auth_api_url -> enter it without any additional endpoint path, for example https://auth.api.com and not https://auth.api.com/oauth.

One Provider account is used for both Payments and Payouts. INR only.


Payments processing (connect Provider account, create payment-invoice)

Connect Provider account in Corefy Dashboard

Step 1 - Open connection form

Open Buckzy in the provider directory and press Connect at Buckzy Provider Overview page in the New connection section.

Step 2 - Fill in fields and select settings

  • Client ID
  • Client secret key
  • API key
  • Username
  • Password
  • Creditor reference ID
  • Creditor account reference ID
  • API URL
  • AUTH API URL
  • Test Mode -> (enable if you are using sandbox credentials)

Success

You have connected Buckzy Provider account!


First request to Corefy API (MIN)

What it does: creates a payment-invoice for a UPI QR payment and returns a QR code for the customer to scan. Behind the scenes, Corefy automatically looks up or creates a "sender" record with Buckzy for the customer before creating the payment - this happens transparently within the same request.

Payment - MIN

POST /api/payment-invoices

{
  "data": {
    "type": "payment-invoice",
    "attributes": {
      "reference_id": "12c55b3f-f97b-475f-957b-ece79c6e423f",
      "service": "upi_qr_inr_invoice",
      "currency": "INR",
      "amount": 100,
      "customer": {
        "reference_id": "4b0e3663-90cb-48d4-b813-53f6b1426b33",
        "phone": "+380982016756"
      }
    }
  }
}

Important

customer.reference_id is required - Buckzy uses it to identify the customer's sender record, and the request fails immediately without it.

Payment - MAX

POST /api/payment-invoices

{
  "data": {
    "type": "payment-invoice",
    "attributes": {
      "reference_id": "23ee6619-6f91-4174-855a-9a125e2b3ad4",
      "service": "upi_qr_inr_invoice",
      "currency": "INR",
      "amount": 100,
      "customer": {
        "reference_id": "17d55eae-f6f1-4314-95db-7353e2734d99",
        "name": "John Doe",
        "email": "test21323test@gmail.com",
        "phone": "+380982234324",
        "date_of_birth": "2023-11-07",
        "address": {
          "full_address": "India",
          "country": "IN",
          "region": "India",
          "city": "India",
          "post_code": "2443423"
        }
      }
    }
  }
}

Important

If customer.address.country (and the DEBTOR_COUNTRY Constant) are both missing, the country defaults to IN.

There is also a second, HPP-redirect variant of the same QR payment, available via service upi_inr_hpp - the customer is redirected to a Corefy-hosted page that displays the QR code, instead of your own integration rendering it from the invoice response.


Extended request (MAX)

Why add extra fields (typical reasons): - Provide additional customer details for compliance/reconciliation - Positively influence conversion rate - Include optional fields required by your specific flow


Options

  • generate_random_customer_data -> optional, boolean, upi_inr_hpp service only - fills in missing date of birth and address fields with randomly generated test data instead of leaving them empty; useful for sandbox testing when full customer KYC data isn't available.

Constants (fallback fields)

Constants are static values that Corefy can send to the provider instead of dynamic data from your API request, when those fields are missing in the request.

Priority (predictable rule): 1. If a value is present in the request -> Corefy uses the request value 2. Else if the constant is set -> Corefy uses the constant 3. Else -> provider may reject the request or apply its defaults (depends on provider)

Currently available constants (constant -> Corefy API field), upi_qr_inr_invoice service only

  • CUSTOMER_REFERENCE_ID -> customer.reference_id
  • FIRST_NAME -> customer.name (first part)
  • LAST_NAME -> customer.name (second part)
  • EMAIL -> customer.email
  • PHONE -> customer.phone
  • DATE_OF_BIRTH -> customer.date_of_birth
  • FULL_ADDRESS -> customer.address.full_address
  • POST_CODE -> customer.address.post_code
  • CITY -> customer.address.city
  • REGION -> customer.address.region
  • DEBTOR_COUNTRY -> customer.address.country (defaults to IN if neither is set)
  • CREDITOR_COUNTRY -> defaults to IN; not expected to be changed

Refunds

Buckzy does not support refunds.


Payouts processing (connect Provider account, create payout-invoice)

Connect Provider account in Corefy Dashboard

Uses the same Provider account connected above - no separate connection step.

First request to Corefy API (MIN)

What it does: creates a payout-invoice and sends funds to a bank account via UPI, identified by account number and IFSC bank code.

Payout - MIN

POST /api/payout-invoices

{
  "data": {
    "type": "payout-invoice",
    "attributes": {
      "reference_id": "cb9e1ab4-7ec8-48be-b6ee-cd23c215389f",
      "service": "upi_inr",
      "currency": "INR",
      "amount": 100,
      "customer": {
        "reference_id": "414c9837-674d-4f9f-bfb5-f07aa01aa4a5"
      },
      "fields": {
        "account_number": "524872******1850",
        "ifsc_bank_code": "HDFC0000001"
      }
    }
  }
}

Important

fields.account_number and fields.ifsc_bank_code are required.

Payout - MAX

POST /api/payout-invoices

{
  "data": {
    "type": "payout-invoice",
    "attributes": {
      "reference_id": "cb9e1ab4-7ec8-48be-b6ee-cd23c215389f",
      "service": "upi_inr",
      "currency": "INR",
      "amount": 100,
      "customer": {
        "reference_id": "414c9837-674d-4f9f-bfb5-f07aa01aa4a5",
        "name": "John Doe",
        "address": {
          "country": "IN",
          "city": "Mumbai",
          "region": "Maharashtra"
        }
      },
      "fields": {
        "account_number": "524872******1850",
        "ifsc_bank_code": "HDFC0000001"
      }
    }
  }
}

Important

Your own merchant company name and address (from your Corefy merchant profile) are sent automatically as the sender ("debtor") details; customer.name/customer.address describe the recipient ("creditor").


Extended request (MAX)

Why add extra fields (typical reasons): - Provide additional customer details for compliance/reconciliation - Positively influence conversion rate - Include optional fields required by your specific flow


Constants (fallback fields)

Constants are static values that Corefy can send to the provider instead of dynamic data from your API request, when those fields are missing in the request.

Priority (predictable rule): 1. If a value is present in the request -> Corefy uses the request value 2. Else if the constant is set -> Corefy uses the constant 3. Else -> provider may reject the request or apply its defaults (depends on provider)

Currently available constants (constant -> Corefy API field)

  • MERCHANT_FIRST_NAME / MERCHANT_LAST_NAME -> fallback for your own merchant profile name
  • MERCHANT_BIRTH_DATE -> sender birth date
  • MERCHANT_ADDRESS / MERCHANT_CITY / MERCHANT_REGION / MERCHANT_COUNTRY_CODE -> fallback for your own merchant profile address
  • CUSTOMER_FIRST_NAME / CUSTOMER_LAST_NAME -> fallback for customer.name
  • CUSTOMER_CITY / CUSTOMER_REGION / CUSTOMER_COUNTRY -> fallback for customer.address
  • PURPOSE_CODE -> payout purpose code; defaults to PC001

Refunds

Buckzy does not support refunds for payouts.


Additional info

  1. Active reconciliation is available - both Payments and Payouts support an active status request in addition to the asynchronous callback.
  2. No recurring - this connector does not support saving/charging a token through Corefy.

FAQ / Troubleshooting

  • Invalid credentials / auth error -> verify Client ID, Client secret, API key, Username and Password for the selected environment (test_mode); double-check that AUTH API URL has no extra path segment
  • Payment fails with a customer data error -> customer.reference_id (or the CUSTOMER_REFERENCE_ID Constant) is required for Payments
  • Currency or service is not supported -> confirm allowed currencies/features in your Buckzy account and in Corefy - only INR is available
  • Refund fails -> Buckzy does not support refunds through Corefy

Question

Still looking for help connecting your Buckzy account? Please contact our support team!