> ## Documentation Index
> Fetch the complete documentation index at: https://docs.acedata.cloud/llms.txt
> Use this file to discover all available pages before exploring further.

# Pagar um pedido da plataforma AceDataCloud

> Platform API guide - Ace Data Cloud

Crie ou atualize uma sessão de pagamento para um pedido `Pending`. A ação de pagamento acessará o canal de pagamento e poderá alterar o status do pedido; antes da chamada, é necessário confirmar o ID do pedido, o valor e o método de pagamento.

## Visão geral da API

| Item | Conteúdo |
| - | - |
| Método | `POST` |
| URL | `https://platform.acedata.cloud/api/v1/orders/{order_id}/pay/` |
| Autenticação | Pagamentos hospedados com redirecionamento podem ser anônimos; outros métodos exigem sessão de login ou Account Token |
| Body | JSON, pedidos não pagos devem fornecer `pay_way` |

## Limites do pagamento anônimo

O acesso anônimo é usado para cenários em que a sessão de login é perdida após abrir um link de pagamento copiado, não precisa nem deve transportar um Account Token de longa duração. Chamadas anônimas:

* Permitem apenas métodos de pagamento hospedados com redirecionamento configurados pelo servidor;
* Usam fixamente a página de pagamento para desktop;
* Não podem resgatar pedidos de valor zero;
* Estão sujeitas a limitação de taxa por IP e por pedido;
* Retornam uma projeção mínima do pedido, sem incluir conta, Application ou metadata interna.

Chamadores autenticados devem ser o proprietário do pedido ou um superadministrador. Métodos que exigem contexto do usuário, como X402 e resgate de recompensas, não podem ser chamados anonimamente.

## Exemplo de solicitação

```shell theme={null}
export ORDER_ID='ID do seu pedido Pending'

curl -X POST \
  "https://platform.acedata.cloud/api/v1/orders/${ORDER_ID}/pay/" \
  -H 'Content-Type: application/json' \
  -d '{"pay_way":"Stripe"}'
```

Métodos de pagamento que exigem autenticação:

```shell theme={null}
export PLATFORM_TOKEN='seu token de conta'

curl -X POST \
  "https://platform.acedata.cloud/api/v1/orders/${ORDER_ID}/pay/" \
  -H "Authorization: Bearer ${PLATFORM_TOKEN}" \
  -H 'Content-Type: application/json' \
  -d '{"pay_way":"X402"}'
```

`pay_way` usa valores reais suportados pelo modelo de pedido, por exemplo `WechatPay`, `AliPay`, `Stripe`, `Card`, `Airwallex`, `X402`, `PayPal`, `AppleIAP`, `Reward`, `BankTransfer`. Nem todos os valores estão disponíveis para solicitações anônimas ou para todos os sites.

## Descrição da resposta

A resposta bem-sucedida é o objeto de pedido atualizado, normalmente fornecendo o ponto de entrada para a próxima etapa por meio de `pay_url`; diferentes métodos de pagamento também podem retornar, em campos controlados, as informações necessárias para o cliente continuar o pagamento. Respostas anônimas usam uma lista mínima de campos permitidos, enquanto o proprietário autenticado obtém os detalhes completos.

Não dependa de nomes de campos antigos como `payment_url`, `qr_code_url` ou `payment_method`; o contrato atual de Order usa `pay_url` e `pay_way`.

## Compras no app iOS

O proprietário autenticado do pedido pode passar `pay_way: "AppleIAP"`. Essa solicitação atualiza o pedido pendente com base em `metadata.apple_price` do plano selecionado e remove descontos, não gera cobrança, não concede créditos e não retorna um link de pagamento. Pedidos pendentes antigos devem primeiro concluir esta etapa e, em seguida, iniciar o pagamento nativo da Apple. Apenas um plano Usage com um produto Apple e preço configurados é compatível; planos não compatíveis ou pedidos em lote retornam `400`.

Após o pagamento nativo da Apple, envie `transaction_id` por meio de `/api/v1/orders/{id}/apple-verify/` para concluir a verificação no servidor e a concessão de créditos. A quantidade de créditos vem do plano; o valor usa o preço predefinido independente em dólares americanos da Apple, sem acumular descontos de assinatura ou acréscimos do site, e o valor cobrado na moeda local em outras regiões prevalece conforme a página de confirmação da Apple.

## Erros e tentativas

* O pedido não está `Pending`: retorna `400`; não crie repetidamente sessões de pagamento.
* `pay_way` não foi fornecido: pedidos com valor diferente de zero retornam `400`.
* Uma chamada anônima usou um método não permitido ou um pedido de valor zero: retorna `403`, faça nova tentativa como proprietário após fazer login.
* Autenticado, mas não é o proprietário do pedido: retorna `403`.
* Falha do canal de pagamento: não reenvie cegamente; primeiro consulte os detalhes do pedido e tente novamente somente após confirmar que ele ainda está `Pending`.

## APIs relacionadas

* [Criar pedido de recarga](https://platform.acedata.cloud/documents/platform-order-create)
* [Obter detalhes do pedido](https://platform.acedata.cloud/documents/platform-order-detail)
* [Atualizar status do pedido](https://platform.acedata.cloud/documents/platform-order-refresh)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.