Skip to content

Logo

Alphapo

Supports in this guide: Payments, Payouts

Provider website: alphapo.net


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

  1. Choose account type
  2. Get your credentials (from Alphapo)
  3. Connect in Dashboard
  4. Send an API request

Choose account type

Alphapo has a single account type that covers both directions:

  • Provider account -> used for both payments (customer pays with crypto on Alphapo's hosted invoice page) and payouts (crypto sent to a wallet address)

If you're not sure whether Alphapo fits your use case, confirm with your Corefy account manager.


Prerequisites: get from Alphapo

Sign up and complete verification at alphapo.net, then generate an API key in your Alphapo merchant back-office (see Alphapo's own Initial setup guide).

  • Public Key -> Corefy field public_key -> the API key identifier issued by Alphapo -> where to find: Alphapo merchant back-office, API keys section. Sent on every request as the X-Processing-Key header.
  • Secret Key -> Corefy field secret_key -> shown once when the API key is generated -> where to find: Alphapo merchant back-office, API keys section. Used to sign every request (X-Processing-Signature header) and to verify Alphapo's callbacks - store it securely, it can't be retrieved again later.
  • API URL (optional) -> Corefy field api_url -> currently has a single option, Alphapo's own endpoint (https://app.alphapo.net/api/v2) -> leave as default unless your account manager tells you otherwise.

Make sure the crypto currencies/networks you plan to accept or pay out are enabled on your Alphapo merchant account before testing - Alphapo's supported cryptocurrencies list covers 40+ assets across multiple blockchain networks (BTC, ETH, USDT/USDC on several networks, LTC, XRP, and others), and which of them are actually usable on a given transaction depends on what's turned on for your account.


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

Connect Provider account in Corefy Dashboard

Step 1 - Open connection form

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

Step 2 - Fill in fields and select settings

  • Public Key
  • Secret Key
  • API URL (leave default)
  • Test Mode -> (enable if you are using sandbox credentials)
  • Currency / Features -> choose the crypto/fiat pairs enabled on your Alphapo account

Success

You have connected Alphapo Provider account!


First request to Corefy API (MIN)

What it does: creates a payment-invoice and returns a redirect link to Alphapo's hosted crypto payment page.

Payment - MIN

POST /api/payment-invoices

{
  "data": {
    "type": "payment-invoice",
    "attributes": {
      "service": "bitcoin_eur_hpp",
      "currency": "EUR",
      "amount": 50,
      "customer": {
        "email": "johnsmith@gmail.com"
      }
    }
  }
}

Payment - MAX

POST /api/payment-invoices

{
  "data": {
    "type": "payment-invoice",
    "attributes": {
      "service": "bitcoin_eur_hpp",
      "currency": "EUR",
      "amount": 50,
      "customer": {
        "reference_id": "cus_123",
        "email": "johnsmith@gmail.com"
      }
    }
  }
}

customer.email is mandatory for this flow - Corefy rejects the request with INVALID_DETAILS if it's missing, there's no placeholder fallback. The service code encodes both the crypto asset the customer pays with and the settlement currency you receive (<crypto>_<currency>_hpp, e.g. ethereum_usd_hpp, tether_trc20_eur_hpp); which pairs are available depends on what's enabled on your Alphapo account - check the Currency / Features selector in the Dashboard connection form rather than assuming a fixed list, since Alphapo routes are provisioned dynamically per account rather than being a fixed set in Corefy.


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

Options are configured on the Corefy side and affect how Corefy builds provider requests or processes responses.

Currently available options (3)

  • title_key - which payment-metadata field to use as the invoice title shown on Alphapo's hosted page.
  • payment_title_type - whether the invoice only accepts the exact amount or also allows partial/expiring payment.
  • timer - shows a countdown timer on the hosted payment page.
title_key

What it does: picks a key from the payment's metadata to use as the invoice title on Alphapo's hosted page. If not set (or the key isn't present in metadata), Corefy falls back to "Payment <payment_number>".

When to use: set it if you want a recognisable order/product name shown to the customer instead of the generic payment number.

Default: not set (uses the fallback title)

Allowed values: any string matching a key in your metadata object

payment_title_type

What it does: controls whether the invoice is "Full Only" (the customer must pay the exact amount for the payment to complete) or "Partial Allowed" (a partial/expiring payment is accepted).

When to use: enable "Partial Allowed" if you want to accept underpayments/overpayments on the crypto invoice rather than requiring an exact match.

Default: not set (behaves as "Full Only")

Allowed values: Full Only / Partial Allowed

timer

What it does: shows a countdown timer on Alphapo's hosted payment page, reflecting the invoice's expiry window.

When to use: enable it if you want the customer to see how long they have to complete the crypto payment.

Default: false

Allowed values: true / false


Constants (fallback fields)

This connector has no Dashboard-configurable Constants - customer.email in particular has no fallback and must always be sent in the request (see above).


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

Connect Provider account in Corefy Dashboard

Uses the same Provider account connection as Payments above - one connection covers both directions, there's nothing extra to fill in for payouts specifically.


First request to Corefy API (MIN)

What it does: creates a payout-invoice and sends crypto to the given wallet address.

Payout - MIN

POST /api/payout-invoices

{
  "data": {
    "type": "payout-invoice",
    "attributes": {
      "service": "bitcoin_eur",
      "currency": "EUR",
      "amount": 50,
      "customer": {
        "reference_id": "cus_123"
      },
      "fields": {
        "wallet_id": "bc1qxy2kgdygjrsqtzq2n0yrf2493p83kkfjhx0wlh"
      }
    }
  }
}

Payout - MAX

POST /api/payout-invoices

{
  "data": {
    "type": "payout-invoice",
    "attributes": {
      "service": "bitcoin_eur",
      "currency": "EUR",
      "amount": 50,
      "customer": {
        "reference_id": "cus_123",
        "name": "John Smith"
      },
      "fields": {
        "wallet_id": "bc1qxy2kgdygjrsqtzq2n0yrf2493p83kkfjhx0wlh"
      }
    }
  }
}

fields.wallet_id (the recipient's blockchain address) and customer.reference_id are both required - a payout without a customer is rejected outright. As with payments, the service code encodes the crypto/fiat pair (<crypto>_<currency>, no _hpp suffix, e.g. ethereum_usd) and which pairs exist depends on what's enabled on your Alphapo account.


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)

This connector has no Dashboard-configurable Constants for payouts.


Additional info

  1. Callback authentication. Alphapo signs every callback with the same X-Processing-Key/X-Processing-Signature headers used for outgoing requests (HMAC over the callback body using your Secret Key); Corefy verifies this automatically - there's no separate callback secret to configure in Alphapo's back-office.
  2. Currency conversion on payouts. If the payout's settlement currency differs from the destination crypto asset, Alphapo performs the conversion on its side (via the route implied by the service code) - the exchange isn't always a direct conversion and may go through intermediate pairs, which can affect the exact amount received.
  3. Dynamic currency routing. Unlike connectors with a fixed currency list, which crypto/fiat pairs are available for a given Alphapo account is resolved at connection time from what's actually enabled on that account - if a service code you expect to use is missing after connecting, check the Currency / Features selector in the Dashboard connection form or contact your account manager.

FAQ / Troubleshooting

  • INVALID_DETAILS / payment rejected -> customer.email is missing; it's mandatory for every Alphapo payment
  • Payout rejected with no customer error -> customer.reference_id is missing; a payout without a customer is rejected before it reaches Alphapo
  • A currency/crypto pair I expect isn't available -> confirm it's enabled on your Alphapo merchant account and reflected in the Dashboard's Currency/Features selector for this connection
  • Invalid signature on callback -> verify the Secret Key used to connect matches the API key currently active in your Alphapo account
  • Not sure which account type to use? -> ask your Corefy account manager

Question

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