Devdraft Payment is a powerful WordPress plugin that enables businesses to accept payments through both traditional banking methods and stablecoin solutions. The plugin provides a unified interface for processing bank transfers and stablecoin payments, making it easy to offer multiple payment options to your customers.
Traditional Bank Transfers:
* ACH Push (United States)
* Same-day ACH (United States)
* Wire Transfer (International)
* SEPA (Single Euro Payments Area)
Stablecoin Payments:
* USDC (USD Coin) – USD-pegged stablecoin
* EURC (Euro Coin) – EUR-pegged stablecoin
Supported Blockchain Networks:
* Ethereum (ETH)
* Polygon (MATIC)
* Solana (SOL)
* Base (Coinbase’s Layer 2)
* Arbitrum (Layer 2 scaling solution)
* Optimism (Layer 2 scaling solution)
* Avalanche C-Chain (AVAX)
Before the plugin can process payments, you must configure your Devdraft API credentials:
https://api.devdraft.ai)Configure transaction monitoring:
The plugin provides a simple shortcode for embedding payment forms anywhere on your WordPress site:
Basic Usage:
[devdraft_payment customer_first_name="John" customer_last_name="Doe" customer_email="[email protected]" amount="1000.00" orderid="ORDER-12345"]
With Custom Title:
[devdraft_payment customer_first_name="John" customer_last_name="Doe" customer_email="[email protected]" amount="1000.00" orderid="ORDER-12345" title="Complete Your Payment"]
Parameter
Required
Description
Example
customer_first_name
Yes
Customer’s first name
"John"
customer_last_name
Yes
Customer’s last name
"Doe"
customer_email
Yes
Customer’s email address
"[email protected]"
amount
Yes
Payment amount (decimal)
"1000.00"
orderid
Yes
Order ID for transaction mapping
"ORDER-12345"
title
No
Custom form title
"Payment Form"
The plugin provides comprehensive transaction tracking capabilities:
Payment Form Shortcode:
[devdraft_payment customer_first_name="John" customer_last_name="Doe" customer_email="[email protected]" amount="1000.00" orderid="ORDER-12345"]
Transaction Display Shortcode:
[devdraft_transaction transaction_id="txn_01HZXK8M9N2P3Q4R5S6T7U8V9W"]
Transaction Information Displayed:
* Transaction ID and Order ID for easy mapping
* Bridge Transfer ID
* Payment status with human-readable descriptions
* Amount and currency information
* Creation and update timestamps
* Last status check timestamp
* Customer information
* Source and destination details
* Bank transfer details (for bank payments)
* Wallet addresses (for stablecoin payments)
Transaction Statuses:
* AWAITING_FUNDS: Payment intent created, waiting for funds
* IN_REVIEW: Transaction is being reviewed
* FUNDS_RECEIVED: Funds have been received
* PAYMENT_SUBMITTED: Payment has been submitted for processing
* PAYMENT_PROCESSED: Payment has been successfully processed
* UNDELIVERABLE: Payment could not be delivered
* RETURNED: Payment was returned
* REFUNDED: Payment has been refunded
* CANCELED: Transaction was canceled
* ERROR: An error occurred during processing
* DISPUTED: Transaction is under dispute
Automatic Status Updates:
* Transactions are automatically stored in the database
* WordPress cron job checks transaction statuses hourly
* Status updates are fetched from the Devdraft API
* Real-time status tracking for active transactions (until PAYMENT_PROCESSED)
* Color-coded status indicators for easy identification
* Cron job stops checking once transactions reach PAYMENT_PROCESSED state
When a bank transfer payment is created successfully, the form displays:
When a stablecoin payment is created successfully, the form displays:
The plugin integrates with the Devdraft API endpoints to create payment intents for both bank transfers and stablecoin transactions.
Endpoint: POST /api/v0/payment-intents/bank
Purpose: Creates payment intents for traditional bank transfers (ACH, Wire, SEPA, SWIFT, SPEI)
Request Format:
json
{
"sourcePaymentRail": "ach|wire|sepa|swift|spei",
"sourceCurrency": "usd|eur",
"destinationCurrency": "usdc|eurc",
"destinationNetwork": "ethereum|polygon|solana|base|arbitrum|optimism|avalanche_c_chain",
"destinationAddress": "0x742d35Cc6634C0532925a3b8D4C9db96c4b4d8e1",
"amount": "1000.00",
"customer_first_name": "John",
"customer_last_name": "Doe",
"customer_email": "[email protected]",
"ach_reference": "ACH123456",
"wire_message": "Payment for invoice #12345",
"sepa_reference": "REF-123456789"
}
Response: Returns virtual account details for bank transfers including account numbers, routing numbers, IBAN, BIC, and reference numbers.
Endpoint: POST /api/v0/payment-intents/stablecoin
Purpose: Creates payment intents for stablecoin-to-stablecoin transfers and cross-chain conversions
Request Format:
json
{
"sourceCurrency": "usdc|eurc",
"sourceNetwork": "ethereum|polygon|solana|base|arbitrum|optimism|avalanche_c_chain",
"destinationCurrency": "usdc|eurc",
"amount": "100.50",
"customer_first_name": "John",
"customer_last_name": "Doe",
"customer_email": "[email protected]"
}
Response: Returns destination wallet address, network information, and transaction details for stablecoin transfers.
Both endpoints require the following headers:
* Content-Type: application/json
* x-client-key: [Your API Key]
* x-client-secret: [Your API Secret]
* idempotency-key: [Unique UUID v4]
For support and issues:
This plugin connects to external services provided by Devdraft to process payments and facilitate bank transfers and stablecoin transactions.
Devdraft API Service
* What it is: Devdraft provides payment processing infrastructure for bank transfers and stablecoin transactions
* What it’s used for: Creating payment intents, processing bank transfer instructions, facilitating stablecoin wallet transactions, and checking transaction statuses
* When data is sent:
* When customers submit payment forms through the plugin’s shortcode (creates payment intents)
* Periodically via WordPress cron jobs to check transaction statuses (configurable interval: 1 minute to 1 hour)
* API Endpoints Used:
* POST /api/v0/payment-intents/bank – Creates bank transfer payment intents
* POST /api/v0/payment-intents/stablecoin – Creates stablecoin payment intents
* GET /api/v0/payment-intents/{transaction_id}/status – Checks transaction status
* What data is sent:
* Customer information (first name, last name, email address)
* Payment amount and currency details
* Payment method selection (bank transfer or stablecoin)
* Bank transfer details (payment rail, reference numbers, wire messages)
* Stablecoin details (source/destination networks, wallet addresses)
* Transaction IDs for status checking
* Terms of Service: https://console.devdraft.ai/legal/terms-of-service
* Privacy Policy: https://console.devdraft.ai/legal/privacy-policy
Important Privacy Notice: This plugin integrates with Devdraft’s payment processing infrastructure. Customer data is transmitted to Devdraft’s secure API endpoints to facilitate payment processing. Users should review Devdraft’s terms of service and privacy policy to understand how customer data is handled. Site administrators are responsible for ensuring compliance with applicable privacy laws (GDPR, CCPA, etc.) and informing customers about data sharing practices.
This plugin includes the following third-party libraries with their source code:
QRCode.js Library
* Minified file: assets/js/qrcode.min.js
* Source code: assets/js/qrcode.js (included in plugin package)
* Original repository: https://github.com/davidshimjs/qrcodejs
* License: MIT License
* Purpose: Generates QR codes for cryptocurrency wallet addresses
* Version: 1.5.3
The unminified source code for qrcode.min.js is included in the plugin package as qrcode.js to comply with WordPress plugin guidelines for human-readable code. The original source is available at: https://github.com/davidshimjs/qrcodejs/blob/master/qrcode.js