Aller au contenu principal
Sur cette page

Commencez avec PIX#

Cette page fournit un guide complet pour intégrer avec succès PIX à DEUNA.

PIX est un mode de paiement brésilien (A2A) offrant des transactions en temps réel sécurisées et fiables dans une solution transparente pour vos besoins de traitement de paiement.

Comment ça marche#

PIX est un mode de paiement instantané développé par la Banque centrale du Brésil, exploité par les banques et les portefeuilles numériques.

Il est rapidement devenu l'un des modes de paiement les plus utilisés dans le pays. PIX offre des transactions en temps réel, 24/7, offrant commodité et rapidité pour les entreprises et les consommateurs.

Processus de paiement PIX

Il s'agit d'un processus standard pour un achat PIX Pay à Deuna :

  1. Un utilisateur choisit PIX comme mode de paiement sur votre site Web ou votre application.
  2. Votre site Web ou votre application génère et affiche un code QR unique associé à la transaction.
  3. L'utilisateur accède à son application bancaire en balançant le code QR.
  4. L'utilisateur confirme le paiement.
  5. La transaction est traitée.

Ce flux fluide et efficace fait de PIX une solution idéale pour les entreprises qui cherchent à offrir des options de paiement rapides, sécurisées et sans friction.

Exigences#

Environnements:

Collecte par les postiers : PIX - Brésil , DEUNA , API Postman

DEUNA fournit des paramètres spécifiques à PIX pour la gestion des utilisateurs, des paiements et des remboursements.

Étapes d'intégration#

Maintenant que les exigences techniques sont définies, vous pouvez démarrer l'intégration.

1. Créer un utilisateur

Créez un utilisateur avec DEUNA pour obtenir un jeton d'autorisation pour effectuer l'achat plus tard.

Faites une demande au Créer un utilisateur endpoint.

L'API retourne un utilisateur token, qui est nécessaire pour suivre les prochaines étapes.

Si le courriel n'existe pas, un nouvel utilisateur est créé.

Si le courriel utilisé existe déjà :

  1. L'API renvoie le message user already exists.
  2. Demande au Bureau du Procureur et login avec le OTP pour obtenir un nouvel utilisateur token.
  3. Vous pouvez maintenant utiliser letoken pour les prochaines étapes.

Le document utilisateur peut être CPF ou CNPJ. Voici quelques exemples pour les deux scénarios :

  • CPF: 01354778911
  • CNPJ: 52672745000112

2. Faire un achat PIX

Faites une demande au Achat V2 endpoint.

Pour les achats PIX, DEUNA a généré les paramètres suivants :

  • Codes QR
  • Jeton (copier-coller)
  • Date d'expiration indiquée dans la demande

Ces paramètres se trouvent dans la authorization_bank_transfer node.

Une fois expiré, le client ne peut plus utiliser PIX pour payer.

Dans la réponse:

  • payment.status informe l'état du paiement
  • order.status informe le statut de l'ordonnance.

3. Obtenir des notifications d'achat

Vous recevrez les avis de statut suivants après avoir traité un achat :

  • PIX Créé : Les statuts sont : payment.status et order.status = pending.Cela indique que le PIX a été généré et attend le paiement du client.
  • PIX Expiré : Si le client n'agit pas sur le code QR, alors la commande expirera, alors les statuts sont payment.status = denied. et order.status = expired.
  • PIX traité : Lorsque le paiement PIX est effectué avec succès. Les statuts possibles sont: payment.status = traitées et order.status = succeeded.
  • PIX Refusé : Ce scénario se produit lorsque le client effectue le paiement PIX, mais il a déjà expiré à la Banque centrale du Brésil. Les statuts possibles sont: payment.status = denied et le order.status = pending. Dans ces cas, l'ordre reste dans un état en attente, permettant à l'utilisateur de compléter le paiement soit avec un autre mode de paiement, soit de réessayer la transaction PIX.

Demande

JSON
{
    "order_type": "DEUNA_CHECKOUT",
    "payer_info": {
        "email": "{{$randomEmail}}",
        "save_user_info": false
    },
    "callback_urls": {
        "on_success": "url",
        "on_reject": "url",
        "on_canceled": "url",
        "on_failed": "url"
    },
    "payment_source": {
        "method_type": "bank_transfer", //use bank_transfer for PIX payment method
        "processor": "asaas_pix", //ask to your SE for the processor name
        "method_type_specific_fields": {
            "description": "Test PIX DEUNA",
            "expiration_date": "2024-08-30 12:00:00" //always yyyy/MM/dd hh:mm:ss in Local Brazil Time. Add extra time for PIX expiration window
        }
    },
    "order": {
        "order_id": "{{$randomUUID}}",
        "store_code": "all",
        "currency": "BRL",
        "items_total_amount": 2175,
        "tax_amount": 0,
        "sub_total": 2175,
        "shipping_amount": 100,
        "shipping_tax_amount": 0,
        "total_tax_amount": 65,
        "total_amount": 2240,
        "expires_at":"2024-08-30T16:00:00.000Z", // 15m min 60days max //e.g. UTC 2024-08-30T16:00:00.000Z
        "shipping_methods": [
            {
                "code": "12345JR",
                "name": "Fast Delivery",
                "cost": 250
            }
        ],
        "discounts": [],
        "metadata": {
            "key1": "identificador 1",
            "key2": "identificador 2"
        },
        "items": [
            {
                "id": "{{$randomUUID}}",
                "name": "Premium Baby Beef",
                "description": "Premium Baby Beef Estância 92 Angus Resfriado",
                "total_amount": {
                    "original_amount": 2100,
                    "amount": 2050,
                    "total_discount": 100,
                    "currency": "BRL",
                    "currency_symbol": "R$"
                },
                "unit_price": {
                    "amount": 1050,
                    "currency": "BRL",
                    "currency_symbol": "R$"
                },
                "tax_amount": {
                    "amount": 50,
                    "currency": "BRL",
                    "currency_symbol": "R$"
                },
                "quantity": 2,
                "image_url": "https://media-cdn.tripadvisor.com/media/photo-s/1a/e2/c6/68/porcion-de-papas-a-la.jpg",
                "taxable": true
            },
            {
                "id": "{{$randomUUID}}",
                "name": "Coração Da Alcatra",
                "description": "Coração Da Alcatra (bombom) Estância 92 Resfriado",
                "total_amount": {
                    "original_amount": 75,
                    "amount": 90,
                    "total_discount": 0,
                    "currency": "BRL",
                    "currency_symbol": "R$"
                },
                "unit_price": {
                    "amount": 75,
                    "currency": "BRL",
                    "currency_symbol": "R$"
                },
                "tax_amount": {
                    "amount": 15,
                    "currency": "BRL",
                    "currency_symbol": "R$"
                },
                "quantity": 1,
                "image_url": "https://media-cdn.tripadvisor.com/media/photo-s/1a/e2/c6/68/porcion-de-papas-a-la.jpg",
                "taxable": true
            }
        ],
        "shipping_address": {
            "id": "204",
            "first_name": "Joao",
            "last_name": "Silva",
            "email": "{{$randomEmail}}",
            "address1": "Av. Pres. Juscelino Kubitschek",
            "address2": "3ro. Andar",
            "zipcode": "04543-011",
            "city": "São Paulo",
            "state_name": "SP",
            "country_code": "BRA",
            "identity_document": "52672745000112",
            "identity_document_type": "CNPJ", //CPF or CNPJ E.g. 01354778911 or 52672745000112
            "phone": "+5511985176644",
            "lat": -22.943934,
            "lng": -43.182984,
            "additional_description": "confirmar",
            "address_type": "casa"
        },
        "billing_address": {
            "id": "179",
            "first_name": "Joao",
            "last_name": "Silva",
            "email": "{{$randomEmail}}",
            "address1": "Av. Pres. Juscelino Kubitschek",
            "address2": "3ro. Andar",
            "zipcode": "04543-011",
            "city": "São Paulo",
            "state_name": "SP",
            "country_code": "BRA",
            "identity_document": "52672745000112",
            "identity_document_type": "CNPJ", //CPF or CNPJ E.g. 01354778911 or 52672745000112
            "phone": "+5511985176644",
            "lat": -23.555425,
            "lng": -46.677048,
            "address_type": "casa"
        },
        "user_instructions": "pesar antes de enviar",
        "browser_details": {
            "screen_height": 1000,
            "screen_width": 2000
        },
        "webhook_urls": {
            "notify_order": "https://webhook.site/5f19a36f-8931-4317-a850-fe102f93edbb",
            "apply_coupon": "",
            "remove_coupon": "",
            "get_shipping_methods": "",
            "update_shipping_method": "",
            "Tarifa de envio": ""
        }
    }
}

Renvoie la commande traitée avec son

JSON
{
    "order_type": "DEUNA_CHECKOUT",
    "order_token": "410c9684-9046-42aa-8507-50779eaae223",
    "order": {
        "order_id": "717981f0-bade-4c29-9d2b-302763e655cb",
        "store_code": "all",
        "currency": "BRL",
        "tax_amount": 0,
        "display_tax_amount": "",
        "shipping_amount": 100,
        "display_shipping_amount": "BRL 1,00",
        "items_total_amount": 2175,
        "display_items_total_amount": "BRL 21,75",
        "sub_total": 2175,
        "display_sub_total": "BRL 21,75",
        "total_amount": 2240,
        "display_total_amount": "BRL 22,40",
        "items": [
            {
                "id": "73a8886c-7dfb-4f49-a13c-d021adcf3e0f",
                "name": "Premium Baby Beef",
                "description": "Premium Baby Beef Estância 92 Angus Resfriado",
                "options": "",
                "total_amount": {
                    "amount": 2050,
                    "original_amount": 2100,
                    "display_amount": "BRL 20,50",
                    "display_original_amount": "BRL 21,00",
                    "currency": "BRL",
                    "currency_symbol": "R$",
                    "total_discount": 100,
                    "display_total_discount": "BRL 1,00"
                },
                "unit_price": {
                    "amount": 1050,
                    "display_amount": "BRL 10,50",
                    "currency": "BRL",
                    "currency_symbol": "R$"
                },
                "tax_amount": {
                    "amount": 50,
                    "display_amount": "BRL 0,50",
                    "currency": "BRL",
                    "currency_symbol": "R$"
                },
                "quantity": 2,
                "uom": "",
                "upc": "",
                "sku": "",
                "isbn": "",
                "brand": "",
                "manufacturer": "",
                "category": "",
                "color": "",
                "size": "",
                "weight": {
                    "weight": 0,
                    "unit": ""
                },
                "image_url": "https://media-cdn.tripadvisor.com/media/photo-s/1a/e2/c6/68/porcion-de-papas-a-la.jpg",
                "details_url": "",
                "type": "",
                "taxable": true,
                "discounts": [],
                "included_in_subscription": false,
                "subscription_id": "00000000-0000-0000-0000-000000000000",
                "item_details": []
            },
            {
                "id": "5f0ab6cc-1c90-432d-a805-2cc4032f7b08",
                "name": "Coração Da Alcatra",
                "description": "Coração Da Alcatra (bombom) Estância 92 Resfriado",
                "options": "",
                "total_amount": {
                    "amount": 90,
                    "original_amount": 75,
                    "display_amount": "BRL 0,90",
                    "display_original_amount": "BRL 0,75",
                    "currency": "BRL",
                    "currency_symbol": "R$",
                    "total_discount": 0,
                    "display_total_discount": "BRL 0,00"
                },
                "unit_price": {
                    "amount": 75,
                    "display_amount": "BRL 0,75",
                    "currency": "BRL",
                    "currency_symbol": "R$"
                },
                "tax_amount": {
                    "amount": 15,
                    "display_amount": "BRL 0,15",
                    "currency": "BRL",
                    "currency_symbol": "R$"
                },
                "quantity": 1,
                "uom": "",
                "upc": "",
                "sku": "",
                "isbn": "",
                "brand": "",
                "manufacturer": "",
                "category": "",
                "color": "",
                "size": "",
                "weight": {
                    "weight": 0,
                    "unit": ""
                },
                "image_url": "https://media-cdn.tripadvisor.com/media/photo-s/1a/e2/c6/68/porcion-de-papas-a-la.jpg",
                "details_url": "",
                "type": "",
                "taxable": true,
                "discounts": [],
                "included_in_subscription": false,
                "subscription_id": "00000000-0000-0000-0000-000000000000",
                "item_details": []
            }
        ],
        "discounts": [],
        "shipping_address": {
            "id": 204,
            "user_id": "",
            "first_name": "Joao",
            "last_name": "Silva",
            "phone": "+5511985176644",
            "identity_document": "52672745000112",
            "lat": -22.943934,
            "lng": -43.182984,
            "address1": "Av. Pres. Juscelino Kubitschek",
            "address2": "3ro. Andar",
            "city": "São Paulo",
            "zipcode": "04543-011",
            "state_name": "SP",
            "country_code": "BRA",
            "additional_description": "confirmar",
            "address_type": "casa",
            "is_default": false,
            "created_at": "0001-01-01T00:00:00Z",
            "updated_at": "2024-08-26T15:25:43.635770405Z",
            "identity_document_type": "CNPJ"
        },
        "shipping_options": null,
        "user_instructions": "pesar antes de enviar",
        "metadata": {
            "key1": "identificador 1",
            "key2": "identificador 2"
        },
        "status": "pending",
        "payment": {
            "data": {
                "amount": {
                    "amount": 2240,
                    "currency": "BRL"
                },
                "metadata": {
                    "authorization_code": "",
                    "reference_transaction_id": ""
                },
                "from_card": {
                    "card_brand": "",
                    "first_six": "",
                    "last_four": "",
                    "bank_name": "",
                    "country_iso": ""
                },
                "updated_at": "2024-08-26 15:25:44.243843116 +0000 UTC",
                "method_type": "bank_transfer",
                "merchant": {
                    "store_code": "all",
                    "id": "c2273d9a-94c0-40a6-9b39-2556b4fadd1b"
                },
                "created_at": "2024-08-26 15:25:44.243356589 +0000 UTC",
                "id": "717981f0-bade-4c29-9d2b-302763e655cb",
                "processor": "asaas_pix",
                "customer": {
                    "email": "Antwan61@gmail.com",
                    "id": "ffd0b445-4537-4316-8677-423deb770f24",
                    "first_name": "",
                    "last_name": ""
                },
                "status": "pending",
                "reason": "",
                "external_transaction_id": "JEANROLD00000000495401ASA",
                "authorization_bank_transfer": {
                    "qr": "iVBORw0KGgoAAAANSUhEUgAAAZ8AAAGfCAIAAAAPgEjDAAAP3UlEQVR42u3aQXIjORADQP3/0943zIqFAqnEVR6rmywmHYH5/ImIvJiPJRARuomI0E1EhG4iInQTEaGbiNBNRIRuIiJ0ExGhm4gI3URE6CYidBMRoZuICN1EROgmIkI3ERG6iQjdREToJiJCNxERuomI0E1EhG4iQrf/87tSueKZ/+mL/ukhv3nBb17/4L89+L4lY3ZwQ7/ZhYPf+8Lpphvd6EY3utGNbnSjG93oRje60Y1udKMb3eh2k25bv3luZA8Ox5zIB4cyxkrsTMbOc2x/Y0NYcrrpRje60Y1udKMb3ehGN7rRjW50oxvd6EY3uv2MbgfruZLD0GnfjV1e7N/GasGDF8Pc5X3j6aYb3ehGN7rRjW50oxvd6EY3utGNbnSjG93oRresbnO9WEy3WD031xLGysqSL4plTka60Y1udKMb3ehGN7rRjW50oxvd6EY3utGNbnR7RbeDlVNJ7xmr9mIFXMm1UVKDxkblm2emG93oRje60Y1udKMb3ehGN7rRjW50oxvd6Ea3Vd1iv7lkgucGa2ugY831Vhl9RZE9J9QVp5tudKMb3ehGN7rRjW50oxvd6EY3utGNbnSj27u6xbo8n/rUp+FP72jq6eZTn/qUbnTzqU99Sje6+dSndKMb3XzqU7pV67aVWKm09UVznWlnlxfrWzvnKnb4Y93lmgx0oxvd6EY3utGNbnSjG93oRje60Y1udKMb3S7W7eAE5zqXlCNbdVXJGx0cpM4ub+5OveLPArrRjW50oxvd6EY3utGNbnSjG93oRje60Y1udMvqdqObcy1hTIq5Hz647Ae3+wo4SsrZb35VrgWmG93oRje60Y1udKMb3ehGN7rRjW50oxvd6PaObrFZ2ZqkuWnYmtEHmuu5Zd+6craeees+phvd6EY3utGNbnSjG93oRje60Y1udKMb3ej2M7qVFFKxiq2kYdyq2Do70znrY138XDkbq5vpRje60Y1udKMb3ehGN7rRjW50oxvd6EY3utEt28fFFnrrIWMt4dxTxRrVrdWI3amdcMxdonSjG93oRje60Y1udKMb3ehGN7rRjW50oxvdflW3ueXYmoa5/rHkeMeWrsT6gz+8tQudd3mJyHSjG93oRje60Y1udKMb3ehGN7rRjW50oxvdunWbG/et4ejcwoNjdxCdkrScqw7O5h4ydj/RjW50oxvd6EY3utGNbnSjG93oRje60Y1udPtV3UoaqNhBip2cEmQP1nOdteCcX7F/u/VFayeFbnSjG93oRje60Y1udKMb3ehGN7rRjW50o9s7upVsf2yTDpJUcghjjerW/sZu6y0a5u6nksqYbnSjG93oRje60Y1udKMb3ehGN7rRjW50o9uv6nbwqWLTX/JUseo2Vt6VELx11c1tSsk6041udKMb3ehGN7rRjW50oxvd6EY3utGNbnSj2+p5nmtFY01fZ/F30K+D4z73VFeWhvd303SjG93oRje60Y1udKMb3ehGN7rRjW50oxvd3tXtvdLwM5bOOrLkjebed640LOF7rsntvMzoRje60Y1udKMb3ehGN7rRjW50oxvd6EY3uj2k2zfTH+tMtzY4tnRbnVpJw1iyKXPFfaxB3hKKbnSjG93oRje60Y1udKMb3ehGN7rRjW50o9u7usXO5Na6x+b7CqBj63zFqeusMg/eMXMTSze60Y1udKMb3ehGN7rRjW50oxvd6EY3utGNbsOtWaxEi03D1rLHrqvPUg7OxlwNurWwB4/G1p8ydKMb3ehGN7rRjW50oxvd6EY3utGNbnSjG93e1e3GCjW2hbHzXKLb3A0Ua0WvsO89KOlGN7rRjW50oxvd6EY3utGNbnSjG93oRje6PaTb3EDfWKId3OCtx4gd4K1nLvnerfv4ijNIN7rRjW50oxvd6EY3utGNbnSjG93oRje60e1d3Q4e4LldmWvrYg3j8xM8t6FbPX7JaZ97qtjBoRvd6EY3utGNbnSjG93oRje60Y1udKMb3ej2kG4HX3jutHfWZCUruTaFlffEFXNV8vdHCWd0oxvd6EY3utGNbnSjG93oRje60Y1udKMb3d7VLbZnB/9tSfO19b5z+zt3bVxhQSejD5wjutGNbnSjG93oRje60Y1udKMb3ehGN7rRjW7dun06MvfMscWJLWxndVuyOHO7HztHsevq/c6UbnSjG93oRje60Y1udKMb3ehGN7rRjW50o1u6My35oticbcExV1eVHNG5lbziTp1rRec609gtQje60Y1udKMb3ehGN7rRjW50oxvd6EY3utHtId3eqwVjmsfe9+AE3/iCc69f8kZb9q0dHLrRjW50oxvd6EY3utGNbnSjG93oRje60Y1uN+nW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",
                    "token": "00020126760014br.gov.bcb.pix013689bd5e4e-2393-4bd1-b973-2010c3169ea20214Test PIX DEUNA520400005303986540522.405802BR5911Jean Roldan6014Rio de Janeiro62290525JEANROLD00000000495401ASA6304507E",
                    "expiration_date": "2024-08-30 12:00:00"
                },
                "merchant_payment_processor_name": "",
                "authorization_code": "",
                "installment_interest_calculations": null
            }
        },
        "gift_card": [],
        "redirect_url": "",
        "webhook_urls": null,
        "total_discount": 0,
        "display_total_discount": "BRL 0,00",
        "shipping": null,
        "cash_change": 0,
        "shipping_method": null,
        "shipping_methods": [],
        "timezone": "",
        "scheduled_at": "",
        "billing_address": {
            "id": 179,
            "user_id": "",
            "first_name": "Joao",
            "last_name": "Silva",
            "phone": "+5511985176644",
            "identity_document": "52672745000112",
            "lat": -23.555425,
            "lng": -46.677048,
            "address1": "Av. Pres. Juscelino Kubitschek",
            "address2": "3ro. Andar",
            "city": "São Paulo",
            "zipcode": "04543-011",
            "state_name": "SP",
            "country_code": "BRA",
            "additional_description": "",
            "address_type": "casa",
            "is_default": false,
            "created_at": "0001-01-01T00:00:00Z",
            "updated_at": "2024-08-26T15:25:43.635771056Z",
            "email": "Gerry_Kautzer42@hotmail.com",
            "identity_document_type": "CNPJ"
        },
        "payment_link": "",
        "display_shipping_tax_amount": "BRL 0,00",
        "display_total_tax_amount": "BRL 0,65",
        "shipping_tax_amount": 0,
        "total_tax_amount": 65,
        "user_id": "",
        "include_payment_options": [],
        "redirect_urls": {
            "success": "",
            "pending": "",
            "error": "",
            "fallback": "",
            "close": ""
        },
        "created_at": "",
        "updated_at": "",
        "payer_info": null,
        "discount_amount": 0,
        "shipping_discount_amount": 0,
        "device_fingerprint": "",
        "expired_at": "",
        "version": "0",
        "fraud": null,
        "display_total_interest_amount": "",
        "payment_method": "",
        "token": "",
        "statement_descriptor": ""
    }

Gérer les commandes PIX#

Vous pouvez gérer vos commandes PIX, y compris les remboursements et le statut de la commande.

Remboursement d'un paiement PIX

Lors du traitement d'un remboursement, vous pouvez choisir entre un remboursement complet, un remboursement partiel ou un remboursement partiel multiple:

  • Remboursement intégral Un remboursement égal au montant de la transaction initiale.
  • Remboursement partiel Remboursement d'une partie spécifique du montant initial, qui est inférieure au montant de l'opération initiale
  • Remboursement partiel multiple: Un ensemble de plus d'un remboursement pour la même transaction, qui peut être égal ou inférieur au montant total de la transaction initiale.

Demande

JSON
{
    "reason": "",
    "amount": 2240
}

Renvoie la commande traitée avec son

JSON
{
    "data": {
        "refund_id": "961bb161-5340-4d36-a08d-7d767458e0af",
        "status": "refunding",
        "refund_amount": {
            "amount": "2240",
            "currency": "BRL"
        },
        "order": null,
        "refunds": [
            {
                "refund_id": "961bb161-5340-4d36-a08d-7d767458e0af",
                "refund_amount": {
                    "amount": "2240",
                    "currency": "BRL"
                },
                "refunded_on": "2024-08-17T00:05:05Z",
                "status": "refunding",
                "external_transaction_id": "c0884fd3-8c7f-45eb-b4f5-caf89ba44d4b"
            }
        ]
    },
    "error": null
}

Remboursements partiels multiples, avec lesrefund_id pour chaque restitution demandée

JSON
{
    "data": {
        "invoice": {
            "token": "6c2ccbe0-ec31-40d0-b21d-45e2a33f604a",
            "order_id": "e54d8720-d4e6-4922-ad45-6cc1c9724fd8",
            "amount": 5025
        },
        "refund_id": "bdc2f63e-230c-46f6-9c9b-2ba2b5817cc9",
        "status": "refunding",
        "external_transaction_id": "50722010-fd12-4718-8383-30aefa25f3ad",
        "refund_amount": {
            "amount": 4025,
            "currency": "BRL"
        },
        "refunds": [
            {
                "refund_id": "8e41fe00-dd9f-4505-906d-7b1dc9a4016c",
                "status": "refunding",
                "external_transaction_id": "7db40b18-0926-4d31-9c84-43df7c55c56f",
                "refund_amount": {
                    "amount": 1000,
                    "currency": "BRL"
                },
                "refunded_on": "2025-01-06T21:32:13Z"
            },
            {
                "refund_id": "bdc2f63e-230c-46f6-9c9b-2ba2b5817cc9",
                "status": "refunding",
                "external_transaction_id": "50722010-fd12-4718-8383-30aefa25f3ad",
                "refund_amount": {
                    "amount": 4025,
                    "currency": "BRL"
                },
                "refunded_on": "2025-01-06T21:32:52Z"
            }
        ],
        "request": {
            "raw_request": {
                "description": "refund",
                "value": 40.25
            },
            "raw_response": {
                "addressKey": null,
                "addressKeyType": null,
                "canBeCanceled": false,
                "canBeRefunded": false,
                "changeValue": null,
                "chargedFeeValue": 0,
                "conciliationIdentifier": null,
                "dateCreated": "2025-01-06 18:32:51",
                "description": "refund",
                "effectiveDate": "2025-01-06 18:32:51",
                "endToEndIdentifier": null,
                "externalAccount": {
                    "account": "000000",
                    "accountDigit": "0",
                    "accountType": "PAYMENT_ACCOUNT",
                    "addressKey": "89bd5e4e-2393-4bd1-b973-2010c3169ea2",
                    "addressKeyType": "EVP",
                    "agency": "0000",
                    "cpfCnpj": "***.399.399-**",
                    "ispb": 19540550,
                    "ispbName": "ASAAS GESTÃO FINANCEIRA INSTITUIÇÃO DE PAGAMENTO S.A.",
                    "name": "Jean Roldan"
                },
                "externalReference": null,
                "finality": null,
                "id": "50722010-fd12-4718-8383-30aefa25f3ad",
                "originType": null,
                "originalTransaction": {
                    "effectiveDate": "2025-01-06 18:30:34",
                    "endToEndIdentifier": "5e71aeec7171974a7a2aa51adcca1a28",
                    "id": "933f092e-d511-426c-be39-c6609f8a5a9b",
                    "value": 50.25
                },
                "payment": null,
                "qrCode": null,
                "refundDisabledReason": "O tipo desta transação não permite que ela seja estornada.",
                "refundedValue": 0,
                "refusalReason": null,
                "scheduledDate": null,
                "status": "AWAITING_REQUEST",
                "transactionReceiptUrl": null,
                "transferId": "37d3cd1f-1f2b-453a-ad02-7d034d65fabc",
                "type": "CREDIT_REFUND",
                "value": 40.25
            }
        }
    }
}

Obtenir des notifications de remboursement

Vous recevez les notifications suivantes lorsqu'un remboursement a été demandé :

  • Remboursement refusée : Si le remboursement échoue, les statuts possibles sont les suivants:
    • payment.status = traitées
    • order.status = réussi
  • Remboursements effectués : Si le remboursement est traité avec succès, alors le statut attendu est payment.status.
  • Remboursements partiels multiples
    • Si au moins une restitution partielle a été traitée avec succès mais que la valeur totale n'a pas été atteinte, la notification pour les restitutions suivantes est:
      • payment.status = partial_refunded
      • order.status = réussi
    • Lorsque le remboursement atteint la valeur totale, les statuts sont:
      • payment.status = remboursé
      • order.status = restitution
    • Dans ces cas, envoyer le refund_id avec une série de remboursements. Ici, vous pouvez vérifier l'état et des informations supplémentaires sur le remboursement.

Récupérer les informations de commande

Vous pouvez récupérer les informations de l'ordre pour vérifier l'état de l'ordre.

Faites une demande au Obtenir la commande endpoint.

Renvoie la commande traitée avec son

JSON
 "status": "pending",
        "payment": {
            "data": {
                    .
                    .
                    .
                    },
                "status": "pending",
                "reason": "",
                "external_transaction_id": "JEANROLD00000000495401ASA",
                "authorization_bank_transfer": {
                    "qr": "iVBORw0KGgoAAAANSUhEUgAAAZ8AAAGfCAIAAAAPgEjDAAAP3UlEQVR42u3aQXIjORADQP3/0943zIqFAqnEVR6rmywmHYH5/ImIvJiPJRARuomI0E1EhG4iInQTEaGbiNBNRIRuIiJ0ExGhm4gI3URE6CYidBMRoZuICN1EROgmIkI3ERG6iQjdREToJiJCNxERuomI0E1EhG4iQrf/87tSueKZ/+mL/ukhv3nBb17/4L89+L4lY3ZwQ7/ZhYPf+8Lpphvd6EY3utGNbnSjG93oRje60Y1udKMb3eh2k25bv3luZA8Ox5zIB4cyxkrsTMbOc2x/Y0NYcrrpRje60Y1udKMb3ehGN7rRjW50oxvd6EY3uv2MbgfruZLD0GnfjV1e7N/GasGDF8Pc5X3j6aYb3ehGN7rRjW50oxvd6EY3utGNbnSjG93oRresbnO9WEy3WD031xLGysqSL4plTka60Y1udKMb3ehGN7rRjW50oxvd6EY3utGNbnR7RbeDlVNJ7xmr9mIFXMm1UVKDxkblm2emG93oRje60Y1udKMb3ehGN7rRjW50oxvd6Ea3Vd1iv7lkgucGa2ugY831Vhl9RZE9J9QVp5tudKMb3ehGN7rRjW50oxvd6EY3utGNbnSj27u6xbo8n/rUp+FP72jq6eZTn/qUbnTzqU99Sje6+dSndKMb3XzqU7pV67aVWKm09UVznWlnlxfrWzvnKnb4Y93lmgx0oxvd6EY3utGNbnSjG93oRje60Y1udKMb3S7W7eAE5zqXlCNbdVXJGx0cpM4ub+5OveLPArrRjW50oxvd6EY3utGNbnSjG93oRje60Y1udMvqdqObcy1hTIq5Hz647Ae3+wo4SsrZb35VrgWmG93oRje60Y1udKMb3ehGN7rRjW50oxvd6PaObrFZ2ZqkuWnYmtEHmuu5Zd+6craeees+phvd6EY3utGNbnSjG93oRje60Y1udKMb3ej2M7qVFFKxiq2kYdyq2Do70znrY138XDkbq5vpRje60Y1udKMb3ehGN7rRjW50oxvd6EY3utEt28fFFnrrIWMt4dxTxRrVrdWI3amdcMxdonSjG93oRje60Y1udKMb3ehGN7rRjW50oxvdflW3ueXYmoa5/rHkeMeWrsT6gz+8tQudd3mJyHSjG93oRje60Y1udKMb3ehGN7rRjW50oxvdunWbG/et4ejcwoNjdxCdkrScqw7O5h4ydj/RjW50oxvd6EY3utGNbnSjG93oRje60Y1udPtV3UoaqNhBip2cEmQP1nOdteCcX7F/u/VFayeFbnSjG93oRje60Y1udKMb3ehGN7rRjW50o9s7upVsf2yTDpJUcghjjerW/sZu6y0a5u6nksqYbnSjG93oRje60Y1udKMb3ehGN7rRjW50o9uv6nbwqWLTX/JUseo2Vt6VELx11c1tSsk6041udKMb3ehGN7rRjW50oxvd6EY3utGNbnSj2+p5nmtFY01fZ/F30K+D4z73VFeWhvd303SjG93oRje60Y1udKMb3ehGN7rRjW50oxvd3tXtvdLwM5bOOrLkjebed640LOF7rsntvMzoRje60Y1udKMb3ehGN7rRjW50oxvd6EY3uj2k2zfTH+tMtzY4tnRbnVpJw1iyKXPFfaxB3hKKbnSjG93oRje60Y1udKMb3ehGN7rRjW50o9u7usXO5Na6x+b7CqBj63zFqeusMg/eMXMTSze60Y1udKMb3ehGN7rRjW50oxvd6EY3utGNbsOtWaxEi03D1rLHrqvPUg7OxlwNurWwB4/G1p8ydKMb3ehGN7rRjW50oxvd6EY3utGNbnSjG93e1e3GCjW2hbHzXKLb3A0Ua0WvsO89KOlGN7rRjW50oxvd6EY3utGNbnSjG93oRje6PaTb3EDfWKId3OCtx4gd4K1nLvnerfv4ijNIN7rRjW50oxvd6EY3utGNbnSjG93oRje60e1d3Q4e4LldmWvrYg3j8xM8t6FbPX7JaZ97qtjBoRvd6EY3utGNbnSjG93oRje60Y1udKMb3ej2kG4HX3jutHfWZCUruTaFlffEFXNV8vdHCWd0oxvd6EY3utGNbnSjG93oRje60Y1udKMb3d7VLbZnB/9tSfO19b5z+zt3bVxhQSejD5wjutGNbnSjG93oRje60Y1udKMb3ehGN7rRjW7dun06MvfMscWJLWxndVuyOHO7HztHsevq/c6UbnSjG93oRje60Y1udKMb3ehGN7rRjW50o1u6My35oticbcExV1eVHNG5lbziTp1rRec609gtQje60Y1udKMb3ehGN7rRjW50oxvd6EY3utHtId3eqwVjmsfe9+AE3/iCc69f8kZb9q0dHLrRjW50oxvd6EY3utGNbnSjG93oRje60Y1uN+nW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",
                    "token": "00020126760014br.gov.bcb.pix013689bd5e4e-2393-4bd1-b973-2010c3169ea20214Test PIX DEUNA520400005303986540522.405802BR5911Jean Roldan6014Rio de Janeiro62290525JEANROLD00000000495401ASA6304507E",
                    "expiration_date": "2024-08-30 12:00:00"
                },

Dans cette section