Criando uma fatura
Solicitar
Parâmetros de consulta
Nome | Tipo de parâmetro | Valor padrão | Definição |
---|---|---|---|
amount* | string | Montante a ser pago.Se houver centavos no valor, envie -os com um separador '.' Exemplo: 10.28 | |
currency* | string | Código da moeda | |
order_id* | stringmin: 1max: 128alpha_dash | Pedido ID em seu sistemaO parâmetro deve ser uma sequência que consiste em caracteres alfabéticos, números, sublinhados e traços. Não deve conter espaços ou caracteres especiais.O order_id deve ser único nas faturas do comerciante/carteiras estáticas/pagamentos de recorrênciaQuando encontramos uma fatura existente com order_id , retornamos seus detalhes, uma nova fatura não será criada. | |
network | string | null | Código de rede blockchain |
url_return | stringmin: 6max: 255url | null | Antes de pagar, o usuário pode clicar no botão no formulário de pagamento e retornar à página da loja neste URL. |
url_success | stringmin: 6max: 255url | null | Após o pagamento bem -sucedido, o usuário pode clicar no botão no formulário de pagamento e retornar a este URL. |
url_callback | stringmin: 6max: 255url | null | URL para quais webhooks com status de pagamento serão enviados |
is_payment_multiple | boolean | true | Se o usuário tem permissão para pagar o valor restante. Isso é útil quando o usuário não pagou todo o valor da fatura por uma transação e você deseja permitir que ele pague até o valor total. Se você desativar esse recurso, a fatura finalizará depois de receber o primeiro pagamento e você receberá fundos para o seu saldo. |
lifetime | integermin: 300max: 43200 | 3600 | A vida útil da fatura emitida (em segundos) |
to_currency | string | O parâmetro é usado para especificar a moeda de destino para conversão do valor da fatura. Ao criar uma fatura, você fornece um valor e uma moeda, e a API converterá esse valor no valor equivalente em to_currency.Por exemplo, para criar uma fatura para 20 USD em bitcoin: amount: 20 currency: USD to_currency : BTCA API converterá 20 valor de USD em seu equivalente no BTC com base na taxa de câmbio atual e o usuário pagará no BTCO to_currency deve sempre ser o código de criptomoeda, não um código de moeda fiduciário. | |
subtract | integermin: 0max: 100 | 0 | Porcentagem da comissão de pagamento acusada do clienteSe você tiver uma taxa de 1%, se você criar uma fatura por 100 USDT com subtração = 100 (o cliente paga 100% da Comissão), o cliente terá que pagar 101 USDT. |
accuracy_payment_percent | numericmin: 0max: 5 | 0 | Imprecisão aceitável no pagamento.Por exemplo, se você passar no valor 5, a fatura será marcada como paga, mesmo que o cliente tenha pago apenas 95% do valor.O valor do pagamento real será creditado ao saldo |
additional_data | stringmax: 255 | null | Informações adicionais para você (não mostrado ao cliente) |
currencies | array | A matriz de moedas disponíveis das configurações do seu comerciante é usada (se o parâmetro não estiver definido, todas as criptomoedas suportadas serão usadas por padrão).As moedas disponíveis estão definidas na seção Configurações do comerciante. | Lista de moedas permitidas para pagamento. Isso é útil se você deseja limitar a lista de moedas que seus clientes podem usar para pagar faturas. Estrutura |
except_currencies | array | null | Lista de moedas excluídas para pagamento Estrutura |
course_source | stringmin: 4max: 20Valores disponíveis• Binance• BinanceP2P• Exmo• Kucoin | Se não foram aprovados, as taxas de câmbio do Cryptomus são usadas. | O serviço a partir do qual as taxas de câmbio são tomadas para conversão na fatura. |
from_referral_code | string | null | O comerciante que faz a solicitação se conecta a um referenciador por código.Por exemplo, você é um aplicativo que gera faturas através da API Cryptomus e seus clientes são outras lojas. Eles inserem sua chave da API e ID do comerciante em seu aplicativo e você envia solicitações com suas credenciais e passando seu código de referência.Assim, seus clientes se tornam referências na sua conta Cryptomus e você receberá renda de sua rotatividade. |
discount_percent | integermin: -99max: 100 | null | Números positivos: Permite definir um desconto. Para definir um desconto de 5% para o pagamento, você deve passar um valor: 5Números negativos: Permite definir comissão adicional personalizada.Para definir uma comissão adicional de 10% para o pagamento, você deve aprovar um valor: -10A porcentagem de desconto ao criar uma fatura é levada em consideração apenas se a fatura tiver uma criptomoeda específica. |
is_refresh | boolean | false | Usando este parâmetro, você pode atualizar a vida útil e obter um novo endereço para a fatura se a vida útil expirar.Para fazer isso, você precisa passar por todos os parâmetros necessários, e a fatura com ordem aprovada será atualizada.Somente address , payment_status e expired_at são alterados. Nenhum outro campo é alterado, independentemente dos parâmetros aprovados. |
Tipo de parâmetro
stringDefinição
Montante a ser pago.Se houver centavos no valor, envie -os com um separador '.'
Exemplo: 10.28Tipo de parâmetro
stringDefinição
Código da moedaTipo de parâmetro
stringmin: 1max: 128alpha_dashDefinição
Pedido ID em seu sistemaO parâmetro deve ser uma sequência que consiste em caracteres alfabéticos, números, sublinhados e traços. Não deve conter espaços ou caracteres especiais.O order_id deve ser único nas faturas do comerciante/carteiras estáticas/pagamentos de recorrênciaQuando encontramos uma fatura existente com order_id , retornamos seus detalhes, uma nova fatura não será criada.Tipo de parâmetro
stringDefinição
Código de rede blockchainTipo de parâmetro
stringmin: 6max: 255urlDefinição
Antes de pagar, o usuário pode clicar no botão no formulário de pagamento e retornar à página da loja neste URL.Tipo de parâmetro
stringmin: 6max: 255urlDefinição
Após o pagamento bem -sucedido, o usuário pode clicar no botão no formulário de pagamento e retornar a este URL.Tipo de parâmetro
stringmin: 6max: 255urlDefinição
URL para quais webhooks com status de pagamento serão enviadosTipo de parâmetro
booleanDefinição
Se o usuário tem permissão para pagar o valor restante. Isso é útil quando o usuário não pagou todo o valor da fatura por uma transação e você deseja permitir que ele pague até o valor total. Se você desativar esse recurso, a fatura finalizará depois de receber o primeiro pagamento e você receberá fundos para o seu saldo.Tipo de parâmetro
integermin: 300max: 43200Definição
A vida útil da fatura emitida (em segundos)Tipo de parâmetro
stringDefinição
O parâmetro é usado para especificar a moeda de destino para conversão do valor da fatura. Ao criar uma fatura, você fornece um valor e uma moeda, e a API converterá esse valor no valor equivalente em to_currency.Por exemplo, para criar uma fatura para 20 USD em bitcoin:
amount: 20
currency: USD
to_currency : BTCA API converterá 20 valor de USD em seu equivalente no BTC com base na taxa de câmbio atual e o usuário pagará no BTCO to_currency deve sempre ser o código de criptomoeda, não um código de moeda fiduciário.Tipo de parâmetro
integermin: 0max: 100Definição
Porcentagem da comissão de pagamento acusada do clienteSe você tiver uma taxa de 1%, se você criar uma fatura por 100 USDT com subtração = 100 (o cliente paga 100% da Comissão), o cliente terá que pagar 101 USDT.Tipo de parâmetro
numericmin: 0max: 5Definição
Imprecisão aceitável no pagamento.Por exemplo, se você passar no valor 5, a fatura será marcada como paga, mesmo que o cliente tenha pago apenas 95% do valor.O valor do pagamento real será creditado ao saldoTipo de parâmetro
stringmax: 255Definição
Informações adicionais para você (não mostrado ao cliente)Tipo de parâmetro
arrayDefinição
Lista de moedas permitidas para pagamento. Isso é útil se você deseja limitar a lista de moedas que seus clientes podem usar para pagar faturas. EstruturaTipo de parâmetro
arrayDefinição
Lista de moedas excluídas para pagamento EstruturaTipo de parâmetro
stringmin: 4max: 20
Valores disponíveis- Binance- BinanceP2P- Exmo- KucoinDefinição
O serviço a partir do qual as taxas de câmbio são tomadas para conversão na fatura.Tipo de parâmetro
stringDefinição
O comerciante que faz a solicitação se conecta a um referenciador por código.Por exemplo, você é um aplicativo que gera faturas através da API Cryptomus e seus clientes são outras lojas.
Eles inserem sua chave da API e ID do comerciante em seu aplicativo e você envia solicitações com suas credenciais e passando seu código de referência.Assim, seus clientes se tornam referências na sua conta Cryptomus e você receberá renda de sua rotatividade.Tipo de parâmetro
integermin: -99max: 100Definição
Números positivos:
Permite definir um desconto.
Para definir um desconto de 5% para o pagamento, você deve passar um valor: 5Números negativos:
Permite definir comissão adicional personalizada.Para definir uma comissão adicional de 10% para o pagamento, você deve aprovar um valor: -10A porcentagem de desconto ao criar uma fatura é levada em consideração apenas se a fatura tiver uma criptomoeda específica.Tipo de parâmetro
booleanDefinição
Usando este parâmetro, você pode atualizar a vida útil e obter um novo endereço para a fatura se a vida útil expirar.Para fazer isso, você precisa passar por todos os parâmetros necessários, e a fatura com ordem aprovada será atualizada.Somente address , payment_status e expired_at são alterados. Nenhum outro campo é alterado, independentemente dos parâmetros aprovados.
* - parâmetro obrigatório
Estrutura de Moedas
Nome | Definição |
---|---|
currency* | Código da moeda |
network | Código de rede blockchain |
Definição
Código da moedaDefinição
Código de rede blockchain
* - parâmetro obrigatório
Estrutura de except_currencies
Nome | Definição |
---|---|
currency* | Código da moeda |
network | Código de rede blockchain |
Definição
Código da moedaDefinição
Código de rede blockchain
* - parâmetro obrigatório
Exemplo de solicitação
Abaixo está um exemplo de amostra com o número mínimo necessário de parâmetros. Nesse caso, uma fatura será criada com o USD da moeda fiduciária. Na página de pagamento, o usuário poderá selecionar a criptomoeda e a rede para pagar esta conta.
curl https://api.cryptomus.com/v1/payment \
-X POST \
-H 'merchant: 8b03432e-385b-4670-8d06-064591096795' \
-H 'sign: fe99035f86fa436181717b302b95bacff1' \
-H 'Content-Type: application/json' \
-d '{
"amount": "15",
"currency": "USD",
"order_id": "1"
}'
CÓPIA DEResposta
Parâmetros de resposta
Nome | Definição |
---|---|
uuid | Fatura uuid |
order_id | Pedido ID em seu sistema |
amount | A quantidade da fatura |
payment_amount | Valor pago pelo cliente |
payer_amount | O valor em payer_currency que o cliente deve pagar, incluindo um desconto ou comissão adicional. |
discount_percent | Porcentagem de desconto ou comissão adicional, que foi aprovada nos parâmetros de solicitação |
discount | Quantidade real de desconto ou comissão adicional em criptomoeda.Por exemplo, se o valor da fatura for 15 USDT e desconto_percent for -5, o valor do desconto será -0,75isto é, amount + discount = payer_amount |
payer_currency | A moeda em que o cliente deve efetuar o pagamento. |
currency | Código da moeda da fatura |
merchant_amount | Montante em criptografia que será creditada ao seu saldo. Se a fatura Payer_currency não for especificada, o valor será nulo. |
network | Código de rede blockchain |
address | Endereço da carteira para pagamento |
from | O endereço da carteira a partir do qual o pagamento foi feito |
txid | Hash de transação |
payment_status | Status do pagamento Todos os status de pagamento |
url | Página de pagamento de URL |
expired_at | Timestamp de expiração da fatura |
is_final | Se a fatura está finalizada.Quando a fatura é finalizada, é impossível pagar uma fatura (é paga ou expirada) |
additional_data | Informações adicionais |
created_at | Data da criação da fatura. O fuso horário é UTC+3 |
updated_at | Última fatura Data atualizada. O fuso horário é UTC+3 |
Definição
Fatura uuidDefinição
Pedido ID em seu sistemaDefinição
A quantidade da faturaDefinição
Valor pago pelo clienteDefinição
O valor em payer_currency que o cliente deve pagar, incluindo um desconto ou comissão adicional.Definição
Porcentagem de desconto ou comissão adicional, que foi aprovada nos parâmetros de solicitaçãoDefinição
Quantidade real de desconto ou comissão adicional em criptomoeda.Por exemplo, se o valor da fatura for 15 USDT e desconto_percent for -5, o valor do desconto será -0,75isto é, amount + discount = payer_amountDefinição
A moeda em que o cliente deve efetuar o pagamento.Definição
Código da moeda da faturaDefinição
Montante em criptografia que será creditada ao seu saldo. Se a fatura Payer_currency não for especificada, o valor será nulo.Definição
Código de rede blockchainDefinição
Endereço da carteira para pagamentoDefinição
O endereço da carteira a partir do qual o pagamento foi feitoDefinição
Hash de transaçãoDefinição
Status do pagamento Todos os status de pagamentoDefinição
Página de pagamento de URLDefinição
Timestamp de expiração da faturaDefinição
Se a fatura está finalizada.Quando a fatura é finalizada, é impossível pagar uma fatura (é paga ou expirada)Definição
Informações adicionaisDefinição
Data da criação da fatura. O fuso horário é UTC+3Definição
Última fatura Data atualizada. O fuso horário é UTC+3
Exemplo de resposta
1{
2 "state": 0,
3 "result": {
4 "uuid": "26109ba0-b05b-4ee0-93d1-fd62c822ce95",
5 "order_id": "1",
6 "amount": "15.00",
7 "payment_amount": null,
8 "payer_amount": null,
9 "discount_percent": null,
10 "discount": "0.00000000",
11 "payer_currency": null,
12 "currency": "USD",
13 "merchant_amount": null,
14 "network": null,
15 "address": null,
16 "from": null,
17 "txid": null,
18 "payment_status": "check",
19 "url": "https://pay.cryptomus.com/pay/26109ba0-b05b-4ee0-93d1-fd62c822ce95",
20 "expired_at": 1689098133,
21 "status": "check",
22 "is_final": false,
23 "additional_data": null,
24 "created_at": "2023-07-11T20:23:52+03:00",
25 "updated_at": "2023-07-11T21:24:17+03:00"
26 }
27}
CÓPIA DEMais exemplos
Solicite dados para criar uma fatura para 20 USDT na rede Tron. A fatura terá um endereço no momento da criação.
1{
2 "amount": "20",
3 "currency": "USDT",
4 "order_id": "1",
5 "network": "tron"
6}
CÓPIA DESolicite dados para criar uma fatura para 25 dólares e permitir que os clientes paguem apenas pelo USDT em qualquer rede.
1{
2 "amount": "25",
3 "currency": "USD",
4 "order_id": "1",
5 "to_currency": "USDT"
6}
CÓPIA DESolicite dados para criar uma fatura para 25 dólares e permitir que os clientes paguem apenas pelo USDT na rede Tron. A fatura terá um endereço no momento da criação.
1{
2 "amount": "25",
3 "currency": "USD",
4 "order_id": "1",
5 "to_currency": "USDT",
6 "network": "tron"
7}
CÓPIA DESolicite dados para criar uma fatura para 20 USDT e permitir que os clientes paguem em todas as redes disponíveis
1{
2 "amount": "20",
3 "currency": "USDT",
4 "order_id": "1"
5}
CÓPIA DESolicite dados para criar uma fatura para 20 dólares e permitir que os clientes paguem apenas no Bitcoin. A fatura terá um endereço no momento da criação.
1{
2 "amount": "20",
3 "currency": "USD",
4 "order_id": "1",
5 "to_currency": "BTC"
6}
CÓPIA DESolicite dados para criar uma fatura para 0,5 BTC e permitir que os clientes paguem apenas no Bitcoin. A fatura terá um endereço no momento da criação.
1{
2 "amount": "0.5",
3 "currency": "BTC",
4 "order_id": "1"
5}
CÓPIA DEPossíveis erros
Erros de validação
código : 422
Exemplo de respostas:
Se algum parâmetro for necessário e não for passado:
1{
2 "state": 1,
3 "errors": {
4 "amount": ["validation.required"]
5 }
6}
CÓPIA DESe você forneceu o código de rede que não é suportado
1{
2 "state": 1,
3 "message": "The network was not found"
4}
CÓPIA DESe não suportarmos o código da moeda que você forneceu no parâmetro currency:
1{
2 "state": 1,
3 "message": "The currency was not found"
4}
CÓPIA DESe seus pagamentos estiverem bloqueados. Nesse caso, você precisa entrar em contato com o suporte.
1{
2 "state": 1,
3 "message": "You are forbidden"
4}
CÓPIA DESe não encontrarmos o serviço de pagamento da moeda que foi aprovada no parâmetro to_currency :
1{
2 "state": 1,
3 "message": "Not found service to_currency"
4}
CÓPIA DESe acidentalmente acontecer, algo acontecer ao converter para to_currency :
1{
2 "state": 1,
3 "message": "Error convert to_currency"
4}
CÓPIA DESe o valor do pagamento for menor que o valor mínimo suportado para criptomoeda, você receberá esta mensagem de erro:
1{
2 "state": 1,
3 "message": "Minimum amount 0.5 USDT"
4}
CÓPIA DESe o valor do pagamento for maior que o valor máximo suportado para criptomoeda, você receberá esta mensagem de erro:
1{
2 "state": 1,
3 "message": "Maximum amount 10000000 USDT"
4}
CÓPIA DESe você não tiver uma carteira de comerciante ativa com uma criptomoeda do pagamento, receberá este erro:
1{
2 "state": 1,
3 "message": "Wallet not found"
4}
CÓPIA DESe ocorrer um trabalho técnico e o pagamento estiver temporariamente indisponível, você poderá receber essas mensagens de erro:
1{
2 "state": 1,
3 "message": "Gateway error"
4}
CÓPIA DE
1{
2 "state": 1,
3 "message": "The terminal was not found"
4}
CÓPIA DE
1{
2 "state": 1,
3 "message": "Server error"
4}
CÓPIA DEErro do Servidor Interno
código : 500
Exemplo de respostas:
1{
2 "message": "Server error, #1",
3 "code": 500,
4 "error": null
5}
CÓPIA DE