Advanced Buttons
If you need a simpler checkout with less options check out our Simple Buttons.

The buttons are implemented as standard HTML POST forms to https://www.coinpayments.net/index.php. The fields available are documented below.
Field Name
Main Fields
cmd
DescriptionThis should always be set to '_pay'.
Required?Yes
Length
Limit
N/A
reset
DescriptionThis tells the server to delete any cached button data for the user.
Set the value to 1
Required?Yes
Length
Limit
1
merchant
DescriptionYour merchant ID (you can find this on the My Account page).
Required?Yes
Length
Limit
N/A
Item/Payment Description Fields
currency
DescriptionThe currency of the payment (BTC, LTC, USD, EUR, etc.).
Values supported: Any crypto or fiat currency on the Supported Coins page.
Note we in no way process any fiat currencies, they are simply convenience values so you don't have to convert to BTC or another coin yourself.
Required?Yes
Length
Limit
3
amountf
DescriptionThe amount (in the currency chosen) of the payment.
Required?Yes
Length
Limit
N/A
item_name
DescriptionThe name of the item being purchased.
Required?Yes
Length
Limit
128
item_number
DescriptionThis is a passthru variable for your own use. [visible to buyer]
Required?No
Length
Limit
128
invoice
DescriptionThis is a passthru variable for your own use. [not visible to buyer]
Required?No
Length
Limit
128
custom
DescriptionThis is a 2nd passthru variable for your own use. [not visible to buyer]
Required?No
Length
Limit
128
quantity
DescriptionLets you set a quantity of items. The purchase price will be quantity*amount from above.

Note: Must be 1 or higher, decimals are not supported.
Required?No
Length
Limit
N/A
allow_quantity
Description0 = Don't allow buyer to adjust quantity (default).
1 = Allow buyer to adjust quantity.
Required?No
Length
Limit
1
max_quantity
DescriptionSets a maximum quantity the buyer can select. 0 = No maximum (default).
Required?No
Length
Limit
N/A
allow_amount
Description0 = Don't allow buyer to adjust item price (default).
1 = Allow buyer to adjust item price.
Required?No
Length
Limit
1
allow_currency
Description0 = Don't allow buyer to adjust source currency (default).
1 = Allow buyer to adjust source currency. (requires allow_amount = 1 and minamountf = 0 or not set)
Required?No
Length
Limit
1
allow_currencies
DescriptionCurrency codes separated with a comma of coins you will accept. This is used to further restrict the coin selection from your list of enabled coins; for example if you are doing your own exchange rates and want to limit checkout to a user selected currency.
Example: BTC,LTC
Required?No
Length
Limit
255
minamountf
DescriptionSets a minimum amountf (mainly for when allow_amount = 1). Does not work with allow_currency = 1
Required?No
Length
Limit
N/A
on1
Description1st option name. This lets you pass through a buyer option like size or color.
Required?No
(unless ov1 set)
Length
Limit
128
ov1
Description1st option value. This would be the buyer's selection such as small, large, red, white.
Required?No
Length
Limit
128
on2
Description2nd option name. This lets you pass through a buyer option like size or color.
Required?No
(unless ov2 set)
Length
Limit
128
ov2
Description2nd option value. This would be the buyer's selection such as small, large, red, white.
Required?No
Length
Limit
128
Shipping Fields
want_shipping
Description1 = Want buyer's shipping information (default).
0 = Don't want buyer's shipping information.
Required?No
Length
Limit
1
shippingf
DescriptionCost of shipping the item.
Shipping cost is shippingf*quantity (unless shipping2 is set)
Required?No
Length
Limit
N/A
shipping2f
DescriptionCost of shipping each additional item.
Shipping cost is shippingf+((quantity-1)*shipping2f)
Required?No
Length
Limit
N/A
taxf
DescriptionAny tax to charge.
Required?No
Length
Limit
N/A
allow_ship_countries
DescriptionISO 3166 2 digit country codes separated with a comma of countries you will ship to. The will deny transactions if the shipping address is not in one of these countries.
Example: US,CA,GB
Required?No
Length
Limit
255
Miscellaneous Fields
ipn_url
DescriptionSets an IPN URL.
If not set or blank defaults to the IPN URL in your settings.
Required?No
Length
Limit
255
success_url
DescriptionSets a URL to go to if the buyer does complete checkout.
Required?No
Length
Limit
255
cancel_url
DescriptionSets a URL to go to if the buyer decides to not complete checkout.
Required?No
Length
Limit
255
enable_company
Description1 = Enable field for buyer to enter their company name.
0 = Don't want buyer's company name. (default)
Required?No
Length
Limit
1
allow_extra
DescriptionIf set to 1 will have a field where the buyer can leave you a note or extra information such as shipping address, size, or color.
If set to 2 it will make the note required and move it above the coin selection.
Required?No
Length
Limit
1
extra_desc
DescriptionIf set will change the name of the "Note to Seller" field to whatever you set.
Required?No
Length
Limit
64
lang
DescriptionAutomatically set the checkout language to this language code. For a list of supported codes check this page.
Required?No
Length
Limit
16
cstyle
DescriptionSets a coin selection style for the checkout page. (default: grid1)
Required?No
Length
Limit
32
Buyer Information
These fields can be used to pre-populate forms with any information you already know about your buyer.
first_name
DescriptionBuyer's first name.
Required?No
Length
Limit
32
last_name
DescriptionBuyer's last name.
Required?No
Length
Limit
32
company
DescriptionBuyer's company name.
Required?No
Length
Limit
128
email
DescriptionBuyer's email address.
Required?No
Length
Limit
128
address1
DescriptionStreet / address line 1
Required?No
Length
Limit
128
address2
DescriptionStreet / address line 2
Required?No
Length
Limit
128
city
DescriptionCity
Required?No
Length
Limit
64
state
DescriptionState / Province
Required?No
Length
Limit
64
zip
DescriptionZip / Postal Code
Required?No
Length
Limit
32
country
DescriptionCountry of Residence
This uses 2 digit ISO 3166 country codes.
Required?No
Length
Limit
2
phone
DescriptionPhone Number
Required?No
Length
Limit
32
Feel free to check out our example buttons.
Field NameDescriptionRequired?Length
Limit
Main Fields
cmdThis should always be set to '_pay'.YesN/A
resetThis tells the server to delete any cached button data for the user.
Set the value to 1
Yes1
merchantYour merchant ID (you can find this on the My Account page).YesN/A
Item/Payment Description Fields
currencyThe currency of the payment (BTC, LTC, USD, EUR, etc.).
Values supported: Any crypto or fiat currency on the Supported Coins page.
Note we in no way process any fiat currencies, they are simply convenience values so you don't have to convert to BTC or another coin yourself.
Yes3
amountfThe amount (in the currency chosen) of the payment.YesN/A
item_nameThe name of the item being purchased.Yes128
item_numberThis is a passthru variable for your own use. [visible to buyer]No128
invoiceThis is a passthru variable for your own use. [not visible to buyer]No128
customThis is a 2nd passthru variable for your own use. [not visible to buyer]No128
quantityLets you set a quantity of items. The purchase price will be quantity*amount from above.

Note: Must be 1 or higher, decimals are not supported.
NoN/A
allow_quantity0 = Don't allow buyer to adjust quantity (default).
1 = Allow buyer to adjust quantity.
No1
max_quantitySets a maximum quantity the buyer can select. 0 = No maximum (default).NoN/A
allow_amount0 = Don't allow buyer to adjust item price (default).
1 = Allow buyer to adjust item price.
No1
allow_currency0 = Don't allow buyer to adjust source currency (default).
1 = Allow buyer to adjust source currency. (requires allow_amount = 1 and minamountf = 0 or not set)
No1
allow_currenciesCurrency codes separated with a comma of coins you will accept. This is used to further restrict the coin selection from your list of enabled coins; for example if you are doing your own exchange rates and want to limit checkout to a user selected currency.
Example: BTC,LTC
No255
minamountfSets a minimum amountf (mainly for when allow_amount = 1). Does not work with allow_currency = 1NoN/A
on11st option name. This lets you pass through a buyer option like size or color.No
(unless ov1 set)
128
ov11st option value. This would be the buyer's selection such as small, large, red, white.No128
on22nd option name. This lets you pass through a buyer option like size or color.No
(unless ov2 set)
128
ov22nd option value. This would be the buyer's selection such as small, large, red, white.No128
Shipping Fields
want_shipping1 = Want buyer's shipping information (default).
0 = Don't want buyer's shipping information.
No1
shippingfCost of shipping the item.
Shipping cost is shippingf*quantity (unless shipping2 is set)
NoN/A
shipping2fCost of shipping each additional item.
Shipping cost is shippingf+((quantity-1)*shipping2f)
NoN/A
taxfAny tax to charge.NoN/A
allow_ship_countriesISO 3166 2 digit country codes separated with a comma of countries you will ship to. The will deny transactions if the shipping address is not in one of these countries.
Example: US,CA,GB
No255
Miscellaneous Fields
ipn_urlSets an IPN URL.
If not set or blank defaults to the IPN URL in your settings.
No255
success_urlSets a URL to go to if the buyer does complete checkout.No255
cancel_urlSets a URL to go to if the buyer decides to not complete checkout.No255
enable_company1 = Enable field for buyer to enter their company name.
0 = Don't want buyer's company name. (default)
No1
allow_extraIf set to 1 will have a field where the buyer can leave you a note or extra information such as shipping address, size, or color.
If set to 2 it will make the note required and move it above the coin selection.
No1
extra_descIf set will change the name of the "Note to Seller" field to whatever you set.No64
langAutomatically set the checkout language to this language code. For a list of supported codes check this page.No16
cstyleSets a coin selection style for the checkout page. (default: grid1)No32
Buyer Information
These fields can be used to pre-populate forms with any information you already know about your buyer.
first_nameBuyer's first name.No32
last_nameBuyer's last name.No32
companyBuyer's company name.No128
emailBuyer's email address.No128
address1Street / address line 1No128
address2Street / address line 2No128
cityCityNo64
stateState / ProvinceNo64
zipZip / Postal CodeNo32
countryCountry of Residence
This uses 2 digit ISO 3166 country codes.
No2
phonePhone NumberNo32
Feel free to check out our example buttons.